reserve a,b,c,k,m,n for Nat;
reserve i,j,x,y for Integer;
reserve p,q for Prime;
reserve r,s for Real;

theorem
  { [x,y] where x,y is positive Nat: x^2 + (x+1)^2 = y^2 } is infinite
  proof
    set A = { [x,y] where x,y is positive Nat: (2*x+1)^2-2*y^2+1 = 0 };
    set B = { [x,y] where x,y is positive Nat: x^2+(x+1)^2 = y^2 };
    A = B
    proof
      thus A c= B
      proof
        let a be object;
        assume a in A;
        then consider x,y being positive Nat such that
A1:     a = [x,y] & (2*x+1)^2-2*y^2+1 = 0;
        (2*x+1)^2-2*y^2+1 = 2*(x^2+(x+1)^2-y^2);
        hence thesis by A1;
      end;
      let a be object;
      assume a in B;
      then consider x,y being positive Nat such that
A2:   a = [x,y] & x^2+(x+1)^2 = y^2;
      (2*x+1)^2-2*y^2+1 = 2*(x^2+(x+1)^2-y^2);
      hence thesis by A2;
    end;
    hence thesis by Th55;
  end;
