reserve o1,o2 for Ordinal;

theorem Th1:
  for B be set st for x be set holds x in B iff ex o be Ordinal st
  x=o1+^o & o in o2 holds o1+^o2 = o1 \/ B
proof
  let B be set;
  assume
A1: for x be set holds x in B iff ex o be Ordinal st x=o1+^o & o in o2;
  for x be object holds x in o1+^o2 iff x in o1 \/ B
  proof
    let x be object;
A2: x in o1 \/ B implies x in o1+^o2
    proof
      assume
A3:   x in o1 \/ B;
      per cases by A3,XBOOLE_0:def 3;
      suppose
A4:     x in o1;
        o1 c= o1+^o2 by ORDINAL3:24;
        hence thesis by A4;
      end;
      suppose
        x in B;
        then ex o be Ordinal st x=o1+^o & o in o2 by A1;
        hence thesis by ORDINAL2:32;
      end;
    end;
    per cases;
    suppose
      x in o1;
      hence x in o1+^o2 implies x in o1 \/ B by XBOOLE_0:def 3;
      thus thesis by A2;
    end;
    suppose
A5:   not x in o1;
      thus x in o1+^o2 implies x in o1 \/ B
      proof
        assume
A6:     x in o1+^o2;
        per cases;
        suppose
          o2 = {};
          hence thesis by A5,A6,ORDINAL2:27;
        end;
        suppose
A7:       o2 <> {};
          reconsider o = x as Ordinal by A6;
          o1 c= o by A5,ORDINAL1:16;
          then
A8:       o = o1 +^ (o -^ o1) by ORDINAL3:def 5;
          o -^ o1 in o2 by A6,A7,ORDINAL3:60;
          then x in B by A1,A8;
          hence thesis by XBOOLE_0:def 3;
        end;
      end;
      thus thesis by A2;
    end;
  end;
  hence thesis by TARSKI:2;
end;
