begin
:: deftheorem Def1 defines are_relative_prime PYTHTRIP:def 1 :
for m, n being Nat holds
( m,n are_relative_prime iff for k being Nat st k divides m & k divides n holds
k = 1 );
:: deftheorem Def2 defines are_relative_prime PYTHTRIP:def 2 :
for m, n being Nat holds
( m,n are_relative_prime iff for p being prime Nat holds
( not p divides m or not p divides n ) );
begin
:: deftheorem Def3 defines square PYTHTRIP:def 3 :
for n being number holds
( n is square iff ex m being Nat st n = m ^2 );
theorem Th1:
theorem
theorem Th3:
theorem Th4:
theorem Th5:
theorem Th6:
begin
theorem Th7:
theorem Th8:
begin
theorem Th9:
begin
theorem Th10:
theorem Th11:
theorem
:: deftheorem Def4 defines Pythagorean_triple PYTHTRIP:def 4 :
for b1 being Subset of NAT holds
( b1 is Pythagorean_triple iff ex a, b, c being Element of NAT st
( (a ^2) + (b ^2) = c ^2 & b1 = {a,b,c} ) );
:: deftheorem Def5 defines Pythagorean_triple PYTHTRIP:def 5 :
for b1 being Subset of NAT holds
( b1 is Pythagorean_triple iff ex k, m, n being Element of NAT st
( m <= n & b1 = {(k * ((n ^2) - (m ^2))),(k * ((2 * m) * n)),(k * ((n ^2) + (m ^2)))} ) );
:: deftheorem Def6 defines degenerate PYTHTRIP:def 6 :
for X being Pythagorean_triple holds
( X is degenerate iff 0 in X );
theorem
:: deftheorem Def7 defines simplified PYTHTRIP:def 7 :
for X being Pythagorean_triple holds
( X is simplified iff for k being Element of NAT st ( for n being Element of NAT st n in X holds
k divides n ) holds
k = 1 );
:: deftheorem Def8 defines simplified PYTHTRIP:def 8 :
for X being Pythagorean_triple holds
( X is simplified iff ex m, n being Element of NAT st
( m in X & n in X & m,n are_relative_prime ) );
theorem Th14:
theorem
theorem