reserve a,b,c,d for set,
  D,X1,X2,X3,X4 for non empty set,
  x1,y1,z1 for Element of X1,
  x2 for Element of X2,
  x3 for Element of X3,
  x4 for Element of X4,
  A1,B1 for Subset of X1;
reserve x,y for Element of [:X1,X2,X3:];

theorem Th11:
  (for a holds a in D iff ex x1,x2,x3,x4 st a = [x1,x2,x3,x4])
  implies D = [: X1,X2,X3,X4 :]
proof
  assume
A1: for a holds a in D iff ex x1,x2,x3,x4 st a = [x1,x2,x3,x4];
  now
    let a be object;
    thus a in D implies a in [:[:X1,X2,X3:],X4:]
    proof
      assume a in D;
      then consider x1,x2,x3,x4 such that
A2:   a = [x1,x2,x3,x4] by A1;
      a = [[x1,x2,x3],x4] by A2;
      hence thesis;
    end;
    assume a in [:[:X1,X2,X3:],X4:];
    then consider x123,x4 being object such that
A3: x123 in [:X1,X2,X3:] and
A4: x4 in X4 and
A5: a = [x123,x4] by ZFMISC_1:def 2;
    reconsider x4 as Element of X4 by A4;
    consider x1,x2,x3 such that
A6: x123 = [x1,x2,x3] by A3,Th3;
    a = [x1,x2,x3,x4] by A5,A6;
    hence a in D by A1;
  end;
  then D = [:[:X1,X2,X3:],X4:] by TARSKI:2;
  hence thesis by ZFMISC_1:def 4;
end;
