reserve A,B,C for Ordinal,
        o for object,
        x,y,z,t,r,l for Surreal,
        X,Y for set;

theorem Th38:
  x + 0_No = x
proof
  set y=0_No;
  defpred P[Ordinal] means
  for x be Surreal st born x = $1 holds x + y = x;
  A1: for D be Ordinal st for C be Ordinal st C in D holds P[C] holds P[D]
  proof
    let D be Ordinal such that A2: for C be Ordinal st C in D holds P[C];
    let x be Surreal such that A3: born x=D;
    {x} ++ L_y = {} & {x} ++ R_y = {} by Th27;
    then A4:(L_x ++ {y})\/({x} ++ L_y) = L_x ++ {y} &
    (R_x ++ {y}) \/({x} ++ R_y)=R_x ++ {y};
    A5:for Y be set st Y c= L_x\/R_x holds Y ++{y}=Y
    proof
      let Y be set such that A6:Y c= L_x\/R_x;
      thus Y ++{y}c=Y
      proof
        let xy be object such that
        A7:  xy in Y ++ {y};
        consider x1,y1 be Surreal such that
        A8:  x1 in Y & y1 in {y} & xy=x1+y1 by A7,Def8;
        y1=y by A8,TARSKI:def 1;
        hence thesis by A2,A8,A6,SURREALO:1,A3;
      end;
      let xy be object;
      assume A9:xy in Y;
      then reconsider xy as Surreal by SURREAL0:def 16,A6;
      A10:y in {y} by TARSKI:def 1;
      xy + y =xy by A2,A9,A6,A3,SURREALO:1;
      hence thesis by A10,A9,Def8;
    end;
    L_x ++ {y} = L_x & R_x ++ {y} = R_x by XBOOLE_1:7,A5;
    then x+y = [L_x,R_x] by A4,Th28;
    hence thesis;
  end;
  for D be Ordinal holds P[D] from ORDINAL1:sch 2(A1);
  hence thesis;
end;
