set D = 0 ;
set A = { [x,y,z] where x, y, z is positive Nat : (x ^2) - (0 * (y ^2)) = z ^2 } ;
deffunc H1( Nat) -> Nat = $1;
deffunc H2( Real) -> set = $1 ^2 ;
deffunc H3( Nat) -> Nat = $1;
deffunc H4( Real) -> set = $1 ^2 ;
deffunc H5( Element of NATPLUS ) -> object = [H2(H1($1)),H3($1),H4(H1($1))];
consider f being ManySortedSet of NATPLUS such that
A1: for d being Element of NATPLUS holds f . d = H5(d) from PBOOLE:sch 5();
A2: dom f = NATPLUS by PARTFUN1:def 2;
A3: rng f c= { [x,y,z] where x, y, z is positive Nat : (x ^2) - (0 * (y ^2)) = z ^2 }
proof
let y be object ; :: according to TARSKI:def 3 :: thesis: ( not y in rng f or y in { [x,y,z] where x, y, z is positive Nat : (x ^2) - (0 * (y ^2)) = z ^2 } )
assume y in rng f ; :: thesis: y in { [x,y,z] where x, y, z is positive Nat : (x ^2) - (0 * (y ^2)) = z ^2 }
then consider k being object such that
A4: k in dom f and
A5: f . k = y by FUNCT_1:def 3;
reconsider k = k as Element of NATPLUS by A4, PARTFUN1:def 2;
(H2(H1(k)) ^2) - (0 * (H3(k) ^2)) = H4(H1(k)) ^2 ;
then H5(k) in { [x,y,z] where x, y, z is positive Nat : (x ^2) - (0 * (y ^2)) = z ^2 } ;
hence y in { [x,y,z] where x, y, z is positive Nat : (x ^2) - (0 * (y ^2)) = z ^2 } by A1, A5; :: thesis: verum
end;
f is one-to-one
proof
let x1, x2 be object ; :: according to FUNCT_1:def 4 :: thesis: ( not x1 in proj1 f or not x2 in proj1 f or not f . x1 = f . x2 or x1 = x2 )
assume that
A6: ( x1 in dom f & x2 in dom f ) and
A7: f . x1 = f . x2 ; :: thesis: x1 = x2
reconsider x1 = x1, x2 = x2 as Element of NATPLUS by A6, PARTFUN1:def 2;
( f . x1 = H5(x1) & f . x2 = H5(x2) ) by A1;
hence x1 = x2 by A7, XTUPLE_0:3; :: thesis: verum
end;
hence { [x,y,z] where x, y, z is positive Nat : (x ^2) - (0 * (y ^2)) = z ^2 } is infinite by A2, A3, CARD_1:59; :: thesis: verum