reserve A,B,O for Ordinal,
        o for object,
        x,y,z for Surreal,
        n,m for Nat;
reserve d,d1,d2 for Dyadic;
reserve i,j for Integer,
        n,m,p for Nat;

theorem Th28:
  0 <= d & not d is Integer implies
    ex n,m,p be Nat st d = n + (2*m+1)/(2|^(p+1)) & 2*m+1 < 2|^(p+1)
proof
  assume
A1: 0 <= d & not d is Integer;
  then consider p,i such that
A2:d = (2*i+1) / 2|^(p+1) by Th23;
  i >=0
  proof
    assume i < 0;
    then i+1 <= 0 by INT_1:7;
    then i+1+i < 0+0 by XREAL_1:6;
    hence thesis by A1,A2;
  end;
  then reconsider i as Element of NAT by INT_1:3;
  set DV = (2*i+1) div (2|^(p+1)),MD = (2*i+1) mod (2|^(p+1));
A3: 2|^(p+1) = 2*(2|^p) by NEWTON:6;
A4: 2*i+1 = DV * 2|^(p+1) + MD by INT_1:59;
  then 2*i+1 >= DV * 2|^p * 2 by A3,NAT_1:11;
  then 2*i+1 > DV * 2|^p * 2 by XXREAL_0:1;
  then i >= DV * 2|^p by XREAL_1:68,NAT_1:13;
  then reconsider M=i-(DV*(2|^p)) as Nat by NAT_1:21;
  take DV,M,p;
A5: MD = (2*i+1)- (DV*(2|^(p+1))) by A4
  .= 2*M+1 by A3;
  thus d = (DV * 2|^(p+1) + MD) / 2|^(p+1) by INT_1:59,A2
  .= DV + (2*M+1) / (2|^(p+1)) by A5,XCMPLX_1:113;
  thus thesis by A5,INT_1:58;
end;
