:: O_RING_3 semantic presentation
Lemma17:
for n being Nat st n < 1 holds
n = 0
by CQC_THE1:2;
Lemma18:
for n being Nat st n <> 0 holds
1 <= n
by CQC_THE1:2;
Lemma19:
for n being Nat holds
( not n <= 1 or n = 0 or n = 1 )
by CQC_THE1:2;
Lemma26:
for R being non empty doubleLoopStr
for h, f, g being FinSequence of the carrier of R holds
( h = f ^ g iff ( dom h = Seg ((len f) + (len g)) & ( for k being Nat st k in dom f holds
h /. k = f /. k ) & ( for k being Nat st k in dom g holds
h /. ((len f) + k) = g /. k ) ) )
Lemma41:
for R being non empty doubleLoopStr
for x being Scalar of R
for f being FinSequence of the carrier of R holds
( f = <*x*> iff ( len f = 1 & f /. 1 = x ) )
Lemma42:
for R being non empty doubleLoopStr
for x being Scalar of R
for f being FinSequence of the carrier of R holds (f ^ <*x*>) /. ((len f) + 1) = x
Lemma43:
for i being Nat
for R being non empty doubleLoopStr
for f, g being FinSequence of the carrier of R st i <> 0 & i <= len f holds
(f ^ g) /. i = f /. i
Lemma44:
for i being Nat
for R being non empty doubleLoopStr
for g, f being FinSequence of the carrier of R st i <> 0 & i <= len g holds
(f ^ g) /. ((len f) + i) = g /. i
Lemma45:
for R being non empty doubleLoopStr
for x being Scalar of R st x is_a_square holds
<*x*> is_a_Product_of_squares
Lemma46:
for R being non empty doubleLoopStr
for x being Scalar of R st x is_a_square holds
x is_a_product_of_squares
Lemma47:
for R being non empty doubleLoopStr
for x being Scalar of R st x is_a_square holds
<*x*> is_an_Amalgam_of_squares
Lemma48:
for R being non empty doubleLoopStr
for x being Scalar of R st x is_a_square holds
x is_an_amalgam_of_squares
Lemma49:
for R being non empty doubleLoopStr
for f, g being FinSequence of the carrier of R st f is_an_Amalgam_of_squares & g is_an_Amalgam_of_squares holds
f ^ g is_an_Amalgam_of_squares
Lemma58:
for R being non empty doubleLoopStr
for f, g being FinSequence of the carrier of R st f is_a_generation_from_squares & g is_a_generation_from_squares holds
f ^ g is_a_generation_from_squares
Lemma61:
for R being non empty doubleLoopStr
for x being Scalar of R
for f being FinSequence of the carrier of R st f is_a_generation_from_squares & x is_a_square holds
f ^ <*x*> is_a_generation_from_squares
Lemma62:
for R being non empty doubleLoopStr
for x being Scalar of R
for f being FinSequence of the carrier of R st f is_a_generation_from_squares & x is_an_amalgam_of_squares holds
f ^ <*x*> is_a_generation_from_squares
Lemma63:
for i, j being Nat
for R being non empty doubleLoopStr
for f being FinSequence of the carrier of R st f is_an_Amalgam_of_squares & i <> 0 & i <= len f & j <> 0 & j <= len f holds
f ^ <*((f /. i) * (f /. j))*> is_an_Amalgam_of_squares
Lemma64:
for i, j being Nat
for R being non empty doubleLoopStr
for f being FinSequence of the carrier of R st f is_a_generation_from_squares & i <> 0 & i <= len f & j <> 0 & j <= len f holds
f ^ <*((f /. i) * (f /. j))*> is_a_generation_from_squares
Lemma65:
for R being non empty doubleLoopStr
for x being Scalar of R
for f being FinSequence of the carrier of R st f is_a_Product_of_squares & x is_a_square holds
f ^ <*((f /. (len f)) * x)*> is_a_Product_of_squares
Lemma66:
for R being non empty doubleLoopStr
for x being Scalar of R
for f being FinSequence of the carrier of R st f is_a_generation_from_squares & x is_a_square holds
(f ^ <*x*>) ^ <*((f /. (len f)) * x)*> is_a_generation_from_squares
Lemma67:
for R being non empty doubleLoopStr
for x being Scalar of R
for f being FinSequence of the carrier of R st f is_a_generation_from_squares & x is_an_amalgam_of_squares holds
(f ^ <*x*>) ^ <*((f /. (len f)) * x)*> is_a_generation_from_squares
Lemma68:
for R being non empty doubleLoopStr
for f, g being FinSequence of the carrier of R st f is_an_Amalgam_of_squares & g is_an_Amalgam_of_squares holds
(f ^ g) ^ <*((f /. (len f)) * (g /. (len g)))*> is_an_Amalgam_of_squares
Lemma69:
for R being non empty doubleLoopStr
for f, g being FinSequence of the carrier of R st f is_a_generation_from_squares & g is_a_generation_from_squares holds
(f ^ g) ^ <*((f /. (len f)) * (g /. (len g)))*> is_a_generation_from_squares
theorem Th1: :: O_RING_3:1
theorem Th2: :: O_RING_3:2
Lemma70:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_a_square & y is_a_product_of_squares holds
x * y is_an_amalgam_of_squares
Lemma71:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_a_square & y is_an_amalgam_of_squares holds
x * y is_an_amalgam_of_squares
theorem Th3: :: O_RING_3:3
Lemma72:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_a_product_of_squares & y is_a_product_of_squares holds
x * y is_an_amalgam_of_squares
Lemma73:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_a_product_of_squares & y is_an_amalgam_of_squares holds
x * y is_an_amalgam_of_squares
theorem Th4: :: O_RING_3:4
Lemma74:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_an_amalgam_of_squares & y is_a_square holds
x * y is_an_amalgam_of_squares
Lemma75:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_an_amalgam_of_squares & y is_a_product_of_squares holds
x * y is_an_amalgam_of_squares
Lemma76:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_an_amalgam_of_squares & y is_an_amalgam_of_squares holds
x * y is_an_amalgam_of_squares
theorem Th5: :: O_RING_3:5
Lemma77:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_a_square & y is_a_sum_of_squares holds
x * y is_generated_from_squares
Lemma78:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_a_square & y is_a_sum_of_products_of_squares holds
x * y is_generated_from_squares
Lemma79:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_a_square & y is_a_sum_of_amalgams_of_squares holds
x * y is_generated_from_squares
Lemma80:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_a_square & y is_generated_from_squares holds
x * y is_generated_from_squares
theorem Th6: :: O_RING_3:6
Lemma81:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_a_sum_of_squares & y is_a_square holds
x * y is_generated_from_squares
Lemma82:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_a_sum_of_squares & y is_a_sum_of_squares holds
x * y is_generated_from_squares
Lemma83:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_a_sum_of_squares & y is_a_product_of_squares holds
x * y is_generated_from_squares
Lemma84:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_a_sum_of_squares & y is_a_sum_of_products_of_squares holds
x * y is_generated_from_squares
Lemma85:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_a_sum_of_squares & y is_an_amalgam_of_squares holds
x * y is_generated_from_squares
Lemma86:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_a_sum_of_squares & y is_a_sum_of_amalgams_of_squares holds
x * y is_generated_from_squares
Lemma87:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_a_sum_of_squares & y is_generated_from_squares holds
x * y is_generated_from_squares
theorem Th7: :: O_RING_3:7
Lemma88:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_a_product_of_squares & y is_a_sum_of_squares holds
x * y is_generated_from_squares
Lemma89:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_a_product_of_squares & y is_a_sum_of_products_of_squares holds
x * y is_generated_from_squares
Lemma90:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_a_product_of_squares & y is_a_sum_of_amalgams_of_squares holds
x * y is_generated_from_squares
Lemma91:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_a_product_of_squares & y is_generated_from_squares holds
x * y is_generated_from_squares
theorem Th8: :: O_RING_3:8
Lemma92:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_a_sum_of_products_of_squares & y is_a_square holds
x * y is_generated_from_squares
Lemma93:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_a_sum_of_products_of_squares & y is_a_sum_of_squares holds
x * y is_generated_from_squares
Lemma94:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_a_sum_of_products_of_squares & y is_a_product_of_squares holds
x * y is_generated_from_squares
Lemma95:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_a_sum_of_products_of_squares & y is_a_sum_of_products_of_squares holds
x * y is_generated_from_squares
Lemma96:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_a_sum_of_products_of_squares & y is_an_amalgam_of_squares holds
x * y is_generated_from_squares
Lemma97:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_a_sum_of_products_of_squares & y is_a_sum_of_amalgams_of_squares holds
x * y is_generated_from_squares
Lemma98:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_a_sum_of_products_of_squares & y is_generated_from_squares holds
x * y is_generated_from_squares
theorem Th9: :: O_RING_3:9
Lemma99:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_an_amalgam_of_squares & y is_a_sum_of_squares holds
x * y is_generated_from_squares
Lemma100:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_an_amalgam_of_squares & y is_a_sum_of_products_of_squares holds
x * y is_generated_from_squares
Lemma101:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_an_amalgam_of_squares & y is_a_sum_of_amalgams_of_squares holds
x * y is_generated_from_squares
Lemma102:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_an_amalgam_of_squares & y is_generated_from_squares holds
x * y is_generated_from_squares
theorem Th10: :: O_RING_3:10
Lemma103:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_a_sum_of_amalgams_of_squares & y is_a_square holds
x * y is_generated_from_squares
Lemma104:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_a_sum_of_amalgams_of_squares & y is_a_sum_of_squares holds
x * y is_generated_from_squares
Lemma105:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_a_sum_of_amalgams_of_squares & y is_a_product_of_squares holds
x * y is_generated_from_squares
Lemma106:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_a_sum_of_amalgams_of_squares & y is_a_sum_of_products_of_squares holds
x * y is_generated_from_squares
Lemma107:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_a_sum_of_amalgams_of_squares & y is_an_amalgam_of_squares holds
x * y is_generated_from_squares
Lemma108:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_a_sum_of_amalgams_of_squares & y is_a_sum_of_amalgams_of_squares holds
x * y is_generated_from_squares
Lemma109:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_a_sum_of_amalgams_of_squares & y is_generated_from_squares holds
x * y is_generated_from_squares
theorem Th11: :: O_RING_3:11
Lemma110:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_generated_from_squares & y is_a_square holds
x * y is_generated_from_squares
Lemma111:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_generated_from_squares & y is_an_amalgam_of_squares holds
x * y is_generated_from_squares
Lemma112:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_generated_from_squares & y is_generated_from_squares holds
x * y is_generated_from_squares
Lemma113:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_generated_from_squares & y is_a_sum_of_squares holds
x * y is_generated_from_squares
Lemma114:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_generated_from_squares & y is_a_product_of_squares holds
x * y is_generated_from_squares
Lemma115:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_generated_from_squares & y is_a_sum_of_products_of_squares holds
x * y is_generated_from_squares
Lemma116:
for R being non empty doubleLoopStr
for x, y being Scalar of R st x is_generated_from_squares & y is_a_sum_of_amalgams_of_squares holds
x * y is_generated_from_squares
theorem Th12: :: O_RING_3:12