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 Th15:
  [:X1,X2:] \/ [:Y1,Y2:],[:X2,X1:] \/ [:Y2,Y1:] are_equipotent &
  card ([:X1,X2:] \/ [:Y1,Y2:]) = card ([:X2,X1:] \/ [:Y2,Y1:])
proof
  deffunc f(object) = [$1`2,$1`1];
  consider f such that
A1: dom f = [:X1,X2:] \/ [:Y1,Y2:] &
for x being object st x in [:X1,X2:] \/ [:Y1,Y2
  :] holds f.x = f(x) from FUNCT_1:sch 3;
  thus [:X1,X2:] \/ [:Y1,Y2:],[:X2,X1:] \/ [:Y2,Y1:] are_equipotent
  proof
    take f;
    thus f is one-to-one
    proof
      let x1,x2 be object;
      assume that
A2:   x1 in dom f and
A3:   x2 in dom f and
A4:   f.x1 = f.x2;
      x1 in [:X1,X2:] or x1 in [:Y1,Y2:] by A1,A2,XBOOLE_0:def 3;
      then
A5:   x1 = [x1`1,x1`2] by MCART_1:21;
      x2 in [:X1,X2:] or x2 in [:Y1,Y2:] by A1,A3,XBOOLE_0:def 3;
      then
A6:   x2 = [x2`1,x2`2] by MCART_1:21;
A7:   f.x1 = [x1`2,x1`1] & f.x2 = [x2`2,x2`1] by A1,A2,A3;
      then x1`1 = x2`1 by A4,XTUPLE_0:1;
      hence thesis by A4,A7,A5,A6,XTUPLE_0:1;
    end;
    thus dom f = [:X1,X2:] \/ [:Y1,Y2:] by A1;
    thus rng f c= [:X2,X1:] \/ [:Y2,Y1:]
    proof
      let x be object;
      assume x in rng f;
      then consider y being object such that
A8:   y in dom f and
A9:   x = f.y by FUNCT_1:def 3;
      y in [:X1,X2:] or y in [:Y1,Y2:] by A1,A8,XBOOLE_0:def 3;
      then
A10:  y`1 in X1 & y`2 in X2 or y`1 in Y1 & y`2 in Y2 by MCART_1:10;
      x = [y`2,y`1] by A1,A8,A9;
      then x in [:X2,X1:] or x in [:Y2,Y1:] by A10,ZFMISC_1:87;
      hence thesis by XBOOLE_0:def 3;
    end;
    let x be object;
A11: [x`2,x`1]`1 = x`2 & [x`2,x`1]`2 = x`1;
    assume x in [:X2,X1:] \/ [:Y2,Y1:];
    then
A12: x in [:X2,X1:] or x in [:Y2,Y1:] by XBOOLE_0:def 3;
    then x`1 in X2 & x`2 in X1 or x`1 in Y2 & x`2 in Y1 by MCART_1:10;
    then [x`2,x`1] in [:X1,X2:] or [x`2,x`1] in [:Y1,Y2:] by ZFMISC_1:87;
    then
A13: [x`2,x`1] in [:X1,X2:] \/ [:Y1,Y2:] by XBOOLE_0:def 3;
    x = [x`1,x`2] by A12,MCART_1:21;
    then f.[x`2,x`1] = x by A1,A13,A11;
    hence thesis by A1,A13,FUNCT_1:def 3;
  end;
  hence thesis by CARD_1:5;
end;
