theorem
  (for z holds z in Z iff ex x1,x2,x3 st x1 in X1 & x2 in X2 & x3 in X3
  & z = [x1,x2,x3]) implies Z = [: X1,X2,X3 :]
proof
  assume
A1: for z holds z in Z iff ex x1,x2,x3 st x1 in X1 & x2 in X2 & x3 in X3
  & z = [x1,x2,x3];
  now
    let z be object;
    thus z in Z implies z in [:[:X1,X2:],X3:]
    proof
      assume z in Z;
      then consider x1,x2,x3 such that
A2:   x1 in X1 & x2 in X2 and
A3:   x3 in X3 & z = [x1,x2,x3] by A1;
      [x1,x2] in [:X1,X2:] by A2,ZFMISC_1:def 2;
      hence thesis by A3,ZFMISC_1:def 2;
    end;
    assume z in [:[:X1,X2:],X3:];
    then consider x12,x3 being object such that
A4: x12 in [:X1,X2:] and
A5: x3 in X3 and
A6: z = [x12,x3] by ZFMISC_1:def 2;
    consider x1,x2 being object such that
A7: x1 in X1 & x2 in X2 and
A8: x12 = [x1,x2] by A4,ZFMISC_1:def 2;
    z = [x1,x2,x3] by A6,A8;
    hence z in Z by A1,A5,A7;
  end;
  then Z = [:[:X1,X2:],X3:] by TARSKI:2;
  hence thesis by ZFMISC_1:def 3;
end;
