reserve A,B for Ordinal,
  K,M,N for Cardinal,
  x,x1,x2,y,y1,y2,z,u for object,X,Y,Z,X1,X2, Y1,Y2 for set,
  f,g for Function;

theorem
  Z in Funcs(X,Y) implies Z,X are_equipotent & card Z = card X
proof
  assume Z in Funcs(X,Y);
  then consider f such that
A1: Z = f and
A2: dom f = X and
  rng f c= Y by FUNCT_2:def 2;
  thus Z,X are_equipotent
  proof
    consider g such that
A3: dom g = Z &
for x being object st x in Z holds g.x = g(x) from FUNCT_1:sch 3;
    take g;
    thus g is one-to-one
    proof
      let x,y be object;
      assume that
A4:   x in dom g and
A5:   y in dom g;
A6:   g.x = x`1 & g.y = y`1 by A3,A4,A5;
      ex x1,x2 being object st [x1,x2] = y by A1,A3,A5,RELAT_1:def 1;
      then
A7:   y = [y`1,y`2];
      ex x1,x2 being object st [x1,x2] = x by A1,A3,A4,RELAT_1:def 1;
      then
A8:   x = [x`1,x`2];
      then x`2 = f.(x`1) by A1,A3,A4,FUNCT_1:1;
      hence thesis by A1,A3,A5,A8,A7,A6,FUNCT_1:1;
    end;
    thus dom g = Z by A3;
    thus rng g c= X
    proof
      let x be object;
      assume x in rng g;
      then consider y being object such that
A9:   y in dom g and
A10:  x = g.y by FUNCT_1:def 3;
      ex x1,x2 being object st [x1,x2] = y by A1,A3,A9,RELAT_1:def 1;
      then
A11:  y = [y`1,y`2];
      x = y`1 by A3,A9,A10;
      hence thesis by A1,A2,A3,A9,A11,FUNCT_1:1;
    end;
    let x be object;
    assume x in X;
    then
A12: [x,f.x] in Z by A1,A2,FUNCT_1:def 2;
    then g.[x,f.x] = [x,f.x]`1 by A3
      .= x;
    hence thesis by A3,A12,FUNCT_1:def 3;
  end;
  hence thesis by CARD_1:5;
end;
