reserve            x for object,
               X,Y,Z for set,
         i,j,k,l,m,n for Nat,
                 r,s for Real,
                  no for Element of OrderedNAT,
                   A for Subset of [:NAT,NAT:];

theorem Th9:
  the set of all [0,n] where n is Nat is infinite
  proof
    deffunc F(object) = [0,$1];
    consider f be Function such that
A1: dom f = NAT and
A2: for x be object st x in NAT holds f.x = F(x) from FUNCT_1:sch 3;
A3: f is one-to-one
    proof
      now
        let x,y be object; assume that
A4:     x in dom f and
A5:     y in dom f and
A6:     f.x = f.y;
        f.y = [0,y] by A5,A1,A2;
        then [0,x] = [0,y] by A6,A4,A1,A2;
        hence x = y by XTUPLE_0:1;
      end;
      hence thesis by FUNCT_1:def 4;
    end;
    rng f = the set of all [0,n] where n is Nat
    proof
A7:   rng f c= the set of all [0,n] where n is Nat
      proof
        let x be object;
        assume x in rng f;
        then consider y be object such that
A8:     y in dom f and
A9:     x = f.y by FUNCT_1:def 3;
        reconsider z = y as Nat by A8,A1;
        x = [0,z] by A9,A2,A1,A8;
        hence thesis;
      end;
      the set of all [0,n] where n is Nat c= rng f
      proof
        let x be object;
        assume x in the set of all [0,n] where n is Nat;
        then consider n such that
A10:    x = [0,n];
        n in dom f & f.n = [0,n] by A1,A2,ORDINAL1:def 12;
        hence thesis by A10,FUNCT_1:3;
      end;
      hence thesis by A7;
    end;
    hence thesis by A1,A3,CARD_1:59;
  end;
