reserve X,Y,Z,X1,X2,Y1,Y2 for set, x,y,z,t,x1,x2 for object,
  f,g,h,f1,f2,g1,g2 for Function;

theorem
  x <> y implies Funcs({x,y},X),[:X,X:] are_equipotent & card Funcs({x,y
  },X) = card [:X,X:]
proof
  deffunc F(Function) = [ $1.x,$1.y];
  consider f such that
A1: dom f = Funcs({x,y},X) & for g st g in Funcs({x,y},X) holds f.g = F(
  g) from LambdaFS;
  assume
A2: x <> y;
  thus Funcs({x,y},X),[:X,X:] are_equipotent
  proof
    defpred P[object] means $1 = x;
    take f;
    thus f is one-to-one
    proof
      let x1,x2 be object;
      assume that
A3:   x1 in dom f and
A4:   x2 in dom f and
A5:   f.x1 = f.x2;
      consider g2 such that
A6:   x2 = g2 and
A7:   dom g2 = {x,y} and
      rng g2 c= X by A1,A4,FUNCT_2:def 2;
      consider g1 such that
A8:   x1 = g1 and
A9:   dom g1 = {x,y} and
      rng g1 c= X by A1,A3,FUNCT_2:def 2;
A10:  [g1.x,g1.y] = f.x1 by A1,A3,A8
        .= [g2.x,g2.y] by A1,A4,A5,A6;
      now
        let z be object;
        assume z in {x,y};
        then z = x or z = y by TARSKI:def 2;
        hence g1.z = g2.z by A10,XTUPLE_0:1;
      end;
      hence thesis by A8,A9,A6,A7,FUNCT_1:2;
    end;
    thus dom f = Funcs({x,y},X) by A1;
    thus rng f c= [:X,X:]
    proof
      let z be object;
      assume z in rng f;
      then consider t being object such that
A11:  t in dom f and
A12:  z = f.t by FUNCT_1:def 3;
      consider g such that
A13:  t = g and
A14:  dom g = {x,y} and
A15:  rng g c= X by A1,A11,FUNCT_2:def 2;
      x in {x,y} by TARSKI:def 2;
      then
A16:  g.x in rng g by A14,FUNCT_1:def 3;
      y in {x,y} by TARSKI:def 2;
      then
A17:  g.y in rng g by A14,FUNCT_1:def 3;
      z = [g.x,g.y] by A1,A11,A12,A13;
      hence thesis by A15,A16,A17,ZFMISC_1:87;
    end;
    let z be object;
    deffunc F(object) = z`1;
    deffunc G(object) = z`2;
    consider g such that
A18: dom g = {x,y} &
for t being object st t in {x,y} holds (P[t] implies g.t = F(t
    )) & (not P[t] implies g.t = G(t)) from PARTFUN1:sch 1;
    x in {x,y} by TARSKI:def 2;
    then
A19: g.x = z`1 by A18;
    y in {x,y} by TARSKI:def 2;
    then
A20: g.y = z`2 by A2,A18;
    assume
A21: z in [:X,X:];
    then
A22: z = [z`1,z`2] by MCART_1:21;
A23: z`1 in X & z`2 in X by A21,MCART_1:10;
    rng g c= X
    proof
      let t be object;
      assume t in rng g;
      then ex a being object st a in dom g & t = g.a by FUNCT_1:def 3;
      hence thesis by A23,A18;
    end;
    then
A24: g in Funcs({x,y},X) by A18,FUNCT_2:def 2;
    then f.g = [g.x,g.y] by A1;
    hence thesis by A1,A22,A24,A19,A20,FUNCT_1:def 3;
  end;
  hence thesis by CARD_1:5;
end;
