reserve u,v,x,x1,x2,y,y1,y2,z,p,a for object,
        A,B,X,X1,X2,X3,X4,Y,Y1,Y2,Z,N,M for set;
reserve e for object, X,X1,X2,Y1,Y2 for set;

theorem
  for x,y,z,Z being set holds Z c= {x,y,z} iff Z = {} or Z = {x} or Z =
  {y} or Z = {z} or Z = {x,y} or Z = {y,z} or Z = {x,z} or Z = {x,y,z}
proof
  let x,y,z,Z be set;
  hereby
    assume that
A1: Z c= {x,y,z} and
A2: Z <> {} and
A3: Z <> {x} and
A4: Z <> {y} and
A5: Z <> {z} and
A6: Z <> {x,y} and
A7: Z <> {y,z} and
A8: Z <> {x,z};
    {x,y,z} c= Z
    proof
      let a be object;
A9:   now
        {x,y,z} \ {x} = ({x} \/ {y,z}) \ {x} by ENUMSET1:2
          .= {y,z} \ {x} by XBOOLE_1:40;
        then
A10:    {x,y,z} \ {x} c= {y,z} by XBOOLE_1:36;
        assume not x in Z;
        then Z c= {x,y,z} \ {x} by A1,Lm2;
        hence contradiction by A2,A4,A5,A7,Lm13,A10,XBOOLE_1:1;
      end;
A11:  now
        {x,y,z} \ {y} = ({x,y} \/ {z}) \ {y} by ENUMSET1:3
          .= ({x} \/ {y} \/ {z}) \ {y} by ENUMSET1:1
          .= ({x} \/ {z} \/ {y}) \ {y} by XBOOLE_1:4
          .= ({x,z} \/ {y}) \ {y} by ENUMSET1:1
          .= {x,z} \ {y} by XBOOLE_1:40;
        then
A12:    {x,y,z} \ {y} c= {x,z} by XBOOLE_1:36;
        assume not y in Z;
        then Z c= {x,y,z} \ {y} by A1,Lm2;
        hence contradiction by A2,A3,A5,A8,Lm13,A12,XBOOLE_1:1;
      end;
A13:  now
        {x,y,z} \ {z} = ({x,y} \/ {z}) \ {z} by ENUMSET1:3
          .= {x,y} \ {z} by XBOOLE_1:40;
        then
A14:    {x,y,z} \ {z} c= {x,y} by XBOOLE_1:36;
        assume not z in Z;
        then Z c= {x,y,z} \ {z} by A1,Lm2;
        hence contradiction by A2,A3,A4,A6,Lm13,A14,XBOOLE_1:1;
      end;
      assume a in {x,y,z};
      hence thesis by A9,A11,A13,ENUMSET1:def 1;
    end;
    hence Z = {x,y,z} by A1;
  end;
  assume
A15: Z = {} or Z = {x} or Z = {y} or Z = {z} or Z = {x,y} or Z = {y,z}
  or Z = {x,z} or Z = {x,y,z};
  per cases by A15;
  suppose
    Z = {};
    hence thesis;
  end;
  suppose
    Z = {x};
    then Z c= {x} \/ {y,z} by XBOOLE_1:7;
    hence thesis by ENUMSET1:2;
  end;
  suppose
A16: Z = {y};
    {x,y} c= {x,y} \/ {z} by XBOOLE_1:7;
    then
A17: {x,y} c= {x,y,z} by ENUMSET1:3;
    Z c= {x,y} by A16,Th7;
    hence thesis by A17;
  end;
  suppose
    Z = {z};
    then Z c= {x,y} \/ {z} by XBOOLE_1:7;
    hence thesis by ENUMSET1:3;
  end;
  suppose
    Z = {x,y};
    then Z c= {x,y} \/ {z} by XBOOLE_1:7;
    hence thesis by ENUMSET1:3;
  end;
  suppose
    Z = {y,z};
    then Z c= {x} \/ {y,z} by XBOOLE_1:7;
    hence thesis by ENUMSET1:2;
  end;
  suppose
A18: Z = {x,z};
A19: {x,z} \/ {y} = {x} \/ {z} \/ {y} by ENUMSET1:1
      .= {x} \/ ({y} \/ {z}) by XBOOLE_1:4
      .= {x} \/ {y,z} by ENUMSET1:1;
    Z c= {x,z} \/ {y} by A18,XBOOLE_1:7;
    hence thesis by A19,ENUMSET1:2;
  end;
  suppose
    Z = {x,y,z};
    hence thesis;
  end;
end;
