:: SURREALC semantic presentation

theorem Th1: :: SURREALC:1
for r being Real holds uReal . r in Day omega
proof end;

definition
func No_omega -> No_ordinal uSurreal equals :: SURREALC:def 1
No_uOrdinal_op omega;
coherence
No_uOrdinal_op omega is No_ordinal uSurreal
;
end;

:: deftheorem defines No_omega SURREALC:def 1 :
No_omega = No_uOrdinal_op omega;

definition
let x, y be Surreal;
pred x,y are_commensurate means :: SURREALC:def 2
( ex n being positive Nat st x < (uInt . n) * y & ex n being positive Nat st y < (uInt . n) * x );
symmetry
for x, y being Surreal st ex n being positive Nat st x < (uInt . n) * y & ex n being positive Nat st y < (uInt . n) * x holds
( ex n being positive Nat st y < (uInt . n) * x & ex n being positive Nat st x < (uInt . n) * y )
;
end;

:: deftheorem defines are_commensurate SURREALC:def 2 :
for x, y being Surreal holds
( x,y are_commensurate iff ( ex n being positive Nat st x < (uInt . n) * y & ex n being positive Nat st y < (uInt . n) * x ) );

theorem Th2: :: SURREALC:2
for x being Surreal st x is positive holds
x,x are_commensurate
proof
let x be Surreal; :: thesis: ( x is positive implies x,x are_commensurate )
assume x is positive ; :: thesis: x,x are_commensurate
then A1: ( x = 0_No + x & 0_No + x < x + x ) by SURREALR:44;
A2: 1_No + 1_No = uInt . (1 + 1) by SURREALN:11, SURREALN:13;
1_No * x = x ;
then x + x == (1_No + 1_No) * x by SURREALR:67;
then x < (uInt . (1 + 1)) * x by A2, A1, SURREALO:4;
hence x,x are_commensurate ; :: thesis: verum
end;

theorem Th3: :: SURREALC:3
for x, y being Surreal st x,y are_commensurate holds
x is positive
proof
let x, y be Surreal; :: thesis: ( x,y are_commensurate implies x is positive )
assume that
A1: x,y are_commensurate and
A2: not x is positive ; :: thesis: contradiction
consider n being positive Nat such that
A3: x < (uInt . n) * y by A1;
consider m being positive Nat such that
A4: y < (uInt . m) * x by A1;
uInt . n is positive ;
then A5: y * (uInt . n) < (uInt . n) * ((uInt . m) * x) by SURREALR:70, A4;
( (uInt . n) * ((uInt . m) * x) == ((uInt . n) * (uInt . m)) * x & ((uInt . n) * (uInt . m)) * x == (uInt . (n * m)) * x ) by SURREALR:51, SURREALR:69, SURREALN:15;
then (uInt . n) * ((uInt . m) * x) == (uInt . (n * m)) * x by SURREALO:4;
then A6: y * (uInt . n) <= (uInt . (n * m)) * x by A5, SURREALO:4;
then A7: x < (uInt . (n * m)) * x by A3, SURREALO:4;
per cases ( n * m = 1 or ( x < 0_No & n * m <> 1 ) or 0_No <= x ) ;
suppose n * m = 1 ; :: thesis: contradiction
hence contradiction by A6, A3, SURREALN:11; :: thesis: verum
end;
suppose A8: ( x < 0_No & n * m <> 1 ) ; :: thesis: contradiction
1 <= n * m by NAT_1:14;
then 1 < n * m by A8, XXREAL_0:1;
then ( (uInt . (n * m)) * x < (uInt . 1) * x & (uInt . 1) * x = 1_No * x ) by A8, SURREALR:71, SURREALN:9, SURREALN:11;
then (uInt . (n * m)) * x <= x ;
hence contradiction by A6, A3, SURREALO:4; :: thesis: verum
end;
suppose A9: 0_No <= x ; :: thesis: contradiction
then x == 0_No by A2;
then ( (uInt . (n * m)) * x == (uInt . (n * m)) * 0_No & (uInt . (n * m)) * 0_No = 0_No ) by SURREALR:51;
hence contradiction by A9, A7, SURREALO:4; :: thesis: verum
end;
end;
end;

theorem Th4: :: SURREALC:4
for x, y, z being Surreal st x,y are_commensurate & y,z are_commensurate holds
x,z are_commensurate
proof
let x, y, z be Surreal; :: thesis: ( x,y are_commensurate & y,z are_commensurate implies x,z are_commensurate )
assume A1: ( x,y are_commensurate & y,z are_commensurate ) ; :: thesis: x,z are_commensurate
thus ex n being positive Nat st x < (uInt . n) * z :: according to SURREALC:def 2 :: thesis: ex n being positive Nat st z < (uInt . n) * x
proof
consider n being positive Nat such that
A2: x < (uInt . n) * y by A1;
consider m being positive Nat such that
A3: y < (uInt . m) * z by A1;
take nm = n * m; :: thesis: x < (uInt . nm) * z
uInt . n is positive ;
then A4: (uInt . n) * y < (uInt . n) * ((uInt . m) * z) by A3, SURREALR:70;
( (uInt . n) * ((uInt . m) * z) == ((uInt . n) * (uInt . m)) * z & ((uInt . n) * (uInt . m)) * z == (uInt . nm) * z ) by SURREALR:51, SURREALR:69, SURREALN:15;
then (uInt . n) * ((uInt . m) * z) == (uInt . nm) * z by SURREALO:4;
then (uInt . n) * y <= (uInt . nm) * z by A4, SURREALO:4;
hence x < (uInt . nm) * z by A2, SURREALO:4; :: thesis: verum
end;
consider n being positive Nat such that
A5: y < (uInt . n) * x by A1;
consider m being positive Nat such that
A6: z < (uInt . m) * y by A1;
take nm = n * m; :: thesis: z < (uInt . nm) * x
uInt . m is positive ;
then A7: (uInt . m) * y < (uInt . m) * ((uInt . n) * x) by A5, SURREALR:70;
( (uInt . m) * ((uInt . n) * x) == ((uInt . m) * (uInt . n)) * x & ((uInt . m) * (uInt . n)) * x == (uInt . nm) * x ) by SURREALR:51, SURREALR:69, SURREALN:15;
then (uInt . m) * ((uInt . n) * x) == (uInt . nm) * x by SURREALO:4;
then (uInt . m) * y <= (uInt . nm) * x by A7, SURREALO:4;
hence z < (uInt . nm) * x by A6, SURREALO:4; :: thesis: verum
end;

theorem Th5: :: SURREALC:5
for x, y, z being Surreal st x == y & x,z are_commensurate holds
y,z are_commensurate
proof
let x, y, z be Surreal; :: thesis: ( x == y & x,z are_commensurate implies y,z are_commensurate )
assume A1: ( x == y & x,z are_commensurate ) ; :: thesis: y,z are_commensurate
thus ex n being positive Nat st y < (uInt . n) * z :: according to SURREALC:def 2 :: thesis: ex n being positive Nat st z < (uInt . n) * y
proof
consider n being positive Nat such that
A2: x < (uInt . n) * z by A1;
y < (uInt . n) * z by A1, A2, SURREALO:4;
hence ex n being positive Nat st y < (uInt . n) * z ; :: thesis: verum
end;
consider n being positive Nat such that
A3: z < (uInt . n) * x by A1;
(uInt . n) * x == (uInt . n) * y by A1, SURREALR:51;
then z < (uInt . n) * y by A3, SURREALO:4;
hence ex n being positive Nat st z < (uInt . n) * y ; :: thesis: verum
end;

theorem :: SURREALC:6
for x, y, z being Surreal st x,z are_commensurate & x <= y & y <= z holds
( x,y are_commensurate & y,z are_commensurate )
proof
let x, y, z be Surreal; :: thesis: ( x,z are_commensurate & x <= y & y <= z implies ( x,y are_commensurate & y,z are_commensurate ) )
assume A1: ( x,z are_commensurate & x <= y & y <= z ) ; :: thesis: ( x,y are_commensurate & y,z are_commensurate )
A2: ( x is positive & z is positive ) by A1, Th3;
per cases ( x == y or y == z or ( x < y & y < z ) ) by A1;
suppose ( x == y or y == z ) ; :: thesis: ( x,y are_commensurate & y,z are_commensurate )
hence ( x,y are_commensurate & y,z are_commensurate ) by A1, Th5, A2, Th2; :: thesis: verum
end;
suppose A3: ( x < y & y < z ) ; :: thesis: ( x,y are_commensurate & y,z are_commensurate )
consider n being positive Nat such that
A4: z < (uInt . n) * x by A1;
y <= z by A3;
then A5: y < (uInt . n) * x by A4, SURREALO:4;
0_No < uInt . n by SURREALI:def 8;
then (uInt . n) * x <= (uInt . n) * y by A3, SURREALR:70;
then A6: z < (uInt . n) * y by A4, SURREALO:4;
A7: y < (uInt . 1) * z by A3, SURREALN:11;
y = (uInt . 1) * y by SURREALN:11;
hence ( x,y are_commensurate & y,z are_commensurate ) by A3, A7, A6, A5; :: thesis: verum
end;
end;
end;

theorem Th7: :: SURREALC:7
for x, y being Surreal holds
( x,y are_commensurate iff ex n being positive Nat st
( x < (uInt . n) * y & y < (uInt . n) * x ) )
proof
let x, y be Surreal; :: thesis: ( x,y are_commensurate iff ex n being positive Nat st
( x < (uInt . n) * y & y < (uInt . n) * x ) )

thus ( x,y are_commensurate implies ex n being positive Nat st
( x < (uInt . n) * y & y < (uInt . n) * x ) )
:: thesis: ( ex n being positive Nat st
( x < (uInt . n) * y & y < (uInt . n) * x ) implies x,y are_commensurate )
proof
assume A1: x,y are_commensurate ; :: thesis: ex n being positive Nat st
( x < (uInt . n) * y & y < (uInt . n) * x )

A2: ( x is positive & y is positive ) by A1, Th3;
consider n being positive Nat such that
A3: x < (uInt . n) * y by A1;
consider m being positive Nat such that
A4: y < (uInt . m) * x by A1;
take n + m ; :: thesis: ( x < (uInt . (n + m)) * y & y < (uInt . (n + m)) * x )
( n + 0 < n + m & m + 0 < n + m ) by XREAL_1:6;
then ( (uInt . n) * y <= (uInt . (n + m)) * y & (uInt . m) * x <= (uInt . (n + m)) * x ) by A2, SURREALR:70, SURREALN:9;
hence ( x < (uInt . (n + m)) * y & y < (uInt . (n + m)) * x ) by A3, A4, SURREALO:4; :: thesis: verum
end;
thus ( ex n being positive Nat st
( x < (uInt . n) * y & y < (uInt . n) * x ) implies x,y are_commensurate )
; :: thesis: verum
end;

theorem Th8: :: SURREALC:8
for x, y being Surreal st x is positive & x == y holds
x,y are_commensurate by Th2, Th5;

definition
let x, y be Surreal;
pred x infinitely< y means :: SURREALC:def 3
for r being positive Real holds x * (uReal . r) < y;
end;

:: deftheorem defines infinitely< SURREALC:def 3 :
for x, y being Surreal holds
( x infinitely< y iff for r being positive Real holds x * (uReal . r) < y );

theorem Th9: :: SURREALC:9
for x, y being Surreal st x infinitely< y holds
x < y
proof
let x, y be Surreal; :: thesis: ( x infinitely< y implies x < y )
assume x infinitely< y ; :: thesis: x < y
then x * 1_No < y by SURREALN:48;
hence x < y ; :: thesis: verum
end;

theorem :: SURREALC:10
for r being Real holds uReal . r infinitely< No_omega
proof
let r be Real; :: thesis: uReal . r infinitely< No_omega
let s be positive Real; :: according to SURREALC:def 3 :: thesis: (uReal . r) * (uReal . s) < No_omega
A1: (r * s) + 0 < (r * s) + 1 by XREAL_1:6;
(uReal . r) * (uReal . s) == uReal . (r * s) by SURREALN:57;
then A2: (uReal . r) * (uReal . s) < uReal . ((r * s) + 1) by A1, SURREALN:51, SURREALO:4;
uReal . ((r * s) + 1) <= No_omega by Th1, SURREALN:76;
hence (uReal . r) * (uReal . s) < No_omega by A2, SURREALO:4; :: thesis: verum
end;

theorem Th11: :: SURREALC:11
for x, y, z being Surreal st x <= y & y infinitely< z holds
x infinitely< z
proof
let x, y, z be Surreal; :: thesis: ( x <= y & y infinitely< z implies x infinitely< z )
assume A1: ( x <= y & y infinitely< z ) ; :: thesis: x infinitely< z
let r be positive Real; :: according to SURREALC:def 3 :: thesis: x * (uReal . r) < z
0_No <= uReal . r by SURREALI:def 8;
then ( x * (uReal . r) <= y * (uReal . r) & y * (uReal . r) < z ) by A1, SURREALR:75;
hence x * (uReal . r) < z by SURREALO:4; :: thesis: verum
end;

theorem :: SURREALC:12
for x, y, z being Surreal st x infinitely< y & y <= z holds
x infinitely< z by SURREALO:4;

theorem Th13: :: SURREALC:13
for r being positive Real
for x, y being Surreal st x infinitely< y holds
( x * (uReal . r) infinitely< y & x infinitely< y * (uReal . r) )
proof
let r be positive Real; :: thesis: for x, y being Surreal st x infinitely< y holds
( x * (uReal . r) infinitely< y & x infinitely< y * (uReal . r) )

let x, y be Surreal; :: thesis: ( x infinitely< y implies ( x * (uReal . r) infinitely< y & x infinitely< y * (uReal . r) ) )
assume A1: x infinitely< y ; :: thesis: ( x * (uReal . r) infinitely< y & x infinitely< y * (uReal . r) )
thus x * (uReal . r) infinitely< y :: thesis: x infinitely< y * (uReal . r)
proof
let s be positive Real; :: according to SURREALC:def 3 :: thesis: (x * (uReal . r)) * (uReal . s) < y
( (x * (uReal . r)) * (uReal . s) == x * ((uReal . s) * (uReal . r)) & x * ((uReal . s) * (uReal . r)) == x * (uReal . (s * r)) ) by SURREALN:57, SURREALR:69, SURREALR:51;
then ( (x * (uReal . r)) * (uReal . s) == x * (uReal . (s * r)) & x * (uReal . (s * r)) < y ) by A1, SURREALO:4;
hence (x * (uReal . r)) * (uReal . s) < y by SURREALO:4; :: thesis: verum
end;
let s be positive Real; :: according to SURREALC:def 3 :: thesis: x * (uReal . s) < y * (uReal . r)
A2: 0_No < uReal . r by SURREALI:def 8;
A3: (x * (uReal . (s * (1 / r)))) * (uReal . r) < y * (uReal . r) by A1, A2, SURREALR:70;
s * ((1 / r) * r) = s * 1 by XCMPLX_1:106;
then (s * (1 / r)) * r = s ;
then ( (x * (uReal . (s * (1 / r)))) * (uReal . r) == x * ((uReal . (s * (1 / r))) * (uReal . r)) & x * ((uReal . (s * (1 / r))) * (uReal . r)) == x * (uReal . s) ) by SURREALR:69, SURREALR:51, SURREALN:57;
then (x * (uReal . (s * (1 / r)))) * (uReal . r) == x * (uReal . s) by SURREALO:4;
hence x * (uReal . s) < y * (uReal . r) by A3, SURREALO:4; :: thesis: verum
end;

theorem Th14: :: SURREALC:14
for x, y, z being Surreal st x infinitely< y & y infinitely< z holds
x infinitely< z
proof
let x, y, z be Surreal; :: thesis: ( x infinitely< y & y infinitely< z implies x infinitely< z )
assume A1: ( x infinitely< y & y infinitely< z ) ; :: thesis: x infinitely< z
let r be positive Real; :: according to SURREALC:def 3 :: thesis: x * (uReal . r) < z
y * (uReal . 1) < z by A1;
then y <= z by SURREALN:48;
hence x * (uReal . r) < z by A1, SURREALO:4; :: thesis: verum
end;

theorem Th15: :: SURREALC:15
for x, y, z being Surreal st x,y are_commensurate & y infinitely< z holds
x infinitely< z
proof
let x, y, z be Surreal; :: thesis: ( x,y are_commensurate & y infinitely< z implies x infinitely< z )
assume A1: ( x,y are_commensurate & y infinitely< z ) ; :: thesis: x infinitely< z
then consider n being positive Nat such that
A2: x < y * (uInt . n) ;
let r be positive Real; :: according to SURREALC:def 3 :: thesis: x * (uReal . r) < z
0_No < uReal . r by SURREALI:def 8;
then A3: x * (uReal . r) < (y * (uInt . n)) * (uReal . r) by A2, SURREALR:70;
( uInt . n = uDyadic . n & uDyadic . n = uReal . n ) by SURREALN:46, SURREALN:def 5;
then ( (y * (uInt . n)) * (uReal . r) == y * ((uInt . n) * (uReal . r)) & y * ((uInt . n) * (uReal . r)) == y * (uReal . (n * r)) ) by SURREALR:69, SURREALR:51, SURREALN:57;
then (y * (uInt . n)) * (uReal . r) == y * (uReal . (n * r)) by SURREALO:4;
then x * (uReal . r) <= y * (uReal . (n * r)) by A3, SURREALO:4;
hence x * (uReal . r) < z by A1, SURREALO:4; :: thesis: verum
end;

Lm1: for x being Surreal
for r, r1 being Real holds (x * (uReal . r)) * (uReal . r1) == x * (uReal . (r * r1))

proof
let x be Surreal; :: thesis: for r, r1 being Real holds (x * (uReal . r)) * (uReal . r1) == x * (uReal . (r * r1))
let r, r1 be Real; :: thesis: (x * (uReal . r)) * (uReal . r1) == x * (uReal . (r * r1))
( (x * (uReal . r)) * (uReal . r1) == x * ((uReal . r) * (uReal . r1)) & x * ((uReal . r) * (uReal . r1)) == x * (uReal . (r * r1)) ) by SURREALR:69, SURREALR:51, SURREALN:57;
hence (x * (uReal . r)) * (uReal . r1) == x * (uReal . (r * r1)) by SURREALO:4; :: thesis: verum
end;

Lm2: for x being Surreal
for r being Real st r <> 0 holds
(x * (uReal . r)) * (uReal . (1 / r)) == x

proof
let x be Surreal; :: thesis: for r being Real st r <> 0 holds
(x * (uReal . r)) * (uReal . (1 / r)) == x

let r be Real; :: thesis: ( r <> 0 implies (x * (uReal . r)) * (uReal . (1 / r)) == x )
assume r <> 0 ; :: thesis: (x * (uReal . r)) * (uReal . (1 / r)) == x
then (1 / r) * r = 1 by XCMPLX_1:106;
then (x * (uReal . r)) * (uReal . (1 / r)) == x * (uReal . 1) by Lm1;
hence (x * (uReal . r)) * (uReal . (1 / r)) == x by SURREALN:48; :: thesis: verum
end;

Lm3: for x being Surreal
for r, r1, r2 being Real holds ((x * (uReal . r)) * (uReal . r1)) * (uReal . r2) == x * (uReal . ((r * r1) * r2))

proof
let x be Surreal; :: thesis: for r, r1, r2 being Real holds ((x * (uReal . r)) * (uReal . r1)) * (uReal . r2) == x * (uReal . ((r * r1) * r2))
let r, r1, r2 be Real; :: thesis: ((x * (uReal . r)) * (uReal . r1)) * (uReal . r2) == x * (uReal . ((r * r1) * r2))
( ((x * (uReal . r)) * (uReal . r1)) * (uReal . r2) == (x * (uReal . (r * r1))) * (uReal . r2) & (x * (uReal . (r * r1))) * (uReal . r2) == x * (uReal . ((r * r1) * r2)) ) by Lm1, SURREALR:51;
hence ((x * (uReal . r)) * (uReal . r1)) * (uReal . r2) == x * (uReal . ((r * r1) * r2)) by SURREALO:4; :: thesis: verum
end;

theorem Th16: :: SURREALC:16
for x, y, z being Surreal st x,y are_commensurate & z infinitely< x holds
z infinitely< y
proof
let x, y, z be Surreal; :: thesis: ( x,y are_commensurate & z infinitely< x implies z infinitely< y )
assume A1: ( x,y are_commensurate & z infinitely< x ) ; :: thesis: z infinitely< y
then consider n being positive Nat such that
A2: x < y * (uInt . n) ;
let r be positive Real; :: according to SURREALC:def 3 :: thesis: z * (uReal . r) < y
z * (uReal . (r * n)) <= x by A1;
then A3: z * (uReal . (r * n)) < y * (uInt . n) by SURREALO:4, A2;
A4: 0_No < uReal . (1 / n) by SURREALI:def 8;
( uInt . n = uDyadic . n & uDyadic . n = uReal . n ) by SURREALN:46, SURREALN:def 5;
then ( (z * (uReal . (r * n))) * (uReal . (1 / n)) < (y * (uReal . n)) * (uReal . (1 / n)) & (y * (uReal . n)) * (uReal . (1 / n)) == y ) by A4, Lm2, A3, SURREALR:70;
then A5: (z * (uReal . (r * n))) * (uReal . (1 / n)) < y by SURREALO:4;
( (r * n) * (1 / n) = r * (n * (1 / n)) & r * (n * (1 / n)) = r * 1 ) by XCMPLX_1:106;
then ( (z * (uReal . (r * n))) * (uReal . (1 / n)) == z * ((uReal . (r * n)) * (uReal . (1 / n))) & z * ((uReal . (r * n)) * (uReal . (1 / n))) == z * (uReal . r) ) by SURREALR:69, SURREALR:51, SURREALN:57;
then (z * (uReal . (r * n))) * (uReal . (1 / n)) == z * (uReal . r) by SURREALO:4;
hence z * (uReal . r) < y by A5, SURREALO:4; :: thesis: verum
end;

theorem Th17: :: SURREALC:17
for x, y, z being Surreal st x == y & y infinitely< z holds
x infinitely< z
proof
let x, y, z be Surreal; :: thesis: ( x == y & y infinitely< z implies x infinitely< z )
assume A1: ( x == y & y infinitely< z ) ; :: thesis: x infinitely< z
let r be positive Real; :: according to SURREALC:def 3 :: thesis: x * (uReal . r) < z
( x * (uReal . r) == y * (uReal . r) & y * (uReal . r) < z ) by A1, SURREALR:51;
hence x * (uReal . r) < z by SURREALO:4; :: thesis: verum
end;

theorem Th18: :: SURREALC:18
for x, y, z being Surreal st x infinitely< z & y infinitely< z holds
x + y infinitely< z
proof
let x, y, z be Surreal; :: thesis: ( x infinitely< z & y infinitely< z implies x + y infinitely< z )
assume A1: ( x infinitely< z & y infinitely< z ) ; :: thesis: x + y infinitely< z
let r be positive Real; :: according to SURREALC:def 3 :: thesis: (x + y) * (uReal . r) < z
set R = uReal . r;
set H = uReal . (1 / 2);
A2: (1 / 2) + (1 / 2) = 1 ;
( x infinitely< z * (uReal . (1 / 2)) & y infinitely< z * (uReal . (1 / 2)) ) by A1, Th13;
then ( x * (uReal . r) < z * (uReal . (1 / 2)) & y * (uReal . r) <= z * (uReal . (1 / 2)) ) ;
then A3: (x * (uReal . r)) + (y * (uReal . r)) < (z * (uReal . (1 / 2))) + (z * (uReal . (1 / 2))) by SURREALR:44;
( (z * (uReal . (1 / 2))) + (z * (uReal . (1 / 2))) == z * ((uReal . (1 / 2)) + (uReal . (1 / 2))) & z * ((uReal . (1 / 2)) + (uReal . (1 / 2))) == z * 1_No & z * 1_No = z ) by A2, SURREALN:55, SURREALN:48, SURREALR:51, SURREALR:67;
then (z * (uReal . (1 / 2))) + (z * (uReal . (1 / 2))) == z by SURREALO:4;
then ( (x + y) * (uReal . r) == (x * (uReal . r)) + (y * (uReal . r)) & (x * (uReal . r)) + (y * (uReal . r)) < z ) by A3, SURREALO:4, SURREALR:67;
hence (x + y) * (uReal . r) < z by SURREALO:4; :: thesis: verum
end;

theorem :: SURREALC:19
for x, y, z being Surreal st x == y & z infinitely< x holds
z infinitely< y by SURREALO:4;

theorem Th20: :: SURREALC:20
for x, y being Surreal
for r being Real st 0_No <= x & x infinitely< y holds
x * (uReal . r) < y
proof
let x, y be Surreal; :: thesis: for r being Real st 0_No <= x & x infinitely< y holds
x * (uReal . r) < y

let r be Real; :: thesis: ( 0_No <= x & x infinitely< y implies x * (uReal . r) < y )
assume A1: ( 0_No <= x & x infinitely< y ) ; :: thesis: x * (uReal . r) < y
per cases ( r is positive or r <= 0 ) ;
suppose r is positive ; :: thesis: x * (uReal . r) < y
hence x * (uReal . r) < y by A1; :: thesis: verum
end;
suppose r <= 0 ; :: thesis: x * (uReal . r) < y
then uReal . r <= 0_No by SURREALN:51, SURREALN:47;
then (uReal . r) * x <= 0_No * x by A1, SURREALR:75;
then ( (uReal . r) * x <= x & x < y ) by A1, SURREALO:4, Th9;
hence x * (uReal . r) < y by SURREALO:4; :: thesis: verum
end;
end;
end;

definition
let A be Ordinal;
func No_omega_op A -> ManySortedSet of Day A means :Def4: :: SURREALC:def 4
ex S being Function-yielding c=-monotone Sequence st
( dom S = succ A & it = S . A & ( for B being Ordinal st B in succ A holds
ex SB being ManySortedSet of Day B st
( S . B = SB & ( for x being object st x in Day B holds
SB . x = [({0_No} \/ { (((union (rng (S | B))) . xL) *' (uReal . r)) where xL is Element of L_ x, r is Element of REAL : ( xL in L_ x & r is positive ) } ), { (((union (rng (S | B))) . xR) *' (uReal . r)) where xR is Element of R_ x, r is Element of REAL : ( xR in R_ x & r is positive ) } ] ) ) ) );
existence
ex b1 being ManySortedSet of Day A ex S being Function-yielding c=-monotone Sequence st
( dom S = succ A & b1 = S . A & ( for B being Ordinal st B in succ A holds
ex SB being ManySortedSet of Day B st
( S . B = SB & ( for x being object st x in Day B holds
SB . x = [({0_No} \/ { (((union (rng (S | B))) . xL) *' (uReal . r)) where xL is Element of L_ x, r is Element of REAL : ( xL in L_ x & r is positive ) } ), { (((union (rng (S | B))) . xR) *' (uReal . r)) where xR is Element of R_ x, r is Element of REAL : ( xR in R_ x & r is positive ) } ] ) ) ) )
proof
deffunc H1( Ordinal) -> Element of bool (Games $1) = Day $1;
deffunc H2( object , Function-yielding c=-monotone Sequence) -> object = [({0_No} \/ { (((union (rng $2)) . xL) *' (uReal . r)) where xL is Element of L_ $1, r is Element of REAL : ( xL in L_ $1 & r is positive ) } ), { (((union (rng $2)) . xR) *' (uReal . r)) where xR is Element of R_ $1, r is Element of REAL : ( xR in R_ $1 & r is positive ) } ];
A1: for S being Function-yielding c=-monotone Sequence st ( for A being Ordinal st A in dom S holds
dom (S . A) = H1(A) ) holds
for A being Ordinal
for x being object st x in dom (S . A) holds
H2(x,S | A) = H2(x,S)
proof
let S be Function-yielding c=-monotone Sequence; :: thesis: ( ( for A being Ordinal st A in dom S holds
dom (S . A) = H1(A) ) implies for A being Ordinal
for x being object st x in dom (S . A) holds
H2(x,S | A) = H2(x,S) )

assume A2: for A being Ordinal st A in dom S holds
dom (S . A) = H1(A)
; :: thesis: for A being Ordinal
for x being object st x in dom (S . A) holds
H2(x,S | A) = H2(x,S)

let A be Ordinal; :: thesis: for x being object st x in dom (S . A) holds
H2(x,S | A) = H2(x,S)

let x be object ; :: thesis: ( x in dom (S . A) implies H2(x,S | A) = H2(x,S) )
assume A3: x in dom (S . A) ; :: thesis: H2(x,S | A) = H2(x,S)
S . A <> {} by A3;
then A4: A in dom S by FUNCT_1:def 2;
then A5: dom (S . A) = H1(A) by A2;
then reconsider x = x as Surreal by A3;
A6: x = [(L_ x),(R_ x)] ;
A7: for y being object st y in (L_ x) \/ (R_ x) holds
ex B being Ordinal st
( y in dom (S . B) & B in A )
proof
let y be object ; :: thesis: ( y in (L_ x) \/ (R_ x) implies ex B being Ordinal st
( y in dom (S . B) & B in A ) )

assume y in (L_ x) \/ (R_ x) ; :: thesis: ex B being Ordinal st
( y in dom (S . B) & B in A )

then consider O being Ordinal such that
A8: ( O in A & y in Day O ) by A5, A3, A6, SURREAL0:46;
dom (S . O) = Day O by A2, A4, A8, ORDINAL1:10;
hence ex B being Ordinal st
( y in dom (S . B) & B in A )
by A8; :: thesis: verum
end;
A9: { (((union (rng S)) . xL) *' (uReal . r)) where xL is Element of L_ x, r is Element of REAL : ( xL in L_ x & r is positive ) } c= { (((union (rng (S | A))) . xL) *' (uReal . r)) where xL is Element of L_ x, r is Element of REAL : ( xL in L_ x & r is positive ) }
proof
let y be object ; :: according to TARSKI:def 3 :: thesis: ( not y in { (((union (rng S)) . xL) *' (uReal . r)) where xL is Element of L_ x, r is Element of REAL : ( xL in L_ x & r is positive ) } or y in { (((union (rng (S | A))) . xL) *' (uReal . r)) where xL is Element of L_ x, r is Element of REAL : ( xL in L_ x & r is positive ) } )
assume A10: y in { (((union (rng S)) . xL) *' (uReal . r)) where xL is Element of L_ x, r is Element of REAL : ( xL in L_ x & r is positive ) } ; :: thesis: y in { (((union (rng (S | A))) . xL) *' (uReal . r)) where xL is Element of L_ x, r is Element of REAL : ( xL in L_ x & r is positive ) }
consider xL being Element of L_ x, r being Element of REAL such that
A11: ( y = ((union (rng S)) . xL) *' (uReal . r) & xL in L_ x & r is positive ) by A10;
xL in (L_ x) \/ (R_ x) by A11, XBOOLE_0:def 3;
then ex B being Ordinal st
( xL in dom (S . B) & B in A )
by A7;
then (union (rng (S | A))) . xL = (union (rng S)) . xL by SURREALR:5;
hence y in { (((union (rng (S | A))) . xL) *' (uReal . r)) where xL is Element of L_ x, r is Element of REAL : ( xL in L_ x & r is positive ) } by A11; :: thesis: verum
end;
{ (((union (rng (S | A))) . xL) *' (uReal . r)) where xL is Element of L_ x, r is Element of REAL : ( xL in L_ x & r is positive ) } c= { (((union (rng S)) . xL) *' (uReal . r)) where xL is Element of L_ x, r is Element of REAL : ( xL in L_ x & r is positive ) }
proof
let y be object ; :: according to TARSKI:def 3 :: thesis: ( not y in { (((union (rng (S | A))) . xL) *' (uReal . r)) where xL is Element of L_ x, r is Element of REAL : ( xL in L_ x & r is positive ) } or y in { (((union (rng S)) . xL) *' (uReal . r)) where xL is Element of L_ x, r is Element of REAL : ( xL in L_ x & r is positive ) } )
assume A12: y in { (((union (rng (S | A))) . xL) *' (uReal . r)) where xL is Element of L_ x, r is Element of REAL : ( xL in L_ x & r is positive ) } ; :: thesis: y in { (((union (rng S)) . xL) *' (uReal . r)) where xL is Element of L_ x, r is Element of REAL : ( xL in L_ x & r is positive ) }
consider xL being Element of L_ x, r being Element of REAL such that
A13: ( y = ((union (rng (S | A))) . xL) *' (uReal . r) & xL in L_ x & r is positive ) by A12;
xL in (L_ x) \/ (R_ x) by A13, XBOOLE_0:def 3;
then ex B being Ordinal st
( xL in dom (S . B) & B in A )
by A7;
then (union (rng (S | A))) . xL = (union (rng S)) . xL by SURREALR:5;
hence y in { (((union (rng S)) . xL) *' (uReal . r)) where xL is Element of L_ x, r is Element of REAL : ( xL in L_ x & r is positive ) } by A13; :: thesis: verum
end;
then A14: L_ H2(x,S | A) = L_ H2(x,S) by A9, XBOOLE_0:def 10;
A15: { (((union (rng S)) . xL) *' (uReal . r)) where xL is Element of R_ x, r is Element of REAL : ( xL in R_ x & r is positive ) } c= { (((union (rng (S | A))) . xL) *' (uReal . r)) where xL is Element of R_ x, r is Element of REAL : ( xL in R_ x & r is positive ) }
proof
let y be object ; :: according to TARSKI:def 3 :: thesis: ( not y in { (((union (rng S)) . xL) *' (uReal . r)) where xL is Element of R_ x, r is Element of REAL : ( xL in R_ x & r is positive ) } or y in { (((union (rng (S | A))) . xL) *' (uReal . r)) where xL is Element of R_ x, r is Element of REAL : ( xL in R_ x & r is positive ) } )
assume A16: y in { (((union (rng S)) . xL) *' (uReal . r)) where xL is Element of R_ x, r is Element of REAL : ( xL in R_ x & r is positive ) } ; :: thesis: y in { (((union (rng (S | A))) . xL) *' (uReal . r)) where xL is Element of R_ x, r is Element of REAL : ( xL in R_ x & r is positive ) }
consider xL being Element of R_ x, r being Element of REAL such that
A17: ( y = ((union (rng S)) . xL) *' (uReal . r) & xL in R_ x & r is positive ) by A16;
xL in (L_ x) \/ (R_ x) by A17, XBOOLE_0:def 3;
then ex B being Ordinal st
( xL in dom (S . B) & B in A )
by A7;
then (union (rng (S | A))) . xL = (union (rng S)) . xL by SURREALR:5;
hence y in { (((union (rng (S | A))) . xL) *' (uReal . r)) where xL is Element of R_ x, r is Element of REAL : ( xL in R_ x & r is positive ) } by A17; :: thesis: verum
end;
{ (((union (rng (S | A))) . xL) *' (uReal . r)) where xL is Element of R_ x, r is Element of REAL : ( xL in R_ x & r is positive ) } c= { (((union (rng S)) . xL) *' (uReal . r)) where xL is Element of R_ x, r is Element of REAL : ( xL in R_ x & r is positive ) }
proof
let y be object ; :: according to TARSKI:def 3 :: thesis: ( not y in { (((union (rng (S | A))) . xL) *' (uReal . r)) where xL is Element of R_ x, r is Element of REAL : ( xL in R_ x & r is positive ) } or y in { (((union (rng S)) . xL) *' (uReal . r)) where xL is Element of R_ x, r is Element of REAL : ( xL in R_ x & r is positive ) } )
assume A18: y in { (((union (rng (S | A))) . xL) *' (uReal . r)) where xL is Element of R_ x, r is Element of REAL : ( xL in R_ x & r is positive ) } ; :: thesis: y in { (((union (rng S)) . xL) *' (uReal . r)) where xL is Element of R_ x, r is Element of REAL : ( xL in R_ x & r is positive ) }
consider xL being Element of R_ x, r being Element of REAL such that
A19: ( y = ((union (rng (S | A))) . xL) *' (uReal . r) & xL in R_ x & r is positive ) by A18;
xL in (L_ x) \/ (R_ x) by A19, XBOOLE_0:def 3;
then ex B being Ordinal st
( xL in dom (S . B) & B in A )
by A7;
then (union (rng (S | A))) . xL = (union (rng S)) . xL by SURREALR:5;
hence y in { (((union (rng S)) . xL) *' (uReal . r)) where xL is Element of R_ x, r is Element of REAL : ( xL in R_ x & r is positive ) } by A19; :: thesis: verum
end;
hence H2(x,S | A) = H2(x,S) by A14, A15, XBOOLE_0:def 10; :: thesis: verum
end;
A20: for A, B being Ordinal st A c= B holds
H1(A) c= H1(B)
by SURREAL0:35;
consider S being Function-yielding c=-monotone Sequence such that
A21: ( dom S = succ A & ( for B being Ordinal st B in succ A holds
ex SB being ManySortedSet of H1(B) st
( S . B = SB & ( for x being object st x in H1(B) holds
SB . x = H2(x,S | B) ) ) ) )
from SURREALR:sch 1(A1, A20);
A in succ A by ORDINAL1:8;
then consider SB being ManySortedSet of H1(A) such that
A22: ( S . A = SB & ( for x being object st x in H1(A) holds
SB . x = H2(x,S | A) ) )
by A21;
take SB ; :: thesis: ex S being Function-yielding c=-monotone Sequence st
( dom S = succ A & SB = S . A & ( for B being Ordinal st B in succ A holds
ex SB being ManySortedSet of Day B st
( S . B = SB & ( for x being object st x in Day B holds
SB . x = [({0_No} \/ { (((union (rng (S | B))) . xL) *' (uReal . r)) where xL is Element of L_ x, r is Element of REAL : ( xL in L_ x & r is positive ) } ), { (((union (rng (S | B))) . xR) *' (uReal . r)) where xR is Element of R_ x, r is Element of REAL : ( xR in R_ x & r is positive ) } ] ) ) ) )

take S ; :: thesis: ( dom S = succ A & SB = S . A & ( for B being Ordinal st B in succ A holds
ex SB being ManySortedSet of Day B st
( S . B = SB & ( for x being object st x in Day B holds
SB . x = [({0_No} \/ { (((union (rng (S | B))) . xL) *' (uReal . r)) where xL is Element of L_ x, r is Element of REAL : ( xL in L_ x & r is positive ) } ), { (((union (rng (S | B))) . xR) *' (uReal . r)) where xR is Element of R_ x, r is Element of REAL : ( xR in R_ x & r is positive ) } ] ) ) ) )

thus ( dom S = succ A & SB = S . A & ( for B being Ordinal st B in succ A holds
ex SB being ManySortedSet of Day B st
( S . B = SB & ( for x being object st x in Day B holds
SB . x = [({0_No} \/ { (((union (rng (S | B))) . xL) *' (uReal . r)) where xL is Element of L_ x, r is Element of REAL : ( xL in L_ x & r is positive ) } ), { (((union (rng (S | B))) . xR) *' (uReal . r)) where xR is Element of R_ x, r is Element of REAL : ( xR in R_ x & r is positive ) } ] ) ) ) )
by A21, A22; :: thesis: verum
end;
uniqueness
for b1, b2 being ManySortedSet of Day A st ex S being Function-yielding c=-monotone Sequence st
( dom S = succ A & b1 = S . A & ( for B being Ordinal st B in succ A holds
ex SB being ManySortedSet of Day B st
( S . B = SB & ( for x being object st x in Day B holds
SB . x = [({0_No} \/ { (((union (rng (S | B))) . xL) *' (uReal . r)) where xL is Element of L_ x, r is Element of REAL : ( xL in L_ x & r is positive ) } ), { (((union (rng (S | B))) . xR) *' (uReal . r)) where xR is Element of R_ x, r is Element of REAL : ( xR in R_ x & r is positive ) } ] ) ) ) ) & ex S being Function-yielding c=-monotone Sequence st
( dom S = succ A & b2 = S . A & ( for B being Ordinal st B in succ A holds
ex SB being ManySortedSet of Day B st
( S . B = SB & ( for x being object st x in Day B holds
SB . x = [({0_No} \/ { (((union (rng (S | B))) . xL) *' (uReal . r)) where xL is Element of L_ x, r is Element of REAL : ( xL in L_ x & r is positive ) } ), { (((union (rng (S | B))) . xR) *' (uReal . r)) where xR is Element of R_ x, r is Element of REAL : ( xR in R_ x & r is positive ) } ] ) ) ) ) holds
b1 = b2
proof
deffunc H1( Ordinal) -> Element of bool (Games $1) = Day $1;
deffunc H2( object , Function-yielding c=-monotone Sequence) -> object = [({0_No} \/ { (((union (rng $2)) . xL) *' (uReal . r)) where xL is Element of L_ $1, r is Element of REAL : ( xL in L_ $1 & r is positive ) } ), { (((union (rng $2)) . xR) *' (uReal . r)) where xR is Element of R_ $1, r is Element of REAL : ( xR in R_ $1 & r is positive ) } ];
let O1, O2 be ManySortedSet of H1(A); :: thesis: ( ex S being Function-yielding c=-monotone Sequence st
( dom S = succ A & O1 = S . A & ( for B being Ordinal st B in succ A holds
ex SB being ManySortedSet of Day B st
( S . B = SB & ( for x being object st x in Day B holds
SB . x = [({0_No} \/ { (((union (rng (S | B))) . xL) *' (uReal . r)) where xL is Element of L_ x, r is Element of REAL : ( xL in L_ x & r is positive ) } ), { (((union (rng (S | B))) . xR) *' (uReal . r)) where xR is Element of R_ x, r is Element of REAL : ( xR in R_ x & r is positive ) } ] ) ) ) ) & ex S being Function-yielding c=-monotone Sequence st
( dom S = succ A & O2 = S . A & ( for B being Ordinal st B in succ A holds
ex SB being ManySortedSet of Day B st
( S . B = SB & ( for x being object st x in Day B holds
SB . x = [({0_No} \/ { (((union (rng (S | B))) . xL) *' (uReal . r)) where xL is Element of L_ x, r is Element of REAL : ( xL in L_ x & r is positive ) } ), { (((union (rng (S | B))) . xR) *' (uReal . r)) where xR is Element of R_ x, r is Element of REAL : ( xR in R_ x & r is positive ) } ] ) ) ) ) implies O1 = O2 )

given S1 being Function-yielding c=-monotone Sequence such that A23: ( dom S1 = succ A & S1 . A = O1 & ( for B being Ordinal st B in succ A holds
ex SB being ManySortedSet of H1(B) st
( S1 . B = SB & ( for x being object st x in H1(B) holds
SB . x = H2(x,S1 | B) ) ) ) )
; :: thesis: ( for S being Function-yielding c=-monotone Sequence holds
( not dom S = succ A or not O2 = S . A or ex B being Ordinal st
( B in succ A & ( for SB being ManySortedSet of Day B holds
( not S . B = SB or ex x being object st
( x in Day B & not SB . x = [({0_No} \/ { (((union (rng (S | B))) . xL) *' (uReal . r)) where xL is Element of L_ x, r is Element of REAL : ( xL in L_ x & r is positive ) } ), { (((union (rng (S | B))) . xR) *' (uReal . r)) where xR is Element of R_ x, r is Element of REAL : ( xR in R_ x & r is positive ) } ] ) ) ) ) ) or O1 = O2 )

given S2 being Function-yielding c=-monotone Sequence such that A24: ( dom S2 = succ A & S2 . A = O2 & ( for B being Ordinal st B in succ A holds
ex SB being ManySortedSet of H1(B) st
( S2 . B = SB & ( for x being object st x in H1(B) holds
SB . x = H2(x,S2 | B) ) ) ) )
; :: thesis: O1 = O2
A25: for B being Ordinal st B in succ A holds
ex SB being ManySortedSet of H1(B) st
( S1 . B = SB & ( for x being object st x in H1(B) holds
SB . x = H2(x,S1 | B) ) )
by A23;
A26: for B being Ordinal st B in succ A holds
ex SB being ManySortedSet of H1(B) st
( S2 . B = SB & ( for x being object st x in H1(B) holds
SB . x = H2(x,S2 | B) ) )
by A24;
A27: ( succ A c= dom S1 & succ A c= dom S2 ) by A23, A24;
S1 | (succ A) = S2 | (succ A) from SURREALR:sch 2(A27, A25, A26);
then S1 = S2 | (succ A) by A23;
hence O1 = O2 by A23, A24; :: thesis: verum
end;
end;

:: deftheorem Def4 defines No_omega_op SURREALC:def 4 :
for A being Ordinal
for b2 being ManySortedSet of Day A holds
( b2 = No_omega_op A iff ex S being Function-yielding c=-monotone Sequence st
( dom S = succ A & b2 = S . A & ( for B being Ordinal st B in succ A holds
ex SB being ManySortedSet of Day B st
( S . B = SB & ( for x being object st x in Day B holds
SB . x = [({0_No} \/ { (((union (rng (S | B))) . xL) *' (uReal . r)) where xL is Element of L_ x, r is Element of REAL : ( xL in L_ x & r is positive ) } ), { (((union (rng (S | B))) . xR) *' (uReal . r)) where xR is Element of R_ x, r is Element of REAL : ( xR in R_ x & r is positive ) } ] ) ) ) ) );

theorem Th21: :: SURREALC:21
for S being Function-yielding c=-monotone Sequence st ( for B being Ordinal st B in dom S holds
ex SB being ManySortedSet of Day B st
( S . B = SB & ( for x being object st x in Day B holds
SB . x = [({0_No} \/ { (((union (rng (S | B))) . xL) *' (uReal . r)) where xL is Element of L_ x, r is Element of REAL : ( xL in L_ x & r is positive ) } ), { (((union (rng (S | B))) . xR) *' (uReal . r)) where xR is Element of R_ x, r is Element of REAL : ( xR in R_ x & r is positive ) } ] ) ) ) holds
for A being Ordinal st A in dom S holds
No_omega_op A = S . A
proof
deffunc H1( Ordinal) -> Element of bool (Games $1) = Day $1;
deffunc H2( object , Function-yielding c=-monotone Sequence) -> object = [({0_No} \/ { (((union (rng $2)) . xL) *' (uReal . r)) where xL is Element of L_ $1, r is Element of REAL : ( xL in L_ $1 & r is positive ) } ), { (((union (rng $2)) . xR) *' (uReal . r)) where xR is Element of R_ $1, r is Element of REAL : ( xR in R_ $1 & r is positive ) } ];
let S1 be Function-yielding c=-monotone Sequence; :: thesis: ( ( for B being Ordinal st B in dom S1 holds
ex SB being ManySortedSet of Day B st
( S1 . B = SB & ( for x being object st x in Day B holds
SB . x = [({0_No} \/ { (((union (rng (S1 | B))) . xL) *' (uReal . r)) where xL is Element of L_ x, r is Element of REAL : ( xL in L_ x & r is positive ) } ), { (((union (rng (S1 | B))) . xR) *' (uReal . r)) where xR is Element of R_ x, r is Element of REAL : ( xR in R_ x & r is positive ) } ] ) ) ) implies for A being Ordinal st A in dom S1 holds
No_omega_op A = S1 . A )

assume A1: for B being Ordinal st B in dom S1 holds
ex SB being ManySortedSet of H1(B) st
( S1 . B = SB & ( for x being object st x in H1(B) holds
SB . x = H2(x,S1 | B) ) )
; :: thesis: for A being Ordinal st A in dom S1 holds
No_omega_op A = S1 . A

let A be Ordinal; :: thesis: ( A in dom S1 implies No_omega_op A = S1 . A )
assume A2: A in dom S1 ; :: thesis: No_omega_op A = S1 . A
A3: succ A c= dom S1 by A2, ORDINAL1:21;
consider S2 being Function-yielding c=-monotone Sequence such that
A4: ( dom S2 = succ A & S2 . A = No_omega_op A & ( for B being Ordinal st B in succ A holds
ex SB being ManySortedSet of H1(B) st
( S2 . B = SB & ( for x being object st x in H1(B) holds
SB . x = H2(x,S2 | B) ) ) ) )
by Def4;
A5: for B being Ordinal st B in succ A holds
ex SB being ManySortedSet of H1(B) st
( S1 . B = SB & ( for x being object st x in H1(B) holds
SB . x = H2(x,S1 | B) ) )
by A1, A3;
A6: for B being Ordinal st B in succ A holds
ex SB being ManySortedSet of H1(B) st
( S2 . B = SB & ( for x being object st x in H1(B) holds
SB . x = H2(x,S2 | B) ) )
by A4;
A7: ( succ A c= dom S1 & succ A c= dom S2 ) by A2, ORDINAL1:21, A4;
A8: S1 | (succ A) = S2 | (succ A) from SURREALR:sch 2(A7, A5, A6);
A in succ A by ORDINAL1:8;
hence No_omega_op A = S1 . A by A4, A8, FUNCT_1:49; :: thesis: verum
end;

definition
let x be Surreal;
func No_omega^ x -> set equals :: SURREALC:def 5
(No_omega_op (born x)) . x;
coherence
(No_omega_op (born x)) . x is set
;
end;

:: deftheorem defines No_omega^ SURREALC:def 5 :
for x being Surreal holds No_omega^ x = (No_omega_op (born x)) . x;

Lm4: for o being object
for x being Surreal holds
( No_omega^ x is pair & ( not o in L_ (No_omega^ x) or o = 0_No or ex xL being Surreal ex r being positive Real st
( xL in L_ x & o = (No_omega^ xL) *' (uReal . r) ) ) & ( ( o = 0_No or ex xL being Surreal ex r being positive Real st
( xL in L_ x & o = (No_omega^ xL) *' (uReal . r) ) ) implies o in L_ (No_omega^ x) ) & ( o in R_ (No_omega^ x) implies ex xR being Surreal ex r being positive Real st
( xR in R_ x & o = (No_omega^ xR) *' (uReal . r) ) ) & ( ex xR being Surreal ex r being positive Real st
( xR in R_ x & o = (No_omega^ xR) *' (uReal . r) ) implies o in R_ (No_omega^ x) ) )

proof
let o be object ; :: thesis: for x being Surreal holds
( No_omega^ x is pair & ( not o in L_ (No_omega^ x) or o = 0_No or ex xL being Surreal ex r being positive Real st
( xL in L_ x & o = (No_omega^ xL) *' (uReal . r) ) ) & ( ( o = 0_No or ex xL being Surreal ex r being positive Real st
( xL in L_ x & o = (No_omega^ xL) *' (uReal . r) ) ) implies o in L_ (No_omega^ x) ) & ( o in R_ (No_omega^ x) implies ex xR being Surreal ex r being positive Real st
( xR in R_ x & o = (No_omega^ xR) *' (uReal . r) ) ) & ( ex xR being Surreal ex r being positive Real st
( xR in R_ x & o = (No_omega^ xR) *' (uReal . r) ) implies o in R_ (No_omega^ x) ) )

let x be Surreal; :: thesis: ( No_omega^ x is pair & ( not o in L_ (No_omega^ x) or o = 0_No or ex xL being Surreal ex r being positive Real st
( xL in L_ x & o = (No_omega^ xL) *' (uReal . r) ) ) & ( ( o = 0_No or ex xL being Surreal ex r being positive Real st
( xL in L_ x & o = (No_omega^ xL) *' (uReal . r) ) ) implies o in L_ (No_omega^ x) ) & ( o in R_ (No_omega^ x) implies ex xR being Surreal ex r being positive Real st
( xR in R_ x & o = (No_omega^ xR) *' (uReal . r) ) ) & ( ex xR being Surreal ex r being positive Real st
( xR in R_ x & o = (No_omega^ xR) *' (uReal . r) ) implies o in R_ (No_omega^ x) ) )

set A = born x;
deffunc H1( set , Function-yielding c=-monotone Sequence) -> set = { (((union (rng $2)) . xL) *' (uReal . r)) where xL is Element of $1, r is Element of REAL : ( xL in $1 & r is positive ) } ;
deffunc H2( object , Function-yielding c=-monotone Sequence) -> object = [({0_No} \/ H1( L_ $1,$2)),H1( R_ $1,$2)];
consider S being Function-yielding c=-monotone Sequence such that
A1: ( dom S = succ (born x) & No_omega_op (born x) = S . (born x) ) and
A2: for B being Ordinal st B in succ (born x) holds
ex SB being ManySortedSet of Day B st
( S . B = SB & ( for x being object st x in Day B holds
SB . x = H2(x,S | B) ) )
by Def4;
consider SA being ManySortedSet of Day (born x) such that
A3: S . (born x) = SA and
A4: for x being object st x in Day (born x) holds
SA . x = H2(x,S | (born x))
by A2, ORDINAL1:6;
x in Day (born x) by SURREAL0:def 18;
then A5: No_omega^ x = H2(x,S | (born x)) by A1, A3, A4;
hence No_omega^ x is pair ; :: thesis: ( ( not o in L_ (No_omega^ x) or o = 0_No or ex xL being Surreal ex r being positive Real st
( xL in L_ x & o = (No_omega^ xL) *' (uReal . r) ) ) & ( ( o = 0_No or ex xL being Surreal ex r being positive Real st
( xL in L_ x & o = (No_omega^ xL) *' (uReal . r) ) ) implies o in L_ (No_omega^ x) ) & ( o in R_ (No_omega^ x) implies ex xR being Surreal ex r being positive Real st
( xR in R_ x & o = (No_omega^ xR) *' (uReal . r) ) ) & ( ex xR being Surreal ex r being positive Real st
( xR in R_ x & o = (No_omega^ xR) *' (uReal . r) ) implies o in R_ (No_omega^ x) ) )

A6: for T being surreal-membered set st ( T = L_ x or T = R_ x ) holds
for o being object holds
( o in H1(T,S | (born x)) iff ex y being Surreal ex r being positive Real st
( y in T & o = (No_omega^ y) *' (uReal . r) ) )
proof
let T be surreal-membered set ; :: thesis: ( ( T = L_ x or T = R_ x ) implies for o being object holds
( o in H1(T,S | (born x)) iff ex y being Surreal ex r being positive Real st
( y in T & o = (No_omega^ y) *' (uReal . r) ) ) )

assume A7: ( T = L_ x or T = R_ x ) ; :: thesis: for o being object holds
( o in H1(T,S | (born x)) iff ex y being Surreal ex r being positive Real st
( y in T & o = (No_omega^ y) *' (uReal . r) ) )

let o be object ; :: thesis: ( o in H1(T,S | (born x)) iff ex y being Surreal ex r being positive Real st
( y in T & o = (No_omega^ y) *' (uReal . r) ) )

thus ( o in H1(T,S | (born x)) implies ex y being Surreal ex r being positive Real st
( y in T & o = (No_omega^ y) *' (uReal . r) ) )
:: thesis: ( ex y being Surreal ex r being positive Real st
( y in T & o = (No_omega^ y) *' (uReal . r) ) implies o in H1(T,S | (born x)) )
proof
assume o in H1(T,S | (born x)) ; :: thesis: ex y being Surreal ex r being positive Real st
( y in T & o = (No_omega^ y) *' (uReal . r) )

then consider a being Element of T, r being Element of REAL such that
A8: ( o = ((union (rng (S | (born x)))) . a) *' (uReal . r) & a in T & r is positive ) ;
reconsider a = a as Surreal by SURREAL0:def 16, A8;
reconsider r = r as positive Real by A8;
take a ; :: thesis: ex r being positive Real st
( a in T & o = (No_omega^ a) *' (uReal . r) )

take r ; :: thesis: ( a in T & o = (No_omega^ a) *' (uReal . r) )
set B = born a;
A9: a in (L_ x) \/ (R_ x) by A7, A8, XBOOLE_0:def 3;
then A10: born a in born x by SURREALO:1;
A11: born a in succ (born x) by A9, SURREALO:1, ORDINAL1:8;
then consider SB being ManySortedSet of Day (born a) such that
A12: ( S . (born a) = SB & ( for x being object st x in Day (born a) holds
SB . x = H2(x,S | (born a)) ) )
by A2;
A13: dom SB = Day (born a) by PARTFUN1:def 2;
A14: a in Day (born a) by SURREAL0:def 18;
A15: SB . a = (union (rng S)) . a by SURREALR:2, A12, A13, A14, A11, A1;
SB . a = No_omega^ a by A11, A1, A2, Th21, A12;
hence ( a in T & o = (No_omega^ a) *' (uReal . r) ) by SURREALR:5, A10, A13, A14, A12, A8, A15; :: thesis: verum
end;
given a being Surreal, r being positive Real such that A16: ( a in T & o = (No_omega^ a) *' (uReal . r) ) ; :: thesis: o in H1(T,S | (born x))
set B = born a;
A17: a in (L_ x) \/ (R_ x) by A7, A16, XBOOLE_0:def 3;
then A18: born a in born x by SURREALO:1;
A19: born a in succ (born x) by A17, SURREALO:1, ORDINAL1:8;
then consider SB being ManySortedSet of Day (born a) such that
A20: ( S . (born a) = SB & ( for x being object st x in Day (born a) holds
SB . x = H2(x,S | (born a)) ) )
by A2;
A21: No_omega_op (born a) = S . (born a) by A19, A1, A2, Th21;
A22: dom SB = Day (born a) by PARTFUN1:def 2;
A23: a in Day (born a) by SURREAL0:def 18;
SB . a = (union (rng S)) . a by SURREALR:2, A20, A22, A23, A19, A1;
then A24: (union (rng (S | (born x)))) . a = No_omega^ a by SURREALR:5, A18, A22, A23, A20, A21;
r in REAL by XREAL_0:def 1;
hence o in H1(T,S | (born x)) by A16, A24; :: thesis: verum
end;
thus ( not o in L_ (No_omega^ x) or o = 0_No or ex xL being Surreal ex r being positive Real st
( xL in L_ x & o = (No_omega^ xL) *' (uReal . r) ) )
:: thesis: ( ( ( o = 0_No or ex xL being Surreal ex r being positive Real st
( xL in L_ x & o = (No_omega^ xL) *' (uReal . r) ) ) implies o in L_ (No_omega^ x) ) & ( o in R_ (No_omega^ x) implies ex xR being Surreal ex r being positive Real st
( xR in R_ x & o = (No_omega^ xR) *' (uReal . r) ) ) & ( ex xR being Surreal ex r being positive Real st
( xR in R_ x & o = (No_omega^ xR) *' (uReal . r) ) implies o in R_ (No_omega^ x) ) )
proof
assume ( o in L_ (No_omega^ x) & o <> 0_No ) ; :: thesis: ex xL being Surreal ex r being positive Real st
( xL in L_ x & o = (No_omega^ xL) *' (uReal . r) )

then o in H1( L_ x,S | (born x)) by A5, ZFMISC_1:136;
hence ex xL being Surreal ex r being positive Real st
( xL in L_ x & o = (No_omega^ xL) *' (uReal . r) )
by A6; :: thesis: verum
end;
thus ( ( o = 0_No or ex xL being Surreal ex r being positive Real st
( xL in L_ x & o = (No_omega^ xL) *' (uReal . r) ) ) implies o in L_ (No_omega^ x) )
:: thesis: ( o in R_ (No_omega^ x) iff ex xR being Surreal ex r being positive Real st
( xR in R_ x & o = (No_omega^ xR) *' (uReal . r) ) )
proof
assume ( o = 0_No or ex xL being Surreal ex r being positive Real st
( xL in L_ x & o = (No_omega^ xL) *' (uReal . r) ) )
; :: thesis: o in L_ (No_omega^ x)
per cases then ( o = 0_No or ex xL being Surreal ex r being positive Real st
( xL in L_ x & o = (No_omega^ xL) *' (uReal . r) ) )
;
suppose o = 0_No ; :: thesis: o in L_ (No_omega^ x)
hence o in L_ (No_omega^ x) by A5, ZFMISC_1:136; :: thesis: verum
end;
suppose ex xL being Surreal ex r being positive Real st
( xL in L_ x & o = (No_omega^ xL) *' (uReal . r) )
; :: thesis: o in L_ (No_omega^ x)
then o in H1( L_ x,S | (born x)) by A6;
hence o in L_ (No_omega^ x) by A5, XBOOLE_0:def 3; :: thesis: verum
end;
end;
end;
thus ( o in R_ (No_omega^ x) implies ex xL being Surreal ex r being positive Real st
( xL in R_ x & o = (No_omega^ xL) *' (uReal . r) ) )
by A5, A6; :: thesis: ( ex xR being Surreal ex r being positive Real st
( xR in R_ x & o = (No_omega^ xR) *' (uReal . r) ) implies o in R_ (No_omega^ x) )

assume ex xL being Surreal ex r being positive Real st
( xL in R_ x & o = (No_omega^ xL) *' (uReal . r) )
; :: thesis: o in R_ (No_omega^ x)
hence o in R_ (No_omega^ x) by A5, A6; :: thesis: verum
end;

Lm5: for x being Surreal holds
( No_omega^ x is positive Surreal & ( for y1, y2, Ny1, Ny2 being Surreal st Ny1 = No_omega^ y1 & Ny2 = No_omega^ y2 holds
( ( y1 <= y2 implies Ny1 <= Ny2 ) & ( y1 < y2 implies Ny1 infinitely< Ny2 ) ) ) )

proof
let x be Surreal; :: thesis: ( No_omega^ x is positive Surreal & ( for y1, y2, Ny1, Ny2 being Surreal st Ny1 = No_omega^ y1 & Ny2 = No_omega^ y2 holds
( ( y1 <= y2 implies Ny1 <= Ny2 ) & ( y1 < y2 implies Ny1 infinitely< Ny2 ) ) ) )

defpred S1[ Ordinal] means ( ( for x being Surreal st x in Day $1 holds
No_omega^ x is positive Surreal ) & ( for y1, y2, Ny1, Ny2 being Surreal st y1 in Day $1 & y2 in Day $1 & Ny1 = No_omega^ y1 & Ny2 = No_omega^ y2 holds
( ( y1 <= y2 implies Ny1 <= Ny2 ) & ( y1 < y2 implies Ny1 infinitely< Ny2 ) ) ) );
A1: for D being Ordinal st ( for C being Ordinal st C in D holds
S1[C] ) holds
S1[D]
proof
let D be Ordinal; :: thesis: ( ( for C being Ordinal st C in D holds
S1[C] ) implies S1[D] )

assume A2: for C being Ordinal st C in D holds
S1[C]
; :: thesis: S1[D]
thus A3: for x being Surreal st x in Day D holds
No_omega^ x is positive Surreal
:: thesis: for y1, y2, Ny1, Ny2 being Surreal st y1 in Day D & y2 in Day D & Ny1 = No_omega^ y1 & Ny2 = No_omega^ y2 holds
( ( y1 <= y2 implies Ny1 <= Ny2 ) & ( y1 < y2 implies Ny1 infinitely< Ny2 ) )
proof
let x be Surreal; :: thesis: ( x in Day D implies No_omega^ x is positive Surreal )
assume A4: x in Day D ; :: thesis: No_omega^ x is positive Surreal
reconsider N = No_omega^ x as pair set by Lm4;
A5: born x c= D by A4, SURREAL0:def 18;
(L_ N) \/ (R_ N) is surreal-membered
proof
let o be object ; :: according to SURREAL0:def 16 :: thesis: ( not o in (L_ N) \/ (R_ N) or o is surreal )
assume A6: o in (L_ N) \/ (R_ N) ; :: thesis: o is surreal
per cases ( o = 0_No or ( o <> 0_No & o in L_ N ) or o in R_ N ) by A6, XBOOLE_0:def 3;
suppose o = 0_No ; :: thesis: o is surreal
hence o is surreal ; :: thesis: verum
end;
suppose ( o <> 0_No & o in L_ N ) ; :: thesis: o is surreal
then consider a being Surreal, r being positive Real such that
A7: ( a in L_ x & o = (No_omega^ a) *' (uReal . r) ) by Lm4;
thus o is surreal by A7; :: thesis: verum
end;
suppose o in R_ N ; :: thesis: o is surreal
then consider a being Surreal, r being positive Real such that
A8: ( a in R_ x & o = (No_omega^ a) *' (uReal . r) ) by Lm4;
thus o is surreal by A8; :: thesis: verum
end;
end;
end;
then consider M being Ordinal such that
A9: for o being object st o in (L_ N) \/ (R_ N) holds
ex A being Ordinal st
( A in M & o in Day A )
by SURREAL0:47;
L_ N << R_ N
proof
let a, b be Surreal; :: according to SURREAL0:def 20 :: thesis: ( not a in L_ N or not b in R_ N or not b <= a )
assume A10: ( a in L_ N & b in R_ N ) ; :: thesis: not b <= a
consider xR being Surreal, r being positive Real such that
A11: ( xR in R_ x & b = (No_omega^ xR) *' (uReal . r) ) by A10, Lm4;
xR in (L_ x) \/ (R_ x) by A11, XBOOLE_0:def 3;
then A12: born xR in born x by SURREALO:1;
then A13: born xR in D by A5;
A14: xR in Day (born xR) by SURREAL0:def 18;
then reconsider NxR = No_omega^ xR as positive Surreal by A12, A2, A5;
A15: NxR * (uReal . r) is positive ;
per cases ( a = 0_No or ex xL being Surreal ex r being positive Real st
( xL in L_ x & a = (No_omega^ xL) *' (uReal . r) ) )
by A10, Lm4;
suppose a = 0_No ; :: thesis: not b <= a
hence not b <= a by A15, A11; :: thesis: verum
end;
suppose ex xL being Surreal ex r being positive Real st
( xL in L_ x & a = (No_omega^ xL) *' (uReal . r) )
; :: thesis: not b <= a
then consider xL being Surreal, s being positive Real such that
A16: ( xL in L_ x & a = (No_omega^ xL) *' (uReal . s) ) ;
xL in (L_ x) \/ (R_ x) by A16, XBOOLE_0:def 3;
then A17: born xL in born x by SURREALO:1;
then A18: born xL in D by A5;
set B = (born xL) \/ (born xR);
A19: (born xL) \/ (born xR) in D by A13, A18, ORDINAL3:12;
A20: xL in Day (born xL) by SURREAL0:def 18;
then reconsider NxL = No_omega^ xL as positive Surreal by A17, A5, A2;
A21: ( Day (born xL) c= Day ((born xL) \/ (born xR)) & Day (born xR) c= Day ((born xL) \/ (born xR)) ) by XBOOLE_1:7, SURREAL0:35;
L_ x << R_ x by SURREAL0:45;
then xL < xR by A16, A11;
then NxL infinitely< NxR by A19, A21, A20, A14, A2;
then NxL infinitely< NxR * (uReal . r) by Th13;
then NxL * (uReal . s) < NxR * (uReal . r) ;
hence not b <= a by A16, A11; :: thesis: verum
end;
end;
end;
then [(L_ N),(R_ N)] in Day M by A9, SURREAL0:46;
then reconsider N = N as Surreal ;
A22: 0_No in L_ N by Lm4;
( L_ N << {N} & N in {N} ) by SURREALO:11, TARSKI:def 1;
hence No_omega^ x is positive Surreal by A22, SURREALI:def 8; :: thesis: verum
end;
defpred S2[ Ordinal] means for y1, y2, Ny1, Ny2 being Surreal st (born y1) (+) (born y2) = $1 & y1 in Day D & y2 in Day D & Ny1 = No_omega^ y1 & Ny2 = No_omega^ y2 holds
( ( y1 <= y2 implies Ny1 <= Ny2 ) & ( y1 < y2 implies Ny1 infinitely< Ny2 ) );
A23: for E being Ordinal st ( for F being Ordinal st F in E holds
S2[F] ) holds
S2[E]
proof
let E be Ordinal; :: thesis: ( ( for F being Ordinal st F in E holds
S2[F] ) implies S2[E] )

assume A24: for F being Ordinal st F in E holds
S2[F]
; :: thesis: S2[E]
let y1, y2, Ny1, Ny2 be Surreal; :: thesis: ( (born y1) (+) (born y2) = E & y1 in Day D & y2 in Day D & Ny1 = No_omega^ y1 & Ny2 = No_omega^ y2 implies ( ( y1 <= y2 implies Ny1 <= Ny2 ) & ( y1 < y2 implies Ny1 infinitely< Ny2 ) ) )
assume A25: ( (born y1) (+) (born y2) = E & y1 in Day D & y2 in Day D & Ny1 = No_omega^ y1 & Ny2 = No_omega^ y2 ) ; :: thesis: ( ( y1 <= y2 implies Ny1 <= Ny2 ) & ( y1 < y2 implies Ny1 infinitely< Ny2 ) )
thus ( y1 <= y2 implies Ny1 <= Ny2 ) :: thesis: ( y1 < y2 implies Ny1 infinitely< Ny2 )
proof
assume y1 <= y2 ; :: thesis: Ny1 <= Ny2
then A26: ( L_ y1 << {y2} & {y1} << R_ y2 ) by SURREAL0:43;
A27: L_ Ny1 << {Ny2}
proof
let a, b be Surreal; :: according to SURREAL0:def 20 :: thesis: ( not a in L_ Ny1 or not b in {Ny2} or not b <= a )
assume A28: ( a in L_ Ny1 & b in {Ny2} ) ; :: thesis: not b <= a
per cases ( a = 0_No or ex xL being Surreal ex r being positive Real st
( xL in L_ y1 & a = (No_omega^ xL) *' (uReal . r) ) )
by A28, Lm4, A25;
suppose A29: a = 0_No ; :: thesis: not b <= a
Ny2 is positive by A3, A25;
hence not b <= a by A29, A28, TARSKI:def 1; :: thesis: verum
end;
suppose ex xL being Surreal ex r being positive Real st
( xL in L_ y1 & a = (No_omega^ xL) *' (uReal . r) )
; :: thesis: not b <= a
then consider xL being Surreal, r being positive Real such that
A30: ( xL in L_ y1 & a = (No_omega^ xL) *' (uReal . r) ) ;
A31: xL in (L_ y1) \/ (R_ y1) by A30, XBOOLE_0:def 3;
then ( born xL c= born y1 & born y1 c= D ) by SURREALO:1, SURREAL0:def 18, ORDINAL1:def 2, A25;
then born xL c= D by XBOOLE_1:1;
then A32: ( xL in Day (born xL) & Day (born xL) c= Day D ) by SURREAL0:def 18, SURREAL0:35;
then reconsider NxL = No_omega^ xL as positive Surreal by A3;
y2 in {y2} by TARSKI:def 1;
then A33: xL < y2 by A26, A30;
(born xL) (+) (born y2) in E by A31, SURREALO:1, A25, ORDINAL7:94;
then NxL infinitely< Ny2 by A25, A32, A33, A24;
then NxL * (uReal . r) < Ny2 ;
hence not b <= a by A30, A28, TARSKI:def 1; :: thesis: verum
end;
end;
end;
{Ny1} << R_ Ny2
proof
let a, b be Surreal; :: according to SURREAL0:def 20 :: thesis: ( not a in {Ny1} or not b in R_ Ny2 or not b <= a )
assume A34: ( a in {Ny1} & b in R_ Ny2 ) ; :: thesis: not b <= a
consider xR being Surreal, r being positive Real such that
A35: ( xR in R_ y2 & b = (No_omega^ xR) *' (uReal . r) ) by A25, A34, Lm4;
A36: xR in (L_ y2) \/ (R_ y2) by A35, XBOOLE_0:def 3;
then ( born xR c= born y2 & born y2 c= D ) by SURREALO:1, SURREAL0:def 18, ORDINAL1:def 2, A25;
then born xR c= D by XBOOLE_1:1;
then A37: ( xR in Day (born xR) & Day (born xR) c= Day D ) by SURREAL0:def 18, SURREAL0:35;
then reconsider NxR = No_omega^ xR as positive Surreal by A3;
y1 in {y1} by TARSKI:def 1;
then A38: y1 < xR by A26, A35;
(born y1) (+) (born xR) in E by A36, SURREALO:1, A25, ORDINAL7:94;
then Ny1 infinitely< NxR by A25, A37, A38, A24;
then Ny1 infinitely< NxR * (uReal . r) by Th13;
then Ny1 * (uReal . 1) < NxR * (uReal . r) ;
hence not b <= a by A35, SURREALN:48, A34, TARSKI:def 1; :: thesis: verum
end;
hence Ny1 <= Ny2 by A27, SURREAL0:43; :: thesis: verum
end;
assume A39: y1 < y2 ; :: thesis: Ny1 infinitely< Ny2
let r be positive Real; :: according to SURREALC:def 3 :: thesis: Ny1 * (uReal . r) < Ny2
A40: ( born y1 c= D & born y2 c= D ) by A25, SURREAL0:def 18;
per cases ( ex y1R being Surreal st
( y1R in R_ y1 & y1 < y1R & y1R <= y2 ) or ex y2L being Surreal st
( y2L in L_ y2 & y1 <= y2L & y2L < y2 ) )
by A39, SURREALO:13;
suppose ex y1R being Surreal st
( y1R in R_ y1 & y1 < y1R & y1R <= y2 )
; :: thesis: Ny1 * (uReal . r) < Ny2
then consider y1R being Surreal such that
A41: ( y1R in R_ y1 & y1 < y1R & y1R <= y2 ) ;
A42: y1R in (L_ y1) \/ (R_ y1) by A41, XBOOLE_0:def 3;
then A43: born y1R in born y1 by SURREALO:1;
y1R in Day (born y1R) by SURREAL0:def 18;
then reconsider Ny1R = No_omega^ y1R as positive Surreal by A43, A40, A2;
A44: ( Ny1 in {Ny1} & {Ny1} << R_ Ny1 ) by TARSKI:def 1, SURREALO:11;
A45: Ny1 < Ny1R * (uReal . (1 / r)) by A44, A41, A25, Lm4;
uReal . r is positive ;
then A46: Ny1 * (uReal . r) < (Ny1R * (uReal . (1 / r))) * (uReal . r) by A45, SURREALR:70;
(1 / r) * r = 1 by XCMPLX_1:106;
then ( (Ny1R * (uReal . (1 / r))) * (uReal . r) == Ny1R * ((uReal . (1 / r)) * (uReal . r)) & Ny1R * ((uReal . (1 / r)) * (uReal . r)) == Ny1R * 1_No ) by SURREALR:51, SURREALR:69, SURREALN:48, SURREALN:57;
then ( (Ny1R * (uReal . (1 / r))) * (uReal . r) == Ny1R * 1_No & Ny1R * 1_No = Ny1R ) by SURREALO:4;
then A47: Ny1 * (uReal . r) < Ny1R by A46, SURREALO:4;
( born y1R c= born y1 & born y1 c= D ) by ORDINAL1:def 2, SURREAL0:def 18, SURREALO:1, A25, A42;
then born y1R c= D by XBOOLE_1:1;
then A48: ( y1R in Day (born y1R) & Day (born y1R) c= Day D ) by SURREAL0:def 18, SURREAL0:35;
(born y1R) (+) (born y2) in (born y1) (+) (born y2) by A42, SURREALO:1, ORDINAL7:94;
then Ny1R <= Ny2 by A41, A48, A25, A24;
hence Ny1 * (uReal . r) < Ny2 by A47, SURREALO:4; :: thesis: verum
end;
suppose ex y2L being Surreal st
( y2L in L_ y2 & y1 <= y2L & y2L < y2 )
; :: thesis: Ny1 * (uReal . r) < Ny2
then consider y2L being Surreal such that
A49: ( y2L in L_ y2 & y1 <= y2L & y2L < y2 ) ;
A50: y2L in (L_ y2) \/ (R_ y2) by A49, XBOOLE_0:def 3;
then A51: born y2L in born y2 by SURREALO:1;
y2L in Day (born y2L) by SURREAL0:def 18;
then reconsider Ny2L = No_omega^ y2L as positive Surreal by A51, A40, A2;
A52: ( L_ Ny2 << {Ny2} & Ny2 in {Ny2} ) by TARSKI:def 1, SURREALO:11;
A53: Ny2L * (uReal . r) in L_ Ny2 by A49, A25, Lm4;
( born y2L c= born y2 & born y2 c= D ) by ORDINAL1:def 2, SURREAL0:def 18, SURREALO:1, A25, A50;
then born y2L c= D by XBOOLE_1:1;
then A54: ( y2L in Day (born y2L) & Day (born y2L) c= Day D ) by SURREAL0:def 18, SURREAL0:35;
(born y1) (+) (born y2L) in (born y1) (+) (born y2) by A50, SURREALO:1, ORDINAL7:94;
then A55: Ny1 <= Ny2L by A54, A49, A25, A24;
uReal . r is positive ;
then 0_No <= uReal . r ;
then Ny1 * (uReal . r) <= Ny2L * (uReal . r) by SURREALR:75, A55;
hence Ny1 * (uReal . r) < Ny2 by A53, A52, SURREALO:4; :: thesis: verum
end;
end;
end;
A56: for E being Ordinal holds S2[E] from ORDINAL1:sch 2(A23);
let y1, y2, Ny1, Ny2 be Surreal; :: thesis: ( y1 in Day D & y2 in Day D & Ny1 = No_omega^ y1 & Ny2 = No_omega^ y2 implies ( ( y1 <= y2 implies Ny1 <= Ny2 ) & ( y1 < y2 implies Ny1 infinitely< Ny2 ) ) )
assume A57: ( y1 in Day D & y2 in Day D & Ny1 = No_omega^ y1 & Ny2 = No_omega^ y2 ) ; :: thesis: ( ( y1 <= y2 implies Ny1 <= Ny2 ) & ( y1 < y2 implies Ny1 infinitely< Ny2 ) )
S2[(born y1) (+) (born y2)] by A56;
hence ( ( y1 <= y2 implies Ny1 <= Ny2 ) & ( y1 < y2 implies Ny1 infinitely< Ny2 ) ) by A57; :: thesis: verum
end;
A58: for E being Ordinal holds S1[E] from ORDINAL1:sch 2(A1);
x in Day (born x) by SURREAL0:def 18;
hence No_omega^ x is positive Surreal by A58; :: thesis: for y1, y2, Ny1, Ny2 being Surreal st Ny1 = No_omega^ y1 & Ny2 = No_omega^ y2 holds
( ( y1 <= y2 implies Ny1 <= Ny2 ) & ( y1 < y2 implies Ny1 infinitely< Ny2 ) )

let y1, y2, Ny1, Ny2 be Surreal; :: thesis: ( Ny1 = No_omega^ y1 & Ny2 = No_omega^ y2 implies ( ( y1 <= y2 implies Ny1 <= Ny2 ) & ( y1 < y2 implies Ny1 infinitely< Ny2 ) ) )
assume A59: ( Ny1 = No_omega^ y1 & Ny2 = No_omega^ y2 ) ; :: thesis: ( ( y1 <= y2 implies Ny1 <= Ny2 ) & ( y1 < y2 implies Ny1 infinitely< Ny2 ) )
A60: ( y1 in Day (born y1) & y2 in Day (born y2) ) by SURREAL0:def 18;
( Day (born y1) c= Day ((born y1) \/ (born y2)) & Day (born y2) c= Day ((born y1) \/ (born y2)) ) by XBOOLE_1:7, SURREAL0:35;
hence ( ( y1 <= y2 implies Ny1 <= Ny2 ) & ( y1 < y2 implies Ny1 infinitely< Ny2 ) ) by A59, A60, A58; :: thesis: verum
end;

registration
let x be Surreal;
cluster No_omega^ x -> surreal ;
coherence
No_omega^ x is surreal
by Lm5;
end;

registration
let x be Surreal;
cluster No_omega^ x -> positive ;
coherence
No_omega^ x is positive
by Lm5;
end;

theorem Th22: :: SURREALC:22
for o being object
for x being Surreal holds
( o in L_ (No_omega^ x) iff ( o = 0_No or ex xL being Surreal ex r being positive Real st
( xL in L_ x & o = (No_omega^ xL) * (uReal . r) ) ) )
proof
let o be object ; :: thesis: for x being Surreal holds
( o in L_ (No_omega^ x) iff ( o = 0_No or ex xL being Surreal ex r being positive Real st
( xL in L_ x & o = (No_omega^ xL) * (uReal . r) ) ) )

let x be Surreal; :: thesis: ( o in L_ (No_omega^ x) iff ( o = 0_No or ex xL being Surreal ex r being positive Real st
( xL in L_ x & o = (No_omega^ xL) * (uReal . r) ) ) )

thus ( not o in L_ (No_omega^ x) or o = 0_No or ex xL being Surreal ex r being positive Real st
( xL in L_ x & o = (No_omega^ xL) * (uReal . r) ) )
:: thesis: ( ( o = 0_No or ex xL being Surreal ex r being positive Real st
( xL in L_ x & o = (No_omega^ xL) * (uReal . r) ) ) implies o in L_ (No_omega^ x) )
proof
assume ( o in L_ (No_omega^ x) & not o = 0_No ) ; :: thesis: ex xL being Surreal ex r being positive Real st
( xL in L_ x & o = (No_omega^ xL) * (uReal . r) )

then consider xL being Surreal, r being positive Real such that
A1: ( xL in L_ x & o = (No_omega^ xL) *' (uReal . r) ) by Lm4;
o = (No_omega^ xL) * (uReal . r) by A1;
hence ex xL being Surreal ex r being positive Real st
( xL in L_ x & o = (No_omega^ xL) * (uReal . r) )
by A1; :: thesis: verum
end;
assume ( o = 0_No or ex xL being Surreal ex r being positive Real st
( xL in L_ x & o = (No_omega^ xL) * (uReal . r) ) )
; :: thesis: o in L_ (No_omega^ x)
per cases then ( o = 0_No or ex xL being Surreal ex r being positive Real st
( xL in L_ x & o = (No_omega^ xL) * (uReal . r) ) )
;
suppose o = 0_No ; :: thesis: o in L_ (No_omega^ x)
hence o in L_ (No_omega^ x) by Lm4; :: thesis: verum
end;
suppose ex xL being Surreal ex r being positive Real st
( xL in L_ x & o = (No_omega^ xL) * (uReal . r) )
; :: thesis: o in L_ (No_omega^ x)
hence o in L_ (No_omega^ x) by Lm4; :: thesis: verum
end;
end;
end;

theorem Th23: :: SURREALC:23
for o being object
for x being Surreal holds
( o in R_ (No_omega^ x) iff ex xR being Surreal ex r being positive Real st
( xR in R_ x & o = (No_omega^ xR) * (uReal . r) ) )
proof
let o be object ; :: thesis: for x being Surreal holds
( o in R_ (No_omega^ x) iff ex xR being Surreal ex r being positive Real st
( xR in R_ x & o = (No_omega^ xR) * (uReal . r) ) )

let x be Surreal; :: thesis: ( o in R_ (No_omega^ x) iff ex xR being Surreal ex r being positive Real st
( xR in R_ x & o = (No_omega^ xR) * (uReal . r) ) )

thus ( o in R_ (No_omega^ x) implies ex xR being Surreal ex r being positive Real st
( xR in R_ x & o = (No_omega^ xR) * (uReal . r) ) )
:: thesis: ( ex xR being Surreal ex r being positive Real st
( xR in R_ x & o = (No_omega^ xR) * (uReal . r) ) implies o in R_ (No_omega^ x) )
proof
assume o in R_ (No_omega^ x) ; :: thesis: ex xR being Surreal ex r being positive Real st
( xR in R_ x & o = (No_omega^ xR) * (uReal . r) )

then consider xR being Surreal, r being positive Real such that
A1: ( xR in R_ x & o = (No_omega^ xR) *' (uReal . r) ) by Lm4;
o = (No_omega^ xR) * (uReal . r) by A1;
hence ex xR being Surreal ex r being positive Real st
( xR in R_ x & o = (No_omega^ xR) * (uReal . r) )
by A1; :: thesis: verum
end;
thus ( ex xR being Surreal ex r being positive Real st
( xR in R_ x & o = (No_omega^ xR) * (uReal . r) ) implies o in R_ (No_omega^ x) )
by Lm4; :: thesis: verum
end;

theorem :: SURREALC:24
for x, y being Surreal st x <= y holds
No_omega^ x <= No_omega^ y by Lm5;

theorem Th25: :: SURREALC:25
for x, y being Surreal st x < y holds
No_omega^ x infinitely< No_omega^ y by Lm5;

theorem Th26: :: SURREALC:26
No_omega^ 0_No = 1_No
proof
set O = No_omega^ 0_No;
A1: 0_No in L_ (No_omega^ 0_No) by Th22;
L_ (No_omega^ 0_No) c= {0_No}
proof
let o be object ; :: according to TARSKI:def 3 :: thesis: ( not o in L_ (No_omega^ 0_No) or o in {0_No} )
assume A2: ( o in L_ (No_omega^ 0_No) & not o in {0_No} ) ; :: thesis: contradiction
o <> 0_No by A2, TARSKI:def 1;
then ex xL being Surreal ex r being positive Real st
( xL in L_ 0_No & o = (No_omega^ xL) * (uReal . r) )
by A2, Th22;
hence contradiction ; :: thesis: verum
end;
then A3: L_ (No_omega^ 0_No) = {0_No} by A1, ZFMISC_1:33;
R_ (No_omega^ 0_No) = {}
proof
assume R_ (No_omega^ 0_No) <> {} ; :: thesis: contradiction
then consider o being object such that
A4: o in R_ (No_omega^ 0_No) by XBOOLE_0:def 1;
ex xR being Surreal ex r being positive Real st
( xR in R_ 0_No & o = (No_omega^ xR) * (uReal . r) )
by A4, Th23;
hence contradiction ; :: thesis: verum
end;
hence No_omega^ 0_No = 1_No by A3; :: thesis: verum
end;

theorem Th27: :: SURREALC:27
for x, y being Surreal holds (No_omega^ x) * (No_omega^ y) == No_omega^ (x + y)
proof
let x, y be Surreal; :: thesis: (No_omega^ x) * (No_omega^ y) == No_omega^ (x + y)
defpred S1[ Ordinal] means for x, y being Surreal st (born x) (+) (born y) = $1 holds
(No_omega^ x) * (No_omega^ y) == No_omega^ (x + y);
A1: for D being Ordinal st ( for C being Ordinal st C in D holds
S1[C] ) holds
S1[D]
proof
let D be Ordinal; :: thesis: ( ( for C being Ordinal st C in D holds
S1[C] ) implies S1[D] )

assume A2: for C being Ordinal st C in D holds
S1[C]
; :: thesis: S1[D]
let x, y be Surreal; :: thesis: ( (born x) (+) (born y) = D implies (No_omega^ x) * (No_omega^ y) == No_omega^ (x + y) )
assume A3: (born x) (+) (born y) = D ; :: thesis: (No_omega^ x) * (No_omega^ y) == No_omega^ (x + y)
set Nx = No_omega^ x;
set Ny = No_omega^ y;
set xy = x + y;
set Nxy = No_omega^ (x + y);
A4: (No_omega^ x) * (No_omega^ y) = [((comp ((L_ (No_omega^ x)),(No_omega^ x),(No_omega^ y),(L_ (No_omega^ y)))) \/ (comp ((R_ (No_omega^ x)),(No_omega^ x),(No_omega^ y),(R_ (No_omega^ y))))),((comp ((L_ (No_omega^ x)),(No_omega^ x),(No_omega^ y),(R_ (No_omega^ y)))) \/ (comp ((R_ (No_omega^ x)),(No_omega^ x),(No_omega^ y),(L_ (No_omega^ y)))))] by SURREALR:50;
A5: x + y = [(((L_ x) ++ {y}) \/ ({x} ++ (L_ y))),(((R_ x) ++ {y}) \/ ({x} ++ (R_ y)))] by SURREALR:28;
A6: for a being Surreal st a in L_ ((No_omega^ x) * (No_omega^ y)) holds
ex b being Surreal st
( b in L_ (No_omega^ (x + y)) & a <= b )
proof
let a be Surreal; :: thesis: ( a in L_ ((No_omega^ x) * (No_omega^ y)) implies ex b being Surreal st
( b in L_ (No_omega^ (x + y)) & a <= b ) )

assume A7: a in L_ ((No_omega^ x) * (No_omega^ y)) ; :: thesis: ex b being Surreal st
( b in L_ (No_omega^ (x + y)) & a <= b )

per cases ( a in comp ((R_ (No_omega^ x)),(No_omega^ x),(No_omega^ y),(R_ (No_omega^ y))) or a in comp ((L_ (No_omega^ x)),(No_omega^ x),(No_omega^ y),(L_ (No_omega^ y))) ) by A7, A4, XBOOLE_0:def 3;
suppose a in comp ((R_ (No_omega^ x)),(No_omega^ x),(No_omega^ y),(R_ (No_omega^ y))) ; :: thesis: ex b being Surreal st
( b in L_ (No_omega^ (x + y)) & a <= b )

then consider x1, y1 being Surreal such that
A8: ( a = ((x1 * (No_omega^ y)) + ((No_omega^ x) * y1)) - (x1 * y1) & x1 in R_ (No_omega^ x) & y1 in R_ (No_omega^ y) ) by SURREALR:def 15;
consider xL being Surreal, r being positive Real such that
A9: ( xL in R_ x & x1 = (No_omega^ xL) * (uReal . r) ) by A8, Th23;
consider yL being Surreal, s being positive Real such that
A10: ( yL in R_ y & y1 = (No_omega^ yL) * (uReal . s) ) by A8, Th23;
A11: 0_No < y1 by A10, SURREALI:def 8;
A12: 0_No < x1 by A9, SURREALI:def 8;
set H = uReal . (1 / 2);
(1 / 2) + (1 / 2) = 1 ;
then ( ((x1 * y1) * (uReal . (1 / 2))) + ((x1 * y1) * (uReal . (1 / 2))) == (x1 * y1) * ((uReal . (1 / 2)) + (uReal . (1 / 2))) & (x1 * y1) * ((uReal . (1 / 2)) + (uReal . (1 / 2))) == (x1 * y1) * 1_No & (x1 * y1) * 1_No = x1 * y1 ) by SURREALN:55, SURREALN:48, SURREALR:51, SURREALR:67;
then A13: ((x1 * y1) * (uReal . (1 / 2))) + ((x1 * y1) * (uReal . (1 / 2))) == x1 * y1 by SURREALO:4;
( x in {x} & {x} << R_ x ) by TARSKI:def 1, SURREALO:11;
then No_omega^ x infinitely< No_omega^ xL by A9, Th25;
then No_omega^ x infinitely< x1 by A9, Th13;
then No_omega^ x infinitely< (uReal . (1 / 2)) * x1 by Th13;
then No_omega^ x < (uReal . (1 / 2)) * x1 by Th9;
then ( (No_omega^ x) * y1 <= ((uReal . (1 / 2)) * x1) * y1 & ((uReal . (1 / 2)) * x1) * y1 == (uReal . (1 / 2)) * (x1 * y1) ) by SURREALR:70, A11, SURREALR:69;
then A14: (No_omega^ x) * y1 <= (uReal . (1 / 2)) * (x1 * y1) by SURREALO:4;
( y in {y} & {y} << R_ y ) by TARSKI:def 1, SURREALO:11;
then No_omega^ y infinitely< No_omega^ yL by A10, Th25;
then No_omega^ y infinitely< y1 by Th13, A10;
then No_omega^ y infinitely< (uReal . (1 / 2)) * y1 by Th13;
then No_omega^ y < (uReal . (1 / 2)) * y1 by Th9;
then ( (No_omega^ y) * x1 <= ((uReal . (1 / 2)) * y1) * x1 & ((uReal . (1 / 2)) * y1) * x1 == (uReal . (1 / 2)) * (x1 * y1) ) by SURREALR:70, A12, SURREALR:69;
then (No_omega^ y) * x1 <= (uReal . (1 / 2)) * (x1 * y1) by SURREALO:4;
then ((No_omega^ x) * y1) + ((No_omega^ y) * x1) <= ((uReal . (1 / 2)) * (x1 * y1)) + ((uReal . (1 / 2)) * (x1 * y1)) by SURREALR:43, A14;
then ((No_omega^ x) * y1) + ((No_omega^ y) * x1) <= x1 * y1 by A13, SURREALO:4;
then ( a <= 0_No & 0_No in L_ (No_omega^ (x + y)) ) by A8, Th22, SURREALR:45;
hence ex b being Surreal st
( b in L_ (No_omega^ (x + y)) & a <= b )
; :: thesis: verum
end;
suppose a in comp ((L_ (No_omega^ x)),(No_omega^ x),(No_omega^ y),(L_ (No_omega^ y))) ; :: thesis: ex b being Surreal st
( b in L_ (No_omega^ (x + y)) & a <= b )

then consider x1, y1 being Surreal such that
A15: ( a = ((x1 * (No_omega^ y)) + ((No_omega^ x) * y1)) - (x1 * y1) & x1 in L_ (No_omega^ x) & y1 in L_ (No_omega^ y) ) by SURREALR:def 15;
per cases ( x1 = 0_No or ex xL being Surreal ex r being positive Real st
( xL in L_ x & x1 = (No_omega^ xL) * (uReal . r) ) )
by A15, Th22;
suppose A16: x1 = 0_No ; :: thesis: ex b being Surreal st
( b in L_ (No_omega^ (x + y)) & a <= b )

per cases ( y1 = 0_No or ex yL being Surreal ex s being positive Real st
( yL in L_ y & y1 = (No_omega^ yL) * (uReal . s) ) )
by A15, Th22;
suppose y1 = 0_No ; :: thesis: ex b being Surreal st
( b in L_ (No_omega^ (x + y)) & a <= b )

then a in L_ (No_omega^ (x + y)) by Th22, A16, A15;
hence ex b being Surreal st
( b in L_ (No_omega^ (x + y)) & a <= b )
; :: thesis: verum
end;
suppose ex yL being Surreal ex s being positive Real st
( yL in L_ y & y1 = (No_omega^ yL) * (uReal . s) )
; :: thesis: ex b being Surreal st
( b in L_ (No_omega^ (x + y)) & a <= b )

then consider yL being Surreal, s being positive Real such that
A17: ( yL in L_ y & y1 = (No_omega^ yL) * (uReal . s) ) ;
yL in (L_ y) \/ (R_ y) by A17, XBOOLE_0:def 3;
then A18: (born x) (+) (born yL) in (born x) (+) (born y) by ORDINAL7:94, SURREALO:1;
a19: ( a == ((No_omega^ x) * (No_omega^ yL)) * (uReal . s) & ((No_omega^ x) * (No_omega^ yL)) * (uReal . s) == (No_omega^ (x + yL)) * (uReal . s) ) by A17, A18, A3, A2, SURREALR:69, SURREALR:54, A15, A16;
x in {x} by TARSKI:def 1;
then x + yL in {x} ++ (L_ y) by A17, SURREALR:def 8;
then x + yL in L_ (x + y) by A5, XBOOLE_0:def 3;
then (No_omega^ (x + yL)) * (uReal . s) in L_ (No_omega^ (x + y)) by Th22;
hence ex b being Surreal st
( b in L_ (No_omega^ (x + y)) & a <= b )
by a19, SURREALO:9; :: thesis: verum
end;
end;
end;
suppose ex xL being Surreal ex r being positive Real st
( xL in L_ x & x1 = (No_omega^ xL) * (uReal . r) )
; :: thesis: ex b being Surreal st
( b in L_ (No_omega^ (x + y)) & a <= b )

then consider xL being Surreal, r being positive Real such that
A20: ( xL in L_ x & x1 = (No_omega^ xL) * (uReal . r) ) ;
A21: xL in (L_ x) \/ (R_ x) by A20, XBOOLE_0:def 3;
then born xL in born x by SURREALO:1;
then A22: (No_omega^ xL) * (No_omega^ y) == No_omega^ (xL + y) by A3, A2, ORDINAL7:94;
A23: ( ((uReal . r) * (No_omega^ xL)) * (No_omega^ y) == (uReal . r) * ((No_omega^ xL) * (No_omega^ y)) & (uReal . r) * ((No_omega^ xL) * (No_omega^ y)) == (uReal . r) * (No_omega^ (xL + y)) ) by A22, SURREALR:69, SURREALR:54;
then A24: ((uReal . r) * (No_omega^ xL)) * (No_omega^ y) == (uReal . r) * (No_omega^ (xL + y)) by SURREALO:9;
per cases ( y1 = 0_No or ex yL being Surreal ex s being positive Real st
( yL in L_ y & y1 = (No_omega^ yL) * (uReal . s) ) )
by A15, Th22;
suppose A25: y1 = 0_No ; :: thesis: ex b being Surreal st
( b in L_ (No_omega^ (x + y)) & a <= b )

y in {y} by TARSKI:def 1;
then xL + y in (L_ x) ++ {y} by A20, SURREALR:def 8;
then xL + y in L_ (x + y) by A5, XBOOLE_0:def 3;
then (No_omega^ (xL + y)) * (uReal . r) in L_ (No_omega^ (x + y)) by Th22;
hence ex b being Surreal st
( b in L_ (No_omega^ (x + y)) & a <= b )
by A20, A23, SURREALO:9, A15, A25; :: thesis: verum
end;
suppose ex yL being Surreal ex s being positive Real st
( yL in L_ y & y1 = (No_omega^ yL) * (uReal . s) )
; :: thesis: ex b being Surreal st
( b in L_ (No_omega^ (x + y)) & a <= b )

then consider yL being Surreal, s being positive Real such that
A27: ( yL in L_ y & y1 = (No_omega^ yL) * (uReal . s) ) ;
yL in (L_ y) \/ (R_ y) by A27, XBOOLE_0:def 3;
then ( (born xL) (+) (born yL) in (born x) (+) (born yL) & (born x) (+) (born yL) in (born x) (+) (born y) ) by A21, SURREALO:1, ORDINAL7:94;
then ( (No_omega^ x) * y1 == ((No_omega^ x) * (No_omega^ yL)) * (uReal . s) & ((No_omega^ x) * (No_omega^ yL)) * (uReal . s) == (No_omega^ (x + yL)) * (uReal . s) ) by A3, A2, A27, SURREALR:69, SURREALR:54;
then A28: (No_omega^ x) * y1 == (No_omega^ (x + yL)) * (uReal . s) by SURREALO:9;
A29: ( - (x1 * y1) <= - 0_No & - 0_No = 0_No ) by A20, A27, SURREALI:def 8, SURREALR:10;
x in {x} by TARSKI:def 1;
then x + yL in {x} ++ (L_ y) by A27, SURREALR:def 8;
then A30: x + yL in L_ (x + y) by A5, XBOOLE_0:def 3;
y in {y} by TARSKI:def 1;
then xL + y in (L_ x) ++ {y} by A20, SURREALR:def 8;
then A31: xL + y in L_ (x + y) by A5, XBOOLE_0:def 3;
per cases ( xL + y <= x + yL or x + yL <= xL + y ) ;
suppose xL + y <= x + yL ; :: thesis: ex b being Surreal st
( b in L_ (No_omega^ (x + y)) & a <= b )

then A32: No_omega^ (xL + y) <= No_omega^ (x + yL) by Lm5;
0_No <= uReal . r by SURREALI:def 8;
then (No_omega^ (xL + y)) * (uReal . r) <= (No_omega^ (x + yL)) * (uReal . r) by A32, SURREALR:75;
then x1 * (No_omega^ y) <= (No_omega^ (x + yL)) * (uReal . r) by A20, A24, SURREALO:4;
then ( (x1 * (No_omega^ y)) + ((No_omega^ x) * y1) <= ((No_omega^ (x + yL)) * (uReal . r)) + ((No_omega^ (x + yL)) * (uReal . s)) & ((No_omega^ (x + yL)) * (uReal . r)) + ((No_omega^ (x + yL)) * (uReal . s)) == (No_omega^ (x + yL)) * ((uReal . r) + (uReal . s)) ) by A28, SURREALR:43, SURREALR:67;
then (x1 * (No_omega^ y)) + ((No_omega^ x) * y1) <= (No_omega^ (x + yL)) * ((uReal . r) + (uReal . s)) by SURREALO:4;
then A33: ( ((x1 * (No_omega^ y)) + ((No_omega^ x) * y1)) + (- (x1 * y1)) <= ((No_omega^ (x + yL)) * ((uReal . r) + (uReal . s))) + 0_No & ((No_omega^ (x + yL)) * ((uReal . r) + (uReal . s))) + 0_No = (No_omega^ (x + yL)) * ((uReal . r) + (uReal . s)) ) by A29, SURREALR:43;
A34: (No_omega^ (x + yL)) * ((uReal . r) + (uReal . s)) == (No_omega^ (x + yL)) * (uReal . (r + s)) by SURREALR:54, SURREALN:55;
(No_omega^ (x + yL)) * (uReal . (r + s)) in L_ (No_omega^ (x + y)) by A30, Th22;
hence ex b being Surreal st
( b in L_ (No_omega^ (x + y)) & a <= b )
by A34, A33, A15, SURREALO:4; :: thesis: verum
end;
suppose x + yL <= xL + y ; :: thesis: ex b being Surreal st
( b in L_ (No_omega^ (x + y)) & a <= b )

then A35: No_omega^ (x + yL) <= No_omega^ (xL + y) by Lm5;
0_No <= uReal . s by SURREALI:def 8;
then (No_omega^ (x + yL)) * (uReal . s) <= (No_omega^ (xL + y)) * (uReal . s) by A35, SURREALR:75;
then (No_omega^ x) * y1 <= (No_omega^ (xL + y)) * (uReal . s) by A28, SURREALO:4;
then ( (x1 * (No_omega^ y)) + ((No_omega^ x) * y1) <= ((No_omega^ (xL + y)) * (uReal . r)) + ((No_omega^ (xL + y)) * (uReal . s)) & ((No_omega^ (xL + y)) * (uReal . r)) + ((No_omega^ (xL + y)) * (uReal . s)) == (No_omega^ (xL + y)) * ((uReal . r) + (uReal . s)) ) by A20, A24, SURREALR:43, SURREALR:67;
then (x1 * (No_omega^ y)) + ((No_omega^ x) * y1) <= (No_omega^ (xL + y)) * ((uReal . r) + (uReal . s)) by SURREALO:4;
then A36: ( ((x1 * (No_omega^ y)) + ((No_omega^ x) * y1)) + (- (x1 * y1)) <= ((No_omega^ (xL + y)) * ((uReal . r) + (uReal . s))) + 0_No & ((No_omega^ (xL + y)) * ((uReal . r) + (uReal . s))) + 0_No = (No_omega^ (xL + y)) * ((uReal . r) + (uReal . s)) ) by A29, SURREALR:43;
A37: (No_omega^ (xL + y)) * ((uReal . r) + (uReal . s)) == (No_omega^ (xL + y)) * (uReal . (r + s)) by SURREALR:54, SURREALN:55;
take Y2 = (No_omega^ (xL + y)) * (uReal . (r + s)); :: thesis: ( Y2 in L_ (No_omega^ (x + y)) & a <= Y2 )
thus ( Y2 in L_ (No_omega^ (x + y)) & a <= Y2 ) by A37, A31, Th22, A36, A15, SURREALO:4; :: thesis: verum
end;
end;
end;
end;
end;
end;
end;
end;
end;
A38: for a being Surreal st a in R_ (No_omega^ (x + y)) holds
ex b being Surreal st
( b in R_ ((No_omega^ x) * (No_omega^ y)) & b <= a )
proof
let a be Surreal; :: thesis: ( a in R_ (No_omega^ (x + y)) implies ex b being Surreal st
( b in R_ ((No_omega^ x) * (No_omega^ y)) & b <= a ) )

assume A39: a in R_ (No_omega^ (x + y)) ; :: thesis: ex b being Surreal st
( b in R_ ((No_omega^ x) * (No_omega^ y)) & b <= a )

consider xR being Surreal, r being positive Real such that
A40: ( xR in R_ (x + y) & a = (No_omega^ xR) * (uReal . r) ) by A39, Th23;
per cases ( xR in (R_ x) ++ {y} or xR in {x} ++ (R_ y) ) by A40, A5, XBOOLE_0:def 3;
suppose xR in (R_ x) ++ {y} ; :: thesis: ex b being Surreal st
( b in R_ ((No_omega^ x) * (No_omega^ y)) & b <= a )

then consider x1, y1 being Surreal such that
A41: ( x1 in R_ x & y1 in {y} & xR = x1 + y1 ) by SURREALR:def 8;
set R = (No_omega^ x1) * (uReal . r);
set A = ((((No_omega^ x1) * (uReal . r)) * (No_omega^ y)) + ((No_omega^ x) * 0_No)) - (((No_omega^ x1) * (uReal . r)) * 0_No);
A42: (No_omega^ x1) * (uReal . r) in R_ (No_omega^ x) by A41, Th23;
0_No in L_ (No_omega^ y) by Th22;
then ((((No_omega^ x1) * (uReal . r)) * (No_omega^ y)) + ((No_omega^ x) * 0_No)) - (((No_omega^ x1) * (uReal . r)) * 0_No) in comp ((R_ (No_omega^ x)),(No_omega^ x),(No_omega^ y),(L_ (No_omega^ y))) by A42, SURREALR:def 15;
then A43: ((((No_omega^ x1) * (uReal . r)) * (No_omega^ y)) + ((No_omega^ x) * 0_No)) - (((No_omega^ x1) * (uReal . r)) * 0_No) in R_ ((No_omega^ x) * (No_omega^ y)) by XBOOLE_0:def 3, A4;
A44: a = (No_omega^ (x1 + y)) * (uReal . r) by A40, A41, TARSKI:def 1;
x1 in (L_ x) \/ (R_ x) by A41, XBOOLE_0:def 3;
then (born x1) (+) (born y) in (born x) (+) (born y) by ORDINAL7:94, SURREALO:1;
then ( a == ((No_omega^ y) * (No_omega^ x1)) * (uReal . r) & ((No_omega^ y) * (No_omega^ x1)) * (uReal . r) == (No_omega^ y) * ((No_omega^ x1) * (uReal . r)) ) by A3, A2, SURREALR:54, A44, SURREALR:69;
hence ex b being Surreal st
( b in R_ ((No_omega^ x) * (No_omega^ y)) & b <= a )
by A43, SURREALO:4; :: thesis: verum
end;
suppose xR in {x} ++ (R_ y) ; :: thesis: ex b being Surreal st
( b in R_ ((No_omega^ x) * (No_omega^ y)) & b <= a )

then consider x1, y1 being Surreal such that
A45: ( x1 in {x} & y1 in R_ y & xR = x1 + y1 ) by SURREALR:def 8;
set R = (No_omega^ y1) * (uReal . r);
set A = ((0_No * (No_omega^ y)) + ((No_omega^ x) * ((No_omega^ y1) * (uReal . r)))) - (0_No * ((No_omega^ y1) * (uReal . r)));
A46: (No_omega^ y1) * (uReal . r) in R_ (No_omega^ y) by A45, Th23;
0_No in L_ (No_omega^ x) by Th22;
then ((0_No * (No_omega^ y)) + ((No_omega^ x) * ((No_omega^ y1) * (uReal . r)))) - (0_No * ((No_omega^ y1) * (uReal . r))) in comp ((L_ (No_omega^ x)),(No_omega^ x),(No_omega^ y),(R_ (No_omega^ y))) by A46, SURREALR:def 15;
then A47: ((0_No * (No_omega^ y)) + ((No_omega^ x) * ((No_omega^ y1) * (uReal . r)))) - (0_No * ((No_omega^ y1) * (uReal . r))) in R_ ((No_omega^ x) * (No_omega^ y)) by XBOOLE_0:def 3, A4;
A48: a = (No_omega^ (x + y1)) * (uReal . r) by A40, A45, TARSKI:def 1;
y1 in (L_ y) \/ (R_ y) by A45, XBOOLE_0:def 3;
then (born x) (+) (born y1) in (born x) (+) (born y) by ORDINAL7:94, SURREALO:1;
then ( a == ((No_omega^ x) * (No_omega^ y1)) * (uReal . r) & ((No_omega^ x) * (No_omega^ y1)) * (uReal . r) == (No_omega^ x) * ((No_omega^ y1) * (uReal . r)) ) by A3, A2, SURREALR:54, A48, SURREALR:69;
hence ex b being Surreal st
( b in R_ ((No_omega^ x) * (No_omega^ y)) & b <= a )
by A47, SURREALO:4; :: thesis: verum
end;
end;
end;
A49: ( (No_omega^ x) * (No_omega^ y) = [(L_ ((No_omega^ x) * (No_omega^ y))),(R_ ((No_omega^ x) * (No_omega^ y)))] & No_omega^ (x + y) = [(L_ (No_omega^ (x + y))),(R_ (No_omega^ (x + y)))] ) ;
A50: for a being Surreal st a in L_ (No_omega^ (x + y)) holds
ex b being Surreal st
( b in L_ ((No_omega^ x) * (No_omega^ y)) & a <= b )
proof
let a be Surreal; :: thesis: ( a in L_ (No_omega^ (x + y)) implies ex b being Surreal st
( b in L_ ((No_omega^ x) * (No_omega^ y)) & a <= b ) )

assume A51: a in L_ (No_omega^ (x + y)) ; :: thesis: ex b being Surreal st
( b in L_ ((No_omega^ x) * (No_omega^ y)) & a <= b )

per cases ( a = 0_No or not a = 0_No ) ;
suppose A52: a = 0_No ; :: thesis: ex b being Surreal st
( b in L_ ((No_omega^ x) * (No_omega^ y)) & a <= b )

set A = ((0_No * (No_omega^ y)) + ((No_omega^ x) * 0_No)) - (0_No * 0_No);
( 0_No in L_ (No_omega^ x) & 0_No in L_ (No_omega^ y) ) by Th22;
then ((0_No * (No_omega^ y)) + ((No_omega^ x) * 0_No)) - (0_No * 0_No) in comp ((L_ (No_omega^ x)),(No_omega^ x),(No_omega^ y),(L_ (No_omega^ y))) by SURREALR:def 15;
then ((0_No * (No_omega^ y)) + ((No_omega^ x) * 0_No)) - (0_No * 0_No) in L_ ((No_omega^ x) * (No_omega^ y)) by XBOOLE_0:def 3, A4;
hence ex b being Surreal st
( b in L_ ((No_omega^ x) * (No_omega^ y)) & a <= b )
by A52; :: thesis: verum
end;
suppose not a = 0_No ; :: thesis: ex b being Surreal st
( b in L_ ((No_omega^ x) * (No_omega^ y)) & a <= b )

then consider xR being Surreal, r being positive Real such that
A53: ( xR in L_ (x + y) & a = (No_omega^ xR) * (uReal . r) ) by A51, Th22;
per cases ( xR in (L_ x) ++ {y} or xR in {x} ++ (L_ y) ) by A53, A5, XBOOLE_0:def 3;
suppose xR in (L_ x) ++ {y} ; :: thesis: ex b being Surreal st
( b in L_ ((No_omega^ x) * (No_omega^ y)) & a <= b )

then consider x1, y1 being Surreal such that
A54: ( x1 in L_ x & y1 in {y} & xR = x1 + y1 ) by SURREALR:def 8;
set R = (No_omega^ x1) * (uReal . r);
set A = ((((No_omega^ x1) * (uReal . r)) * (No_omega^ y)) + ((No_omega^ x) * 0_No)) - (((No_omega^ x1) * (uReal . r)) * 0_No);
A55: (No_omega^ x1) * (uReal . r) in L_ (No_omega^ x) by A54, Th22;
0_No in L_ (No_omega^ y) by Th22;
then ((((No_omega^ x1) * (uReal . r)) * (No_omega^ y)) + ((No_omega^ x) * 0_No)) - (((No_omega^ x1) * (uReal . r)) * 0_No) in comp ((L_ (No_omega^ x)),(No_omega^ x),(No_omega^ y),(L_ (No_omega^ y))) by A55, SURREALR:def 15;
then A56: ((((No_omega^ x1) * (uReal . r)) * (No_omega^ y)) + ((No_omega^ x) * 0_No)) - (((No_omega^ x1) * (uReal . r)) * 0_No) in L_ ((No_omega^ x) * (No_omega^ y)) by XBOOLE_0:def 3, A4;
A57: a = (No_omega^ (x1 + y)) * (uReal . r) by A54, TARSKI:def 1, A53;
x1 in (L_ x) \/ (R_ x) by A54, XBOOLE_0:def 3;
then (born x1) (+) (born y) in (born x) (+) (born y) by ORDINAL7:94, SURREALO:1;
then ( a == ((No_omega^ y) * (No_omega^ x1)) * (uReal . r) & ((No_omega^ y) * (No_omega^ x1)) * (uReal . r) == (No_omega^ y) * ((No_omega^ x1) * (uReal . r)) ) by A3, A2, SURREALR:54, A57, SURREALR:69;
hence ex b being Surreal st
( b in L_ ((No_omega^ x) * (No_omega^ y)) & a <= b )
by A56, SURREALO:4; :: thesis: verum
end;
suppose xR in {x} ++ (L_ y) ; :: thesis: ex b being Surreal st
( b in L_ ((No_omega^ x) * (No_omega^ y)) & a <= b )

then consider x1, y1 being Surreal such that
A58: ( x1 in {x} & y1 in L_ y & xR = x1 + y1 ) by SURREALR:def 8;
A59: x1 = x by A58, TARSKI:def 1;
set R = (No_omega^ y1) * (uReal . r);
set A = ((0_No * (No_omega^ y)) + ((No_omega^ x) * ((No_omega^ y1) * (uReal . r)))) - (0_No * ((No_omega^ y1) * (uReal . r)));
A60: (No_omega^ y1) * (uReal . r) in L_ (No_omega^ y) by A58, Th22;
0_No in L_ (No_omega^ x) by Th22;
then ((0_No * (No_omega^ y)) + ((No_omega^ x) * ((No_omega^ y1) * (uReal . r)))) - (0_No * ((No_omega^ y1) * (uReal . r))) in comp ((L_ (No_omega^ x)),(No_omega^ x),(No_omega^ y),(L_ (No_omega^ y))) by A60, SURREALR:def 15;
then A61: ((0_No * (No_omega^ y)) + ((No_omega^ x) * ((No_omega^ y1) * (uReal . r)))) - (0_No * ((No_omega^ y1) * (uReal . r))) in L_ ((No_omega^ x) * (No_omega^ y)) by XBOOLE_0:def 3, A4;
y1 in (L_ y) \/ (R_ y) by A58, XBOOLE_0:def 3;
then (born x) (+) (born y1) in (born x) (+) (born y) by ORDINAL7:94, SURREALO:1;
then ( a == ((No_omega^ x) * (No_omega^ y1)) * (uReal . r) & ((No_omega^ x) * (No_omega^ y1)) * (uReal . r) == (No_omega^ x) * ((No_omega^ y1) * (uReal . r)) ) by A3, A2, SURREALR:54, A53, A58, A59, SURREALR:69;
hence ex b being Surreal st
( b in L_ ((No_omega^ x) * (No_omega^ y)) & a <= b )
by A61, SURREALO:4; :: thesis: verum
end;
end;
end;
end;
end;
A62: for x, y, a being Surreal st (born x) (+) (born y) = D & a in comp ((L_ (No_omega^ x)),(No_omega^ x),(No_omega^ y),(R_ (No_omega^ y))) holds
ex b being Surreal st
( b in R_ (No_omega^ (x + y)) & b <= a )
proof
let x, y, a be Surreal; :: thesis: ( (born x) (+) (born y) = D & a in comp ((L_ (No_omega^ x)),(No_omega^ x),(No_omega^ y),(R_ (No_omega^ y))) implies ex b being Surreal st
( b in R_ (No_omega^ (x + y)) & b <= a ) )

assume A63: (born x) (+) (born y) = D ; :: thesis: ( not a in comp ((L_ (No_omega^ x)),(No_omega^ x),(No_omega^ y),(R_ (No_omega^ y))) or ex b being Surreal st
( b in R_ (No_omega^ (x + y)) & b <= a ) )

set Nx = No_omega^ x;
set Ny = No_omega^ y;
assume a in comp ((L_ (No_omega^ x)),(No_omega^ x),(No_omega^ y),(R_ (No_omega^ y))) ; :: thesis: ex b being Surreal st
( b in R_ (No_omega^ (x + y)) & b <= a )

then consider x1, y1 being Surreal such that
A64: ( a = ((x1 * (No_omega^ y)) + ((No_omega^ x) * y1)) - (x1 * y1) & x1 in L_ (No_omega^ x) & y1 in R_ (No_omega^ y) ) by SURREALR:def 15;
A65: x + y = [(((L_ x) ++ {y}) \/ ({x} ++ (L_ y))),(((R_ x) ++ {y}) \/ ({x} ++ (R_ y)))] by SURREALR:28;
consider yL being Surreal, s being positive Real such that
A66: ( yL in R_ y & y1 = (No_omega^ yL) * (uReal . s) ) by A64, Th23;
yL in (L_ y) \/ (R_ y) by A66, XBOOLE_0:def 3;
then A67: (born x) (+) (born yL) in (born x) (+) (born y) by ORDINAL7:94, SURREALO:1;
per cases ( x1 = 0_No or x1 <> 0_No ) ;
suppose A68: x1 = 0_No ; :: thesis: ex b being Surreal st
( b in R_ (No_omega^ (x + y)) & b <= a )

( a == ((No_omega^ x) * (No_omega^ yL)) * (uReal . s) & ((No_omega^ x) * (No_omega^ yL)) * (uReal . s) == (No_omega^ (x + yL)) * (uReal . s) ) by A66, A64, A68, A67, A63, A2, SURREALR:69, SURREALR:54;
then A69: a == (No_omega^ (x + yL)) * (uReal . s) by SURREALO:9;
x in {x} by TARSKI:def 1;
then x + yL in {x} ++ (R_ y) by A66, SURREALR:def 8;
then x + yL in R_ (x + y) by A65, XBOOLE_0:def 3;
hence ex b being Surreal st
( b in R_ (No_omega^ (x + y)) & b <= a )
by A69, Th23; :: thesis: verum
end;
suppose x1 <> 0_No ; :: thesis: ex b being Surreal st
( b in R_ (No_omega^ (x + y)) & b <= a )

then consider xL being Surreal, r being positive Real such that
A70: ( xL in L_ x & x1 = (No_omega^ xL) * (uReal . r) ) by A64, Th22;
( (No_omega^ x) * y1 == ((No_omega^ x) * (No_omega^ yL)) * (uReal . s) & ((No_omega^ x) * (No_omega^ yL)) * (uReal . s) == (No_omega^ (x + yL)) * (uReal . s) ) by A66, A67, A63, A2, SURREALR:69, SURREALR:54;
then A71: (No_omega^ x) * y1 == (No_omega^ (x + yL)) * (uReal . s) by SURREALO:9;
x in {x} by TARSKI:def 1;
then x + yL in {x} ++ (R_ y) by A66, SURREALR:def 8;
then A72: x + yL in R_ (x + y) by A65, XBOOLE_0:def 3;
A73: 0_No <= y1 by A66, SURREALI:def 8;
A74: 0_No <= x1 * (No_omega^ y) by A70, SURREALI:def 8;
set H = uReal . (1 / 2);
(1 / 2) + (1 / 2) = 1 ;
then ( (((No_omega^ x) * y1) * (uReal . (1 / 2))) + (((No_omega^ x) * y1) * (uReal . (1 / 2))) == ((No_omega^ x) * y1) * ((uReal . (1 / 2)) + (uReal . (1 / 2))) & ((No_omega^ x) * y1) * ((uReal . (1 / 2)) + (uReal . (1 / 2))) == ((No_omega^ x) * y1) * 1_No & ((No_omega^ x) * y1) * 1_No = (No_omega^ x) * y1 ) by SURREALN:55, SURREALN:48, SURREALR:51, SURREALR:67;
then (((No_omega^ x) * y1) * (uReal . (1 / 2))) + (((No_omega^ x) * y1) * (uReal . (1 / 2))) == (No_omega^ x) * y1 by SURREALO:4;
then A75: (((uReal . (1 / 2)) * ((No_omega^ x) * y1)) + ((uReal . (1 / 2)) * ((No_omega^ x) * y1))) + (- (x1 * y1)) == ((No_omega^ x) * y1) + (- (x1 * y1)) by SURREALR:32;
( x in {x} & L_ x << {x} ) by TARSKI:def 1, SURREALO:11;
then No_omega^ xL infinitely< No_omega^ x by A70, Th25;
then x1 infinitely< No_omega^ x by A70, Th13;
then x1 infinitely< (uReal . (1 / 2)) * (No_omega^ x) by Th13;
then x1 <= (uReal . (1 / 2)) * (No_omega^ x) by Th9;
then ( x1 * y1 <= ((uReal . (1 / 2)) * (No_omega^ x)) * y1 & ((uReal . (1 / 2)) * (No_omega^ x)) * y1 == (uReal . (1 / 2)) * ((No_omega^ x) * y1) ) by A73, SURREALR:75, SURREALR:69;
then x1 * y1 <= (uReal . (1 / 2)) * ((No_omega^ x) * y1) by SURREALO:4;
then 0_No <= ((uReal . (1 / 2)) * ((No_omega^ x) * y1)) - (x1 * y1) by SURREALR:46;
then ( (uReal . (1 / 2)) * ((No_omega^ x) * y1) = 0_No + ((uReal . (1 / 2)) * ((No_omega^ x) * y1)) & 0_No + ((uReal . (1 / 2)) * ((No_omega^ x) * y1)) <= ((uReal . (1 / 2)) * ((No_omega^ x) * y1)) + (((uReal . (1 / 2)) * ((No_omega^ x) * y1)) - (x1 * y1)) & ((uReal . (1 / 2)) * ((No_omega^ x) * y1)) + (((uReal . (1 / 2)) * ((No_omega^ x) * y1)) - (x1 * y1)) = (((uReal . (1 / 2)) * ((No_omega^ x) * y1)) + ((uReal . (1 / 2)) * ((No_omega^ x) * y1))) + (- (x1 * y1)) ) by SURREALR:43, SURREALR:37;
then (uReal . (1 / 2)) * ((No_omega^ x) * y1) <= ((No_omega^ x) * y1) + (- (x1 * y1)) by A75, SURREALO:4;
then A76: ( (uReal . (1 / 2)) * ((No_omega^ x) * y1) = ((uReal . (1 / 2)) * ((No_omega^ x) * y1)) + 0_No & ((uReal . (1 / 2)) * ((No_omega^ x) * y1)) + 0_No <= (x1 * (No_omega^ y)) + (((No_omega^ x) * y1) + (- (x1 * y1))) & (x1 * (No_omega^ y)) + (((No_omega^ x) * y1) + (- (x1 * y1))) = a ) by A74, A64, SURREALR:43, SURREALR:37;
( (uReal . (1 / 2)) * ((No_omega^ x) * y1) == (uReal . (1 / 2)) * ((No_omega^ (x + yL)) * (uReal . s)) & (uReal . (1 / 2)) * ((No_omega^ (x + yL)) * (uReal . s)) == ((uReal . (1 / 2)) * (uReal . s)) * (No_omega^ (x + yL)) ) by A71, SURREALR:54, SURREALR:69;
then A77: (uReal . (1 / 2)) * ((No_omega^ x) * y1) == ((uReal . (1 / 2)) * (uReal . s)) * (No_omega^ (x + yL)) by SURREALO:4;
((uReal . (1 / 2)) * (uReal . s)) * (No_omega^ (x + yL)) == (uReal . ((1 / 2) * s)) * (No_omega^ (x + yL)) by SURREALR:54, SURREALN:57;
then (uReal . (1 / 2)) * ((No_omega^ x) * y1) == (uReal . ((1 / 2) * s)) * (No_omega^ (x + yL)) by A77, SURREALO:4;
then (uReal . ((1 / 2) * s)) * (No_omega^ (x + yL)) <= a by A76, SURREALO:4;
hence ex b being Surreal st
( b in R_ (No_omega^ (x + y)) & b <= a )
by A72, Th23; :: thesis: verum
end;
end;
end;
for a being Surreal st a in R_ ((No_omega^ x) * (No_omega^ y)) holds
ex b being Surreal st
( b in R_ (No_omega^ (x + y)) & b <= a )
proof
let a be Surreal; :: thesis: ( a in R_ ((No_omega^ x) * (No_omega^ y)) implies ex b being Surreal st
( b in R_ (No_omega^ (x + y)) & b <= a ) )

assume a in R_ ((No_omega^ x) * (No_omega^ y)) ; :: thesis: ex b being Surreal st
( b in R_ (No_omega^ (x + y)) & b <= a )

per cases then ( a in comp ((L_ (No_omega^ x)),(No_omega^ x),(No_omega^ y),(R_ (No_omega^ y))) or a in comp ((R_ (No_omega^ x)),(No_omega^ x),(No_omega^ y),(L_ (No_omega^ y))) ) by A4, XBOOLE_0:def 3;
suppose a in comp ((L_ (No_omega^ x)),(No_omega^ x),(No_omega^ y),(R_ (No_omega^ y))) ; :: thesis: ex b being Surreal st
( b in R_ (No_omega^ (x + y)) & b <= a )

hence ex b being Surreal st
( b in R_ (No_omega^ (x + y)) & b <= a )
by A62, A3; :: thesis: verum
end;
suppose a in comp ((R_ (No_omega^ x)),(No_omega^ x),(No_omega^ y),(L_ (No_omega^ y))) ; :: thesis: ex b being Surreal st
( b in R_ (No_omega^ (x + y)) & b <= a )

then a in comp ((L_ (No_omega^ y)),(No_omega^ y),(No_omega^ x),(R_ (No_omega^ x))) by SURREALR:53;
hence ex b being Surreal st
( b in R_ (No_omega^ (x + y)) & b <= a )
by A62, A3; :: thesis: verum
end;
end;
end;
hence (No_omega^ x) * (No_omega^ y) == No_omega^ (x + y) by A6, A38, SURREAL0:44, A49, A50; :: thesis: verum
end;
for D being Ordinal holds S1[D] from ORDINAL1:sch 2(A1);
hence (No_omega^ x) * (No_omega^ y) == No_omega^ (x + y) ; :: thesis: verum
end;

theorem :: SURREALC:28
for x being Surreal holds (No_omega^ x) " == No_omega^ (- x)
proof
let x be Surreal; :: thesis: (No_omega^ x) " == No_omega^ (- x)
set X = No_omega^ x;
A1: not No_omega^ x == 0_No by SURREALI:def 8;
x - x == 0_No by SURREALR:39;
then A2: ( No_omega^ (x - x) == No_omega^ 0_No & No_omega^ 0_No = 1_No ) by Th26, Lm5;
(No_omega^ x) * (No_omega^ (- x)) == No_omega^ (x - x) by Th27;
then ( (No_omega^ x) * (No_omega^ (- x)) == No_omega^ 0_No & No_omega^ 0_No = 1_No ) by A2, SURREALO:4;
hence (No_omega^ x) " == No_omega^ (- x) by SURREALI:42, A1; :: thesis: verum
end;

theorem Th29: :: SURREALC:29
for y, xL, x being Surreal st xL <= x & xL, No_omega^ y are_commensurate & not x, No_omega^ y are_commensurate holds
No_omega^ y infinitely< x
proof
let y be Surreal; :: thesis: for xL, x being Surreal st xL <= x & xL, No_omega^ y are_commensurate & not x, No_omega^ y are_commensurate holds
No_omega^ y infinitely< x

set O = No_omega^ y;
let xL, x be Surreal; :: thesis: ( xL <= x & xL, No_omega^ y are_commensurate & not x, No_omega^ y are_commensurate implies No_omega^ y infinitely< x )
assume that
A1: ( xL <= x & xL, No_omega^ y are_commensurate ) and
A2: not x, No_omega^ y are_commensurate and
A3: not No_omega^ y infinitely< x ; :: thesis: contradiction
consider r being positive Real such that
A4: not (No_omega^ y) * (uReal . r) < x by A3;
consider n being Nat such that
A5: r < n by SEQ_4:3;
reconsider n = n as positive Nat by A5;
A6: No_omega^ y is positive ;
( uReal . r < uReal . n & uReal . n = uDyadic . n & uDyadic . n = uInt . n ) by A5, SURREALN:51, SURREALN:46, SURREALN:def 5;
then (No_omega^ y) * (uReal . r) < (No_omega^ y) * (uInt . n) by A6, SURREALR:70;
then A7: x < (No_omega^ y) * (uInt . n) by A4, SURREALO:4;
consider k being positive Nat such that
A8: No_omega^ y < (uInt . k) * xL by A1;
uInt . k is positive ;
then 0_No <= uInt . k ;
then (uInt . k) * xL <= (uInt . k) * x by A1, SURREALR:75;
then No_omega^ y < (uInt . k) * x by A8, SURREALO:4;
hence contradiction by A2, A7; :: thesis: verum
end;

theorem Th30: :: SURREALC:30
for y, x, xR being Surreal st 0_No < x & x <= xR & xR, No_omega^ y are_commensurate & not x, No_omega^ y are_commensurate holds
x infinitely< No_omega^ y
proof
let y be Surreal; :: thesis: for x, xR being Surreal st 0_No < x & x <= xR & xR, No_omega^ y are_commensurate & not x, No_omega^ y are_commensurate holds
x infinitely< No_omega^ y

set O = No_omega^ y;
let x, xR be Surreal; :: thesis: ( 0_No < x & x <= xR & xR, No_omega^ y are_commensurate & not x, No_omega^ y are_commensurate implies x infinitely< No_omega^ y )
assume that
A1: ( 0_No < x & x <= xR & xR, No_omega^ y are_commensurate ) and
A2: not x, No_omega^ y are_commensurate and
A3: not x infinitely< No_omega^ y ; :: thesis: contradiction
consider r being positive Real such that
A4: not x * (uReal . r) < No_omega^ y by A3;
consider n being Nat such that
A5: r < n by SEQ_4:3;
reconsider n = n as positive Nat by A5;
( uReal . r < uReal . n & uReal . n = uDyadic . n & uDyadic . n = uInt . n ) by A5, SURREALN:51, SURREALN:46, SURREALN:def 5;
then x * (uReal . r) < x * (uInt . n) by A1, SURREALR:70;
then A6: No_omega^ y < x * (uInt . n) by A4, SURREALO:4;
consider k being positive Nat such that
A7: xR < (uInt . k) * (No_omega^ y) by A1;
x < (uInt . k) * (No_omega^ y) by A7, A1, SURREALO:4;
hence contradiction by A2, A6; :: thesis: verum
end;

definition
let x be Surreal;
func |.x.| -> Surreal equals :Def6: :: SURREALC:def 6
x if 0_No <= x
otherwise - x;
coherence
( ( 0_No <= x implies x is Surreal ) & ( not 0_No <= x implies - x is Surreal ) )
;
correctness
consistency
for b1 being Surreal holds verum
;
;
end;

:: deftheorem Def6 defines |. SURREALC:def 6 :
for x being Surreal holds
( ( 0_No <= x implies |.x.| = x ) & ( not 0_No <= x implies |.x.| = - x ) );

theorem Th31: :: SURREALC:31
for x being Surreal holds 0_No <= |.x.|
proof
let x be Surreal; :: thesis: 0_No <= |.x.|
per cases ( 0_No <= x or x < 0_No ) ;
suppose 0_No <= x ; :: thesis: 0_No <= |.x.|
hence 0_No <= |.x.| by Def6; :: thesis: verum
end;
suppose A1: x < 0_No ; :: thesis: 0_No <= |.x.|
then ( 0_No = - 0_No & - 0_No < - x ) by SURREALR:10;
hence 0_No <= |.x.| by Def6, A1; :: thesis: verum
end;
end;
end;

theorem :: SURREALC:32
for x being Surreal holds
( |.x.| = x or |.x.| = - x ) by Def6;

theorem :: SURREALC:33
for x being Surreal holds
( x == 0_No iff |.x.| == 0_No )
proof
let x be Surreal; :: thesis: ( x == 0_No iff |.x.| == 0_No )
thus ( x == 0_No implies |.x.| == 0_No ) by Def6; :: thesis: ( |.x.| == 0_No implies x == 0_No )
assume A1: |.x.| == 0_No ; :: thesis: x == 0_No
thus x <= 0_No by A1, Def6; :: according to SURREALO:def 2 :: thesis: 0_No <= x
assume x < 0_No ; :: thesis: contradiction
then ( 0_No = - 0_No & - 0_No < - x & |.x.| = - x ) by Def6, SURREALR:10;
hence contradiction by A1; :: thesis: verum
end;

theorem Th34: :: SURREALC:34
for x being Surreal holds
( - |.x.| <= x & x <= |.x.| )
proof
let x be Surreal; :: thesis: ( - |.x.| <= x & x <= |.x.| )
per cases ( 0_No <= x or x < 0_No ) ;
suppose A1: 0_No <= x ; :: thesis: ( - |.x.| <= x & x <= |.x.| )
then A2: |.x.| = x by Def6;
( - x <= - 0_No & - 0_No = 0_No ) by A1, SURREALR:10;
hence ( - |.x.| <= x & x <= |.x.| ) by A2, A1, SURREALO:4; :: thesis: verum
end;
suppose A3: x < 0_No ; :: thesis: ( - |.x.| <= x & x <= |.x.| )
then A4: ( 0_No = - 0_No & - 0_No <= - x ) by SURREALR:10;
|.x.| = - x by A3, Def6;
hence ( - |.x.| <= x & x <= |.x.| ) by A4, A3, SURREALO:4; :: thesis: verum
end;
end;
end;

theorem Th35: :: SURREALC:35
for x, y being Surreal holds
( ( - y <= x & x <= y ) iff |.x.| <= y )
proof
let x, y be Surreal; :: thesis: ( ( - y <= x & x <= y ) iff |.x.| <= y )
thus ( - y <= x & x <= y implies |.x.| <= y ) :: thesis: ( |.x.| <= y implies ( - y <= x & x <= y ) )
proof
assume A1: ( - y <= x & x <= y ) ; :: thesis: |.x.| <= y
then ( - x <= - (- y) & - (- y) = y ) by SURREALR:10;
hence |.x.| <= y by A1, Def6; :: thesis: verum
end;
assume A2: |.x.| <= y ; :: thesis: ( - y <= x & x <= y )
0_No <= |.x.| by Th31;
then A3: 0_No <= y by A2, SURREALO:4;
per cases ( 0_No <= x or x < 0_No ) ;
suppose A4: 0_No <= x ; :: thesis: ( - y <= x & x <= y )
( - y <= - 0_No & - 0_No = 0_No ) by A3, SURREALR:10;
hence ( - y <= x & x <= y ) by A2, Def6, A4, SURREALO:4; :: thesis: verum
end;
suppose A5: x < 0_No ; :: thesis: ( - y <= x & x <= y )
- x <= - (- y) by A2, A5, Def6;
hence ( - y <= x & x <= y ) by SURREALR:10, A3, A5, SURREALO:4; :: thesis: verum
end;
end;
end;

theorem Th36: :: SURREALC:36
for x being Surreal st not x == 0_No holds
|.x.| is positive
proof
let x be Surreal; :: thesis: ( not x == 0_No implies |.x.| is positive )
assume not x == 0_No ; :: thesis: |.x.| is positive
per cases then ( 0_No < x or x < 0_No ) ;
suppose A1: 0_No < x ; :: thesis: |.x.| is positive
then 0_No <= x ;
hence |.x.| is positive by A1, Def6; :: thesis: verum
end;
suppose A2: x < 0_No ; :: thesis: |.x.| is positive
then |.x.| = - x by Def6;
hence |.x.| is positive by A2, SURREALR:10, SURREALR:23; :: thesis: verum
end;
end;
end;

theorem Th37: :: SURREALC:37
for x, y being Surreal holds |.(x + y).| <= |.x.| + |.y.|
proof
let x, y be Surreal; :: thesis: |.(x + y).| <= |.x.| + |.y.|
( - |.x.| <= x & x <= |.x.| & - |.y.| <= y & y <= |.y.| ) by Th34;
then ( - (|.x.| + |.y.|) = (- |.x.|) + (- |.y.|) & (- |.x.|) + (- |.y.|) <= x + y & x + y <= |.x.| + |.y.| ) by SURREALR:40, SURREALR:43;
hence |.(x + y).| <= |.x.| + |.y.| by Th35; :: thesis: verum
end;

theorem Th38: :: SURREALC:38
for x being Surreal st x == 0_No holds
|.(- x).| == |.x.|
proof
let x be Surreal; :: thesis: ( x == 0_No implies |.(- x).| == |.x.| )
assume A1: x == 0_No ; :: thesis: |.(- x).| == |.x.|
then ( - x == - 0_No & - 0_No = 0_No ) by SURREALR:10;
then ( |.(- x).| == 0_No & |.x.| == 0_No ) by A1, Def6;
hence |.(- x).| == |.x.| by SURREALO:4; :: thesis: verum
end;

theorem Th39: :: SURREALC:39
for x being Surreal st not x == 0_No holds
|.(- x).| = |.x.|
proof
let x be Surreal; :: thesis: ( not x == 0_No implies |.(- x).| = |.x.| )
assume not x == 0_No ; :: thesis: |.(- x).| = |.x.|
per cases then ( 0_No < x or x < 0_No ) ;
suppose A1: 0_No < x ; :: thesis: |.(- x).| = |.x.|
then A2: |.(- x).| = - (- x) by SURREALR:10, SURREALR:23, Def6;
0_No <= x by A1;
hence |.(- x).| = |.x.| by Def6, A2; :: thesis: verum
end;
suppose A3: x < 0_No ; :: thesis: |.(- x).| = |.x.|
then 0_No <= - x by SURREALR:10, SURREALR:23;
then |.(- x).| = - x by Def6;
hence |.(- x).| = |.x.| by A3, Def6; :: thesis: verum
end;
end;
end;

theorem Th40: :: SURREALC:40
for x being Surreal holds |.(- x).| == |.x.| by Th39, Th38;

theorem Th41: :: SURREALC:41
for x, y, z being Surreal st |.x.| infinitely< z & |.y.| infinitely< z holds
|.(x + y).| infinitely< z
proof
let x, y, z be Surreal; :: thesis: ( |.x.| infinitely< z & |.y.| infinitely< z implies |.(x + y).| infinitely< z )
assume A1: ( |.x.| infinitely< z & |.y.| infinitely< z ) ; :: thesis: |.(x + y).| infinitely< z
let r be positive Real; :: according to SURREALC:def 3 :: thesis: |.(x + y).| * (uReal . r) < z
set R = uReal . r;
set H = uReal . (1 / 2);
A2: (1 / 2) + (1 / 2) = 1 ;
( |.x.| infinitely< z * (uReal . (1 / 2)) & |.y.| infinitely< z * (uReal . (1 / 2)) ) by A1, Th13;
then ( |.x.| * (uReal . r) < z * (uReal . (1 / 2)) & |.y.| * (uReal . r) <= z * (uReal . (1 / 2)) ) ;
then A3: (|.x.| * (uReal . r)) + (|.y.| * (uReal . r)) < (z * (uReal . (1 / 2))) + (z * (uReal . (1 / 2))) by SURREALR:44;
( (z * (uReal . (1 / 2))) + (z * (uReal . (1 / 2))) == z * ((uReal . (1 / 2)) + (uReal . (1 / 2))) & z * ((uReal . (1 / 2)) + (uReal . (1 / 2))) == z * 1_No & z * 1_No = z ) by A2, SURREALN:55, SURREALN:48, SURREALR:51, SURREALR:67;
then (z * (uReal . (1 / 2))) + (z * (uReal . (1 / 2))) == z by SURREALO:4;
then A4: (|.x.| * (uReal . r)) + (|.y.| * (uReal . r)) < z by A3, SURREALO:4;
A5: 0_No <= uReal . r by SURREALI:def 8;
( |.(x + y).| * (uReal . r) <= (|.x.| + |.y.|) * (uReal . r) & (|.x.| + |.y.|) * (uReal . r) == (|.x.| * (uReal . r)) + (|.y.| * (uReal . r)) ) by Th37, A5, SURREALR:75, SURREALR:67;
then |.(x + y).| * (uReal . r) <= (|.x.| * (uReal . r)) + (|.y.| * (uReal . r)) by SURREALO:4;
hence |.(x + y).| * (uReal . r) < z by A4, SURREALO:4; :: thesis: verum
end;

theorem Th42: :: SURREALC:42
for x, z being Surreal st |.x.| infinitely< z holds
|.(- x).| infinitely< z
proof
let x, z be Surreal; :: thesis: ( |.x.| infinitely< z implies |.(- x).| infinitely< z )
assume A1: |.x.| infinitely< z ; :: thesis: |.(- x).| infinitely< z
let r be positive Real; :: according to SURREALC:def 3 :: thesis: |.(- x).| * (uReal . r) < z
( |.(- x).| * (uReal . r) == |.x.| * (uReal . r) & |.x.| * (uReal . r) < z ) by Th40, A1, SURREALR:51;
hence |.(- x).| * (uReal . r) < z by SURREALO:4; :: thesis: verum
end;

theorem Th43: :: SURREALC:43
for x, y, z being Surreal st |.x.| infinitely< z & |.y.| infinitely< z holds
|.(x - y).| infinitely< z
proof
let x, y, z be Surreal; :: thesis: ( |.x.| infinitely< z & |.y.| infinitely< z implies |.(x - y).| infinitely< z )
assume A1: ( |.x.| infinitely< z & |.y.| infinitely< z ) ; :: thesis: |.(x - y).| infinitely< z
then |.(- y).| infinitely< z by Th42;
hence |.(x - y).| infinitely< z by Th41, A1; :: thesis: verum
end;

theorem Th44: :: SURREALC:44
for x, y being Surreal st |.y.| infinitely< x holds
not x + y == 0_No
proof
let x, y be Surreal; :: thesis: ( |.y.| infinitely< x implies not x + y == 0_No )
assume A1: |.y.| infinitely< x ; :: thesis: not x + y == 0_No
then A2: |.y.| < x by Th9;
per cases ( 0_No <= y or y < 0_No ) ;
suppose A3: 0_No <= y ; :: thesis: not x + y == 0_No
then y < x by A2, Def6;
then A4: y + y < x + y by SURREALR:44;
( 0_No = 0_No + 0_No & 0_No + 0_No <= y + y ) by A3, SURREALR:43;
hence not x + y == 0_No by A4, SURREALO:4; :: thesis: verum
end;
suppose y < 0_No ; :: thesis: not x + y == 0_No
then |.y.| = - y by Def6;
then A5: (- y) + y < x + y by A1, Th9, SURREALR:44;
y - y == 0_No by SURREALR:39;
hence not x + y == 0_No by A5, SURREALO:4; :: thesis: verum
end;
end;
end;

theorem Th45: :: SURREALC:45
for x, y being Surreal st |.y.| infinitely< |.x.| holds
not x + y == 0_No
proof
let x, y be Surreal; :: thesis: ( |.y.| infinitely< |.x.| implies not x + y == 0_No )
assume A1: |.y.| infinitely< |.x.| ; :: thesis: not x + y == 0_No
per cases ( |.x.| = x or |.x.| = - x ) by Def6;
suppose |.x.| = x ; :: thesis: not x + y == 0_No
hence not x + y == 0_No by A1, Th44; :: thesis: verum
end;
suppose |.x.| = - x ; :: thesis: not x + y == 0_No
then A2: |.(- y).| infinitely< - x by Th40, Th17, A1;
(- x) + (- y) = - (x + y) by SURREALR:40;
hence not x + y == 0_No by A2, Th44, SURREALR:24; :: thesis: verum
end;
end;
end;

theorem Th46: :: SURREALC:46
for x, y being Surreal st |.y.| infinitely< x holds
not x == 0_No
proof
let x, y be Surreal; :: thesis: ( |.y.| infinitely< x implies not x == 0_No )
assume |.y.| infinitely< x ; :: thesis: not x == 0_No
then ( 0_No <= |.y.| & |.y.| < x ) by Th9, Th31;
hence not x == 0_No by SURREALO:4; :: thesis: verum
end;

theorem Th47: :: SURREALC:47
for x, y being Surreal st |.y.| infinitely< |.x.| holds
not x == 0_No
proof
let x, y be Surreal; :: thesis: ( |.y.| infinitely< |.x.| implies not x == 0_No )
assume A1: |.y.| infinitely< |.x.| ; :: thesis: not x == 0_No
( |.x.| = x or |.x.| = - x ) by Def6;
hence not x == 0_No by SURREALR:24, A1, Th46; :: thesis: verum
end;

theorem Th48: :: SURREALC:48
for x, y being Surreal st x == y holds
|.x.| == |.y.|
proof
let x, y be Surreal; :: thesis: ( x == y implies |.x.| == |.y.| )
assume A1: x == y ; :: thesis: |.x.| == |.y.|
per cases ( 0_No <= x or x < 0_No ) ;
suppose 0_No <= x ; :: thesis: |.x.| == |.y.|
then ( |.x.| = x & 0_No <= y ) by Def6, A1, SURREALO:4;
hence |.x.| == |.y.| by A1, Def6; :: thesis: verum
end;
suppose x < 0_No ; :: thesis: |.x.| == |.y.|
then ( |.x.| = - x & y < 0_No & - x == - y ) by Def6, A1, SURREALO:4, SURREALR:10;
hence |.x.| == |.y.| by Def6; :: thesis: verum
end;
end;
end;

theorem Th49: :: SURREALC:49
for x, y being Surreal holds |.(|.x.| - |.y.|).| <= |.(x - y).|
proof
let x, y be Surreal; :: thesis: |.(|.x.| - |.y.|).| <= |.(x - y).|
y - y == 0_No by SURREALR:39;
then ( x = x + 0_No & x + 0_No == x + (y + (- y)) & x + (y + (- y)) = (x + (- y)) + y ) by SURREALR:43, SURREALR:37;
then ( |.x.| == |.((x + (- y)) + y).| & |.((x + (- y)) + y).| <= |.(x + (- y)).| + |.y.| ) by Th37, Th48;
then |.x.| <= |.(x + (- y)).| + |.y.| by SURREALO:4;
then A1: |.x.| - |.y.| <= |.(x + (- y)).| by SURREALR:42;
x - x == 0_No by SURREALR:39;
then ( y = y + 0_No & y + 0_No == y + (x + (- x)) & y + (x + (- x)) = (y + (- x)) + x ) by SURREALR:43, SURREALR:37;
then ( |.y.| == |.((y + (- x)) + x).| & |.((y + (- x)) + x).| <= |.(y + (- x)).| + |.x.| ) by Th37, Th48;
then A2: |.y.| <= |.(y + (- x)).| + |.x.| by SURREALO:4;
- (x + (- y)) = (- x) + (- (- y)) by SURREALR:40
.= (- x) + y ;
then ( |.(y + (- x)).| = |.(- (x + (- y))).| & |.(- (x + (- y))).| == |.(x + (- y)).| ) by Th39, Th38;
then |.(y + (- x)).| + |.x.| == |.(x + (- y)).| + |.x.| by SURREALR:43;
then |.y.| <= |.(x + (- y)).| + |.x.| by A2, SURREALO:4;
then ( (- |.(x - y).|) - |.x.| = - (|.(x - y).| + |.x.|) & - (|.(x - y).| + |.x.|) <= - |.y.| ) by SURREALR:40, SURREALR:10;
then - |.(x - y).| <= |.x.| - |.y.| by SURREALR:42;
hence |.(|.x.| - |.y.|).| <= |.(x - y).| by A1, Th35; :: thesis: verum
end;

theorem :: SURREALC:50
for x being Surreal holds |.|.x.|.| = |.x.| by Th31, Def6;

theorem Th51: :: SURREALC:51
for x, y, z being Surreal st x <= y & y <= z holds
|.y.| <= |.x.| + |.z.|
proof
let x, y, z be Surreal; :: thesis: ( x <= y & y <= z implies |.y.| <= |.x.| + |.z.| )
assume A1: ( x <= y & y <= z ) ; :: thesis: |.y.| <= |.x.| + |.z.|
per cases ( 0_No <= y or y < 0_No ) ;
suppose 0_No <= y ; :: thesis: |.y.| <= |.x.| + |.z.|
then A2: ( |.y.| = y & |.z.| = z ) by A1, SURREALO:4, Def6;
0_No <= |.x.| by Th31;
then ( |.z.| = 0_No + |.z.| & 0_No + |.z.| <= |.x.| + |.z.| ) by SURREALR:43;
hence |.y.| <= |.x.| + |.z.| by A2, A1, SURREALO:4; :: thesis: verum
end;
suppose A3: y < 0_No ; :: thesis: |.y.| <= |.x.| + |.z.|
then x < 0_No by A1, SURREALO:4;
then ( |.y.| = - y & |.x.| = - x ) by A3, Def6;
then A4: |.y.| <= |.x.| by A1, SURREALR:10;
0_No <= |.z.| by Th31;
then ( |.x.| = 0_No + |.x.| & 0_No + |.x.| <= |.x.| + |.z.| ) by SURREALR:43;
hence |.y.| <= |.x.| + |.z.| by A4, SURREALO:4; :: thesis: verum
end;
end;
end;

theorem Th52: :: SURREALC:52
for x, y being Surreal holds
( ( - y < x & x < y ) iff |.x.| < y )
proof
let x, y be Surreal; :: thesis: ( ( - y < x & x < y ) iff |.x.| < y )
thus ( - y < x & x < y implies |.x.| < y ) :: thesis: ( |.x.| < y implies ( - y < x & x < y ) )
proof
assume A1: ( - y < x & x < y ) ; :: thesis: |.x.| < y
then ( - x < - (- y) & - (- y) = y ) by SURREALR:10;
hence |.x.| < y by A1, Def6; :: thesis: verum
end;
assume A2: |.x.| < y ; :: thesis: ( - y < x & x < y )
0_No <= |.x.| by Th31;
then A3: 0_No <= y by A2, SURREALO:4;
per cases ( 0_No <= x or x < 0_No ) ;
suppose A4: 0_No <= x ; :: thesis: ( - y < x & x < y )
0_No <= |.x.| by Th31;
then 0_No < y by A2, SURREALO:4;
then ( - y < - 0_No & - 0_No = 0_No ) by SURREALR:10;
hence ( - y < x & x < y ) by A2, A4, Def6, SURREALO:4; :: thesis: verum
end;
suppose A5: x < 0_No ; :: thesis: ( - y < x & x < y )
then - x < - (- y) by A2, Def6;
hence ( - y < x & x < y ) by SURREALR:10, A3, A5, SURREALO:4; :: thesis: verum
end;
end;
end;

theorem Th53: :: SURREALC:53
for x, y being Surreal
for r being Real st 0_No <= x & x infinitely< y holds
|.(x * (uReal . r)).| infinitely< y
proof
let x, y be Surreal; :: thesis: for r being Real st 0_No <= x & x infinitely< y holds
|.(x * (uReal . r)).| infinitely< y

let r be Real; :: thesis: ( 0_No <= x & x infinitely< y implies |.(x * (uReal . r)).| infinitely< y )
assume A1: ( 0_No <= x & x infinitely< y ) ; :: thesis: |.(x * (uReal . r)).| infinitely< y
let s be positive Real; :: according to SURREALC:def 3 :: thesis: |.(x * (uReal . r)).| * (uReal . s) < y
per cases ( 0_No <= x * (uReal . r) or x * (uReal . r) < 0_No ) ;
suppose 0_No <= x * (uReal . r) ; :: thesis: |.(x * (uReal . r)).| * (uReal . s) < y
then |.(x * (uReal . r)).| = x * (uReal . r) by Def6;
then ( |.(x * (uReal . r)).| * (uReal . s) == x * (uReal . (r * s)) & x * (uReal . (r * s)) < y ) by Th20, A1, Lm1;
hence |.(x * (uReal . r)).| * (uReal . s) < y by SURREALO:4; :: thesis: verum
end;
suppose x * (uReal . r) < 0_No ; :: thesis: |.(x * (uReal . r)).| * (uReal . s) < y
then A2: |.(x * (uReal . r)).| = - (x * (uReal . r)) by Def6;
x * (- (uReal . r)) == x * (uReal . (- r)) by SURREALN:56, SURREALR:51;
then - (x * (uReal . r)) == x * (uReal . (- r)) by SURREALR:58;
then ( |.(x * (uReal . r)).| * (uReal . s) == (x * (uReal . (- r))) * (uReal . s) & (x * (uReal . (- r))) * (uReal . s) == x * (uReal . ((- r) * s)) ) by A2, SURREALR:51, Lm1;
then ( |.(x * (uReal . r)).| * (uReal . s) == x * (uReal . ((- r) * s)) & x * (uReal . ((- r) * s)) < y ) by Th20, A1, SURREALO:4;
hence |.(x * (uReal . r)).| * (uReal . s) < y by SURREALO:4; :: thesis: verum
end;
end;
end;

Lm6: for x being Surreal st x is positive holds
ex y being Surreal st x, No_omega^ y are_commensurate

proof
let x be Surreal; :: thesis: ( x is positive implies ex y being Surreal st x, No_omega^ y are_commensurate )
assume A1: x is positive ; :: thesis: ex y being Surreal st x, No_omega^ y are_commensurate
defpred S1[ Ordinal] means for x being Surreal st x is positive & born x = $1 holds
ex y being Surreal st x, No_omega^ y are_commensurate ;
A2: for D being Ordinal st ( for C being Ordinal st C in D holds
S1[C] ) holds
S1[D]
proof
let D be Ordinal; :: thesis: ( ( for C being Ordinal st C in D holds
S1[C] ) implies S1[D] )

assume A3: for C being Ordinal st C in D holds
S1[C]
; :: thesis: S1[D]
let x be Surreal; :: thesis: ( x is positive & born x = D implies ex y being Surreal st x, No_omega^ y are_commensurate )
assume A4: ( x is positive & born x = D ) ; :: thesis: ex y being Surreal st x, No_omega^ y are_commensurate
set X = ||.x.||;
per cases ( ex x1, y being Surreal st
( x1 in ((L_ ||.x.||) \/ (R_ ||.x.||)) \ {0_No} & x1, No_omega^ y are_commensurate & x, No_omega^ y are_commensurate ) or for x1, y being Surreal st x1 in ((L_ ||.x.||) \/ (R_ ||.x.||)) \ {0_No} & x1, No_omega^ y are_commensurate holds
not x, No_omega^ y are_commensurate )
;
suppose ex x1, y being Surreal st
( x1 in ((L_ ||.x.||) \/ (R_ ||.x.||)) \ {0_No} & x1, No_omega^ y are_commensurate & x, No_omega^ y are_commensurate )
; :: thesis: ex y being Surreal st x, No_omega^ y are_commensurate
then consider x1, y being Surreal such that
A5: ( x1 in ((L_ ||.x.||) \/ (R_ ||.x.||)) \ {0_No} & x1, No_omega^ y are_commensurate & x, No_omega^ y are_commensurate ) ;
take y ; :: thesis: x, No_omega^ y are_commensurate
thus x, No_omega^ y are_commensurate by A5; :: thesis: verum
end;
suppose A6: for x1, y being Surreal st x1 in ((L_ ||.x.||) \/ (R_ ||.x.||)) \ {0_No} & x1, No_omega^ y are_commensurate holds
not x, No_omega^ y are_commensurate
; :: thesis: ex y being Surreal st x, No_omega^ y are_commensurate
defpred S2[ object , object ] means ( $2 is Surreal & ( for a, b being Surreal st a = $1 & $2 = b holds
a, No_omega^ b are_commensurate ) );
A7: for o being object st o in ((L_ ||.x.||) \/ (R_ ||.x.||)) \ {0_No} holds
ex u being object st S2[o,u]
proof
let o be object ; :: thesis: ( o in ((L_ ||.x.||) \/ (R_ ||.x.||)) \ {0_No} implies ex u being object st S2[o,u] )
assume A8: o in ((L_ ||.x.||) \/ (R_ ||.x.||)) \ {0_No} ; :: thesis: ex u being object st S2[o,u]
reconsider o = o as Surreal by A8, SURREAL0:def 16;
reconsider o = o as positive Surreal by A4, A8, SURREALI:21;
((L_ ||.x.||) \/ (R_ ||.x.||)) \ {0_No} c= (L_ x) \/ (R_ x) by A4, SURREALI:20;
then born o in born x by A8, SURREALO:1;
then consider y being Surreal such that
A9: o, No_omega^ y are_commensurate by A3, A4;
take y ; :: thesis: S2[o,y]
thus S2[o,y] by A9; :: thesis: verum
end;
consider Y being Function such that
A10: ( dom Y = ((L_ ||.x.||) \/ (R_ ||.x.||)) \ {0_No} & ( for o being object st o in ((L_ ||.x.||) \/ (R_ ||.x.||)) \ {0_No} holds
S2[o,Y . o] ) )
from CLASSES1:sch 1(A7);
set Y1 = Y .: ((L_ ||.x.||) \ {0_No});
set Y2 = Y .: ((R_ ||.x.||) \ {0_No});
dom Y = ((L_ ||.x.||) \ {0_No}) \/ ((R_ ||.x.||) \ {0_No}) by A10, XBOOLE_1:42;
then A11: ( rng Y = Y .: (dom Y) & Y .: (dom Y) = (Y .: ((L_ ||.x.||) \ {0_No})) \/ (Y .: ((R_ ||.x.||) \ {0_No})) ) by RELAT_1:113, RELAT_1:120;
rng Y is surreal-membered
proof
let o be object ; :: according to SURREAL0:def 16 :: thesis: ( not o in rng Y or o is surreal )
assume o in rng Y ; :: thesis: o is surreal
then ex a being object st
( a in dom Y & Y . a = o )
by FUNCT_1:def 3;
hence o is surreal by A10; :: thesis: verum
end;
then consider M being Ordinal such that
A12: for o being object st o in (Y .: ((L_ ||.x.||) \ {0_No})) \/ (Y .: ((R_ ||.x.||) \ {0_No})) holds
ex A being Ordinal st
( A in M & o in Day A )
by A11, SURREAL0:47;
A13: ( x in {x} & L_ x << {x} & {x} << R_ x ) by SURREALO:11, TARSKI:def 1;
Y .: ((L_ ||.x.||) \ {0_No}) << Y .: ((R_ ||.x.||) \ {0_No})
proof
let a, b be Surreal; :: according to SURREAL0:def 20 :: thesis: ( not a in Y .: ((L_ ||.x.||) \ {0_No}) or not b in Y .: ((R_ ||.x.||) \ {0_No}) or not b <= a )
assume that
A14: ( a in Y .: ((L_ ||.x.||) \ {0_No}) & b in Y .: ((R_ ||.x.||) \ {0_No}) ) and
A15: not a < b ; :: thesis: contradiction
consider a1 being object such that
A16: ( a1 in dom Y & a1 in (L_ ||.x.||) \ {0_No} & a = Y . a1 ) by A14, FUNCT_1:def 6;
reconsider a1 = a1 as Surreal by SURREAL0:def 16, A16;
A17: a1, No_omega^ a are_commensurate by A16, A10;
( a1 in L_ ||.x.|| & a1 <> 0_No ) by A16, ZFMISC_1:56;
then a1 in L_ x by A4, SURREALI:def 9;
then A18: a1 <= x by A13;
not x, No_omega^ a are_commensurate by A6, A16, A10, A17;
then A19: No_omega^ a infinitely< x by Th29, A16, A10, A18;
consider b1 being object such that
A20: ( b1 in dom Y & b1 in (R_ ||.x.||) \ {0_No} & b = Y . b1 ) by A14, FUNCT_1:def 6;
reconsider b1 = b1 as Surreal by A20, SURREAL0:def 16;
A21: b1, No_omega^ b are_commensurate by A20, A10;
b1 in R_ x by A20, A4, SURREALI:def 9;
then A22: x <= b1 by A13;
not x, No_omega^ b are_commensurate by A6, A20, A10, A21;
then x infinitely< No_omega^ b by Th30, A20, A10, A4, A22;
then No_omega^ a < No_omega^ b by Th9, A19, Th14;
hence contradiction by A15, Lm5; :: thesis: verum
end;
then [(Y .: ((L_ ||.x.||) \ {0_No})),(Y .: ((R_ ||.x.||) \ {0_No}))] in Day M by A12, SURREAL0:46;
then reconsider YY = [(Y .: ((L_ ||.x.||) \ {0_No})),(Y .: ((R_ ||.x.||) \ {0_No}))] as Surreal ;
set N = No_omega^ YY;
A23: ( L_ (No_omega^ YY) << {(No_omega^ YY)} & {(No_omega^ YY)} << R_ (No_omega^ YY) & No_omega^ YY in {(No_omega^ YY)} ) by SURREALO:11, TARSKI:def 1;
A24: L_ ||.x.|| << {(No_omega^ YY)}
proof
let a, b be Surreal; :: according to SURREAL0:def 20 :: thesis: ( not a in L_ ||.x.|| or not b in {(No_omega^ YY)} or not b <= a )
assume A25: ( a in L_ ||.x.|| & b in {(No_omega^ YY)} ) ; :: thesis: not b <= a
A26: b = No_omega^ YY by A25, TARSKI:def 1;
A27: a in (L_ ||.x.||) \/ (R_ ||.x.||) by A25, XBOOLE_0:def 3;
per cases ( a = 0_No or a <> 0_No ) ;
suppose a = 0_No ; :: thesis: not b <= a
hence not b <= a by A26, SURREALI:def 8; :: thesis: verum
end;
suppose a <> 0_No ; :: thesis: not b <= a
then A28: ( a in (L_ ||.x.||) \ {0_No} & a in dom Y ) by A10, A27, A25, ZFMISC_1:56;
then A29: ( Y . a in Y .: ((L_ ||.x.||) \ {0_No}) & Y .: ((L_ ||.x.||) \ {0_No}) = YY `1 ) by FUNCT_1:def 6;
then reconsider Ya = Y . a as Surreal by SURREAL0:def 16;
a, No_omega^ Ya are_commensurate by A28, A10;
then consider n being positive Nat such that
A30: a < (No_omega^ Ya) * (uInt . n) ;
( uInt . n = uDyadic . n & uDyadic . n = uReal . n ) by SURREALN:46, SURREALN:def 5;
then A31: a <= (No_omega^ Ya) * (uReal . n) by A30;
(No_omega^ Ya) * (uReal . n) in L_ (No_omega^ YY) by Th22, A29;
hence not b <= a by A23, A25, A31, SURREALO:4; :: thesis: verum
end;
end;
end;
A32: {(No_omega^ YY)} << R_ ||.x.||
proof
let b, a be Surreal; :: according to SURREAL0:def 20 :: thesis: ( not b in {(No_omega^ YY)} or not a in R_ ||.x.|| or not a <= b )
assume A33: ( b in {(No_omega^ YY)} & a in R_ ||.x.|| ) ; :: thesis: not a <= b
A34: b = No_omega^ YY by A33, TARSKI:def 1;
A35: a in (L_ ||.x.||) \/ (R_ ||.x.||) by A33, XBOOLE_0:def 3;
a is positive by A33, A4, SURREALI:def 9;
then a <> 0_No by SURREALO:3;
then A36: ( a in (R_ ||.x.||) \ {0_No} & a in dom Y ) by A10, A35, A33, ZFMISC_1:56;
then A37: ( Y . a in Y .: ((R_ ||.x.||) \ {0_No}) & Y .: ((R_ ||.x.||) \ {0_No}) = R_ YY ) by FUNCT_1:def 6;
then reconsider Ya = Y . a as Surreal by SURREAL0:def 16;
a, No_omega^ Ya are_commensurate by A36, A10;
then consider n being positive Nat such that
A38: No_omega^ Ya < a * (uInt . n) ;
A39: uReal . (1 / n) is positive ;
( uInt . n = uDyadic . n & uDyadic . n = uReal . n ) by SURREALN:46, SURREALN:def 5;
then A40: (No_omega^ Ya) * (uReal . (1 / n)) < (a * (uReal . n)) * (uReal . (1 / n)) by A38, A39, SURREALR:70;
(1 / n) * n = 1 by XCMPLX_1:106;
then ( (a * (uReal . n)) * (uReal . (1 / n)) == a * ((uReal . (1 / n)) * (uReal . n)) & a * ((uReal . (1 / n)) * (uReal . n)) == a * 1_No & a * 1_No = a ) by SURREALN:57, SURREALN:48, SURREALR:69, SURREALR:51;
then (a * (uReal . n)) * (uReal . (1 / n)) <= a by SURREALO:4;
then A41: (No_omega^ Ya) * (uReal . (1 / n)) < a by A40, SURREALO:4;
No_omega^ YY <= (No_omega^ Ya) * (uReal . (1 / n)) by A23, Th23, A37;
hence not a <= b by A34, A41, SURREALO:4; :: thesis: verum
end;
A42: x == ||.x.|| by A4, SURREALI:18;
A43: x,||.x.|| are_commensurate by Th8, A4, SURREALI:18;
A44: {||.x.||} << R_ (No_omega^ YY)
proof
let a, b be Surreal; :: according to SURREAL0:def 20 :: thesis: ( not a in {||.x.||} or not b in R_ (No_omega^ YY) or not b <= a )
assume A45: ( a in {||.x.||} & b in R_ (No_omega^ YY) ) ; :: thesis: not b <= a
consider xR being Surreal, r being positive Real such that
A46: ( xR in R_ YY & b = (No_omega^ xR) * (uReal . r) ) by A45, Th23;
consider b1 being object such that
A47: ( b1 in dom Y & b1 in (R_ ||.x.||) \ {0_No} & xR = Y . b1 ) by A46, FUNCT_1:def 6;
reconsider b1 = b1 as Surreal by A47, SURREAL0:def 16;
A48: b1, No_omega^ xR are_commensurate by A47, A10;
b1 in R_ x by A47, A4, SURREALI:def 9;
then A49: x <= b1 by A13;
not x, No_omega^ xR are_commensurate by A6, A47, A10, A48;
then x infinitely< No_omega^ xR by Th30, A47, A10, A4, A49;
then x infinitely< b by A46, Th13;
then ||.x.|| < b by Th9, A43, Th15;
hence not b <= a by A45, TARSKI:def 1; :: thesis: verum
end;
A50: L_ (No_omega^ YY) << {||.x.||}
proof
let a, b be Surreal; :: according to SURREAL0:def 20 :: thesis: ( not a in L_ (No_omega^ YY) or not b in {||.x.||} or not b <= a )
assume A51: ( a in L_ (No_omega^ YY) & b in {||.x.||} ) ; :: thesis: not b <= a
per cases ( a = 0_No or a <> 0_No ) ;
suppose a = 0_No ; :: thesis: not b <= a
then a < ||.x.|| by SURREALI:def 8;
hence not b <= a by A51, TARSKI:def 1; :: thesis: verum
end;
suppose a <> 0_No ; :: thesis: not b <= a
then consider xL being Surreal, r being positive Real such that
A52: ( xL in L_ YY & a = (No_omega^ xL) * (uReal . r) ) by A51, Th22;
consider a1 being object such that
A53: ( a1 in dom Y & a1 in (L_ ||.x.||) \ {0_No} & xL = Y . a1 ) by A52, FUNCT_1:def 6;
reconsider a1 = a1 as Surreal by A53, SURREAL0:def 16;
A54: a1, No_omega^ xL are_commensurate by A53, A10;
( a1 in L_ ||.x.|| & a1 <> 0_No ) by A53, ZFMISC_1:56;
then a1 in L_ x by A4, SURREALI:def 9;
then A55: a1 <= x by A13;
not x, No_omega^ xL are_commensurate by A6, A53, A10, A54;
then No_omega^ xL infinitely< x by Th29, A53, A10, A55;
then a < ||.x.|| by A52, A42, SURREALO:4;
hence not b <= a by A51, TARSKI:def 1; :: thesis: verum
end;
end;
end;
No_omega^ YY == ||.x.|| by SURREAL0:43, A24, A44, A50, A32;
then x, No_omega^ YY are_commensurate by Th8, A42, Th5;
hence ex y being Surreal st x, No_omega^ y are_commensurate ; :: thesis: verum
end;
end;
end;
for D being Ordinal holds S1[D] from ORDINAL1:sch 2(A2);
then S1[ born x] ;
hence ex y being Surreal st x, No_omega^ y are_commensurate by A1; :: thesis: verum
end;

Lm7: for x being Surreal st x is positive holds
for y1, y2 being Surreal st x, No_omega^ y1 are_commensurate & x, No_omega^ y2 are_commensurate holds
y1 <= y2

proof
let x be Surreal; :: thesis: ( x is positive implies for y1, y2 being Surreal st x, No_omega^ y1 are_commensurate & x, No_omega^ y2 are_commensurate holds
y1 <= y2 )

assume x is positive ; :: thesis: for y1, y2 being Surreal st x, No_omega^ y1 are_commensurate & x, No_omega^ y2 are_commensurate holds
y1 <= y2

let y1, y2 be Surreal; :: thesis: ( x, No_omega^ y1 are_commensurate & x, No_omega^ y2 are_commensurate implies y1 <= y2 )
assume that
A1: ( x, No_omega^ y1 are_commensurate & x, No_omega^ y2 are_commensurate ) and
A2: y2 < y1 ; :: thesis: contradiction
No_omega^ y2 infinitely< No_omega^ y1 by Lm5, A2;
then x infinitely< No_omega^ y1 by Th15, A1;
then x < x by Th9, Th16, A1;
hence contradiction by SURREALO:3; :: thesis: verum
end;

definition
let x be Surreal;
assume A1: not x == 0_No ;
func omega-exp x -> uSurreal means :Def7: :: SURREALC:def 7
|.x.|, No_omega^ it are_commensurate ;
existence
ex b1 being uSurreal st |.x.|, No_omega^ b1 are_commensurate
proof
consider y being Surreal such that
A2: |.x.|, No_omega^ y are_commensurate by A1, Th36, Lm6;
set c = Unique_No y;
Unique_No y == y by SURREALO:def 10;
then No_omega^ (Unique_No y) == No_omega^ y by Lm5;
then No_omega^ (Unique_No y), No_omega^ y are_commensurate by Th2, Th5;
hence ex b1 being uSurreal st |.x.|, No_omega^ b1 are_commensurate by A2, Th4; :: thesis: verum
end;
uniqueness
for b1, b2 being uSurreal st |.x.|, No_omega^ b1 are_commensurate & |.x.|, No_omega^ b2 are_commensurate holds
b1 = b2
proof
let y1, y2 be uSurreal; :: thesis: ( |.x.|, No_omega^ y1 are_commensurate & |.x.|, No_omega^ y2 are_commensurate implies y1 = y2 )
assume that
A3: |.x.|, No_omega^ y1 are_commensurate and
A4: |.x.|, No_omega^ y2 are_commensurate ; :: thesis: y1 = y2
y1 == y2 by A1, Th36, A3, A4, Lm7;
hence y1 = y2 by SURREALO:50; :: thesis: verum
end;
end;

:: deftheorem Def7 defines omega-exp SURREALC:def 7 :
for x being Surreal st not x == 0_No holds
for b2 being uSurreal holds
( b2 = omega-exp x iff |.x.|, No_omega^ b2 are_commensurate );

theorem Th54: :: SURREALC:54
for x, y being Surreal st x, No_omega^ y are_commensurate holds
ex s being positive Real st |.(x - ((No_omega^ y) * (uReal . s))).| infinitely< x
proof
let x, y be Surreal; :: thesis: ( x, No_omega^ y are_commensurate implies ex s being positive Real st |.(x - ((No_omega^ y) * (uReal . s))).| infinitely< x )
assume A1: x, No_omega^ y are_commensurate ; :: thesis: ex s being positive Real st |.(x - ((No_omega^ y) * (uReal . s))).| infinitely< x
set N = No_omega^ y;
defpred S1[ object ] means ( $1 is Real & ( for r being Real st r = $1 holds
(No_omega^ y) * (uReal . r) <= x ) );
defpred S2[ object ] means ( $1 is Real & ( for r being Real st r = $1 holds
x < (No_omega^ y) * (uReal . r) ) );
A2: for r, s being ExtReal st S1[r] & S2[s] holds
r <= s
proof
let l, r be ExtReal; :: thesis: ( S1[l] & S2[r] implies l <= r )
assume A3: ( S1[l] & S2[r] ) ; :: thesis: l <= r
reconsider L = l, R = r as Real by A3;
A4: 0_No <= No_omega^ y by SURREALI:def 8;
( (No_omega^ y) * (uReal . L) <= x & x < (No_omega^ y) * (uReal . R) ) by A3;
then (No_omega^ y) * (uReal . L) < (No_omega^ y) * (uReal . R) by SURREALO:4;
hence l <= r by SURREALN:51, A4, SURREALR:75; :: thesis: verum
end;
consider s being ExtReal such that
A5: for r being ExtReal st S1[r] holds
r <= s
and
A6: for r being ExtReal st S2[r] holds
s <= r
from XXREAL_1:sch 1(A2);
consider n being positive Nat such that
A7: ( x < (uInt . n) * (No_omega^ y) & No_omega^ y < (uInt . n) * x ) by A1, Th7;
A8: ( uReal . n = uDyadic . n & uDyadic . n = uInt . n ) by SURREALN:46, SURREALN:def 5;
0_No < uReal . (1 / n) by SURREALI:def 8;
then A9: (No_omega^ y) * (uReal . (1 / n)) < (x * (uReal . n)) * (uReal . (1 / n)) by A7, A8, SURREALR:70;
(x * (uReal . n)) * (uReal . (1 / n)) == x by Lm2;
then A10: S1[1 / n] by A9, SURREALO:4;
then A11: 1 / n <= s by A5;
S2[n] by A7, A8;
then A12: s <= n by A6;
( n in REAL & 1 / n in REAL ) by XREAL_0:def 1;
then s in REAL by A11, A12, XXREAL_0:45;
then reconsider s = s as Real ;
reconsider s = s as positive Real by A10, A5;
per cases ( (No_omega^ y) * (uReal . s) <= x or x < (No_omega^ y) * (uReal . s) ) ;
suppose A13: (No_omega^ y) * (uReal . s) <= x ; :: thesis: ex s being positive Real st |.(x - ((No_omega^ y) * (uReal . s))).| infinitely< x
set x1 = x - ((No_omega^ y) * (uReal . s));
take s ; :: thesis: |.(x - ((No_omega^ y) * (uReal . s))).| infinitely< x
A14: 0_No + ((No_omega^ y) * (uReal . s)) <= x by A13;
then A15: 0_No <= x - ((No_omega^ y) * (uReal . s)) by SURREALR:41;
x - ((No_omega^ y) * (uReal . s)) infinitely< x
proof
given r being positive Real such that A16: x <= (x - ((No_omega^ y) * (uReal . s))) * (uReal . r) ; :: according to SURREALC:def 3 :: thesis: contradiction
consider n2 being Nat such that
A17: r < n2 by SEQ_4:3;
set n = n2 + 2;
n2 <= n2 + 2 by NAT_1:11;
then uReal . r <= uReal . (n2 + 2) by SURREALN:51, A17, XXREAL_0:2;
then (x - ((No_omega^ y) * (uReal . s))) * (uReal . r) <= (x - ((No_omega^ y) * (uReal . s))) * (uReal . (n2 + 2)) by A15, SURREALR:75;
then A18: x <= (x - ((No_omega^ y) * (uReal . s))) * (uReal . (n2 + 2)) by A16, SURREALO:4;
A19: - (x * (uReal . (n2 + 2))) = x * (- (uReal . (n2 + 2))) by SURREALR:58;
(x - ((No_omega^ y) * (uReal . s))) * (uReal . (n2 + 2)) == (x * (uReal . (n2 + 2))) + ((- ((No_omega^ y) * (uReal . s))) * (uReal . (n2 + 2))) by SURREALR:67;
then x <= (x * (uReal . (n2 + 2))) + ((- ((No_omega^ y) * (uReal . s))) * (uReal . (n2 + 2))) by A18, SURREALO:4;
then ( x * ((uReal . 1) - (uReal . (n2 + 2))) == (x * (uReal . 1)) - (x * (uReal . (n2 + 2))) & (x * (uReal . 1)) - (x * (uReal . (n2 + 2))) <= (- ((No_omega^ y) * (uReal . s))) * (uReal . (n2 + 2)) ) by A19, SURREALR:67, SURREALR:42, SURREALN:48;
then x * ((uReal . 1) + (- (uReal . (n2 + 2)))) <= (- ((No_omega^ y) * (uReal . s))) * (uReal . (n2 + 2)) by SURREALO:4;
then A20: - ((- ((No_omega^ y) * (uReal . s))) * (uReal . (n2 + 2))) <= - (x * ((uReal . 1) + (- (uReal . (n2 + 2))))) by SURREALR:10;
- (uReal . (n2 + 2)) == uReal . (- (n2 + 2)) by SURREALN:56;
then ( (uReal . 1) + (- (uReal . (n2 + 2))) == (uReal . 1) + (uReal . (- (n2 + 2))) & (uReal . 1) + (uReal . (- (n2 + 2))) == uReal . (1 + (- (n2 + 2))) ) by SURREALR:43, SURREALN:55;
then (uReal . 1) + (- (uReal . (n2 + 2))) == uReal . (1 + (- (n2 + 2))) by SURREALO:4;
then ( - ((uReal . 1) + (- (uReal . (n2 + 2)))) == - (uReal . (1 + (- (n2 + 2)))) & - (uReal . (1 + (- (n2 + 2)))) == uReal . (- (1 + (- (n2 + 2)))) ) by SURREALR:10, SURREALN:56;
then - ((uReal . 1) + (- (uReal . (n2 + 2)))) == uReal . (- (1 + (- (n2 + 2)))) by SURREALO:4;
then A21: ( - (x * ((uReal . 1) + (- (uReal . (n2 + 2))))) = x * (- ((uReal . 1) + (- (uReal . (n2 + 2))))) & x * (- ((uReal . 1) + (- (uReal . (n2 + 2))))) == x * (uReal . (- (1 + (- (n2 + 2))))) ) by SURREALR:58, SURREALR:51;
A22: (n2 + 2) - 1 = n2 + 1 ;
then A23: 0_No <= uReal . (1 / ((n2 + 2) - 1)) by SURREALI:def 8;
- ((- ((No_omega^ y) * (uReal . s))) * (uReal . (n2 + 2))) = - (- (((No_omega^ y) * (uReal . s)) * (uReal . (n2 + 2)))) by SURREALR:58;
then ( ((No_omega^ y) * (uReal . s)) * (uReal . (n2 + 2)) = - (- (((No_omega^ y) * (uReal . s)) * (uReal . (n2 + 2)))) & - (- (((No_omega^ y) * (uReal . s)) * (uReal . (n2 + 2)))) <= x * (uReal . (- (1 + (- (n2 + 2))))) ) by A21, A20, SURREALO:4;
then ( (((No_omega^ y) * (uReal . s)) * (uReal . (n2 + 2))) * (uReal . (1 / ((n2 + 2) - 1))) <= (x * (uReal . ((n2 + 2) - 1))) * (uReal . (1 / ((n2 + 2) - 1))) & (x * (uReal . ((n2 + 2) - 1))) * (uReal . (1 / ((n2 + 2) - 1))) == x ) by A23, SURREALR:75, A22, Lm2;
then A24: (((No_omega^ y) * (uReal . s)) * (uReal . (n2 + 2))) * (uReal . (1 / ((n2 + 2) - 1))) <= x by SURREALO:4;
(((No_omega^ y) * (uReal . s)) * (uReal . (n2 + 2))) * (uReal . (1 / ((n2 + 2) - 1))) == (No_omega^ y) * (uReal . ((s * (n2 + 2)) * (1 / ((n2 + 2) - 1)))) by Lm3;
then S1[(s * (n2 + 2)) * (1 / ((n2 + 2) - 1))] by A24, SURREALO:4;
then (s * (n2 + 2)) * (1 / ((n2 + 2) - 1)) <= s by A5;
then ( (s * (n2 + 2)) * ((1 / ((n2 + 2) - 1)) * ((n2 + 2) - 1)) = ((s * (n2 + 2)) * (1 / ((n2 + 2) - 1))) * ((n2 + 2) - 1) & ((s * (n2 + 2)) * (1 / ((n2 + 2) - 1))) * ((n2 + 2) - 1) <= s * ((n2 + 2) - 1) & (1 / ((n2 + 2) - 1)) * ((n2 + 2) - 1) = 1 ) by A22, XCMPLX_1:106, XREAL_1:64;
then (n2 + 1) + 1 <= n2 + 1 by XREAL_1:68;
hence contradiction by NAT_1:13; :: thesis: verum
end;
hence |.(x - ((No_omega^ y) * (uReal . s))).| infinitely< x by A14, Def6, SURREALR:41; :: thesis: verum
end;
suppose A25: x < (No_omega^ y) * (uReal . s) ; :: thesis: ex s being positive Real st |.(x - ((No_omega^ y) * (uReal . s))).| infinitely< x
set x1 = ((No_omega^ y) * (uReal . s)) - x;
take s ; :: thesis: |.(x - ((No_omega^ y) * (uReal . s))).| infinitely< x
A26: x + 0_No < (No_omega^ y) * (uReal . s) by A25;
then A27: 0_No < ((No_omega^ y) * (uReal . s)) - x by SURREALR:42;
A28: ((No_omega^ y) * (uReal . s)) - x infinitely< x
proof
given r being positive Real such that A29: x <= (((No_omega^ y) * (uReal . s)) - x) * (uReal . r) ; :: according to SURREALC:def 3 :: thesis: contradiction
consider n being Nat such that
A30: r < n by SEQ_4:3;
(((No_omega^ y) * (uReal . s)) - x) * (uReal . r) < (((No_omega^ y) * (uReal . s)) - x) * (uReal . n) by A30, SURREALN:51, A27, SURREALR:70;
then A31: x < (((No_omega^ y) * (uReal . s)) - x) * (uReal . n) by A29, SURREALO:4;
A32: - ((- x) * (uReal . n)) = - (- (x * (uReal . n))) by SURREALR:58;
( (x * (uReal . 1)) + (x * (uReal . n)) == x * ((uReal . 1) + (uReal . n)) & x * ((uReal . 1) + (uReal . n)) == x * (uReal . (1 + n)) ) by SURREALN:55, SURREALR:67, SURREALR:51;
then A33: (x * (uReal . 1)) + (x * (uReal . n)) == x * (uReal . (1 + n)) by SURREALO:4;
(((No_omega^ y) * (uReal . s)) - x) * (uReal . n) == (((No_omega^ y) * (uReal . s)) * (uReal . n)) + ((- x) * (uReal . n)) by SURREALR:67;
then x < (((No_omega^ y) * (uReal . s)) * (uReal . n)) + ((- x) * (uReal . n)) by A31, SURREALO:4;
then (x * (uReal . 1)) - ((- x) * (uReal . n)) < ((No_omega^ y) * (uReal . s)) * (uReal . n) by SURREALR:41, SURREALN:48;
then A34: x * (uReal . (1 + n)) < ((No_omega^ y) * (uReal . s)) * (uReal . n) by A32, A33, SURREALO:4;
0_No < uReal . (1 / (n + 1)) by SURREALI:def 8;
then A35: (x * (uReal . (1 + n))) * (uReal . (1 / (n + 1))) < (((No_omega^ y) * (uReal . s)) * (uReal . n)) * (uReal . (1 / (n + 1))) by A34, SURREALR:70;
(x * (uReal . (1 + n))) * (uReal . (1 / (n + 1))) == x by Lm2;
then A36: x < (((No_omega^ y) * (uReal . s)) * (uReal . n)) * (uReal . (1 / (n + 1))) by A35, SURREALO:4;
(((No_omega^ y) * (uReal . s)) * (uReal . n)) * (uReal . (1 / (n + 1))) == (No_omega^ y) * (uReal . ((s * n) * (1 / (n + 1)))) by Lm3;
then S2[(s * n) * (1 / (n + 1))] by A36, SURREALO:4;
then ( (s * n) * ((1 / (n + 1)) * (n + 1)) = ((s * n) * (1 / (n + 1))) * (n + 1) & ((s * n) * (1 / (n + 1))) * (n + 1) >= s * (n + 1) & (1 / (n + 1)) * (n + 1) = 1 ) by A6, XCMPLX_1:106, XREAL_1:64;
then n >= n + 1 by XREAL_1:68;
hence contradiction by NAT_1:13; :: thesis: verum
end;
A37: not ((No_omega^ y) * (uReal . s)) - x == 0_No by A26, SURREALR:42;
- (((No_omega^ y) * (uReal . s)) - x) = (- ((No_omega^ y) * (uReal . s))) + (- (- x)) by SURREALR:40
.= x + (- ((No_omega^ y) * (uReal . s))) ;
then ( ((No_omega^ y) * (uReal . s)) - x = |.(((No_omega^ y) * (uReal . s)) - x).| & |.(((No_omega^ y) * (uReal . s)) - x).| = |.(x + (- ((No_omega^ y) * (uReal . s)))).| ) by A26, SURREALR:42, A37, Th39, Def6;
hence |.(x - ((No_omega^ y) * (uReal . s))).| infinitely< x by A28; :: thesis: verum
end;
end;
end;

theorem :: SURREALC:55
for x, y being Surreal
for r being Real st x is positive & |.(x - ((No_omega^ y) * (uReal . r))).| infinitely< x holds
r is positive
proof
let x, y be Surreal; :: thesis: for r being Real st x is positive & |.(x - ((No_omega^ y) * (uReal . r))).| infinitely< x holds
r is positive

let r be Real; :: thesis: ( x is positive & |.(x - ((No_omega^ y) * (uReal . r))).| infinitely< x implies r is positive )
assume that
A1: ( x is positive & |.(x - ((No_omega^ y) * (uReal . r))).| infinitely< x ) and
A2: not r is positive ; :: thesis: contradiction
A3: 0_No <= x by A1;
A4: 0_No <= No_omega^ y by SURREALI:def 8;
uReal . r <= 0_No by A2, SURREALN:51, SURREALN:47;
then ( (No_omega^ y) * (uReal . r) <= (No_omega^ y) * 0_No & (No_omega^ y) * 0_No = 0_No ) by A4, SURREALR:75;
then - 0_No <= - ((No_omega^ y) * (uReal . r)) by SURREALR:10;
then A5: ( x + 0_No <= x + (- ((No_omega^ y) * (uReal . r))) & 0_No + 0_No <= x + (- ((No_omega^ y) * (uReal . r))) ) by A3, SURREALR:43;
|.(x + (- ((No_omega^ y) * (uReal . r)))).| < x by A1, Th9;
hence contradiction by A5, Def6; :: thesis: verum
end;

Lm8: for x, y being Surreal
for r1, r2 being Real st x, No_omega^ y are_commensurate & |.(x - ((No_omega^ y) * (uReal . r1))).| infinitely< x & |.(x - ((No_omega^ y) * (uReal . r2))).| infinitely< x holds
r2 <= r1

proof
let x, y be Surreal; :: thesis: for r1, r2 being Real st x, No_omega^ y are_commensurate & |.(x - ((No_omega^ y) * (uReal . r1))).| infinitely< x & |.(x - ((No_omega^ y) * (uReal . r2))).| infinitely< x holds
r2 <= r1

let r1, r2 be Real; :: thesis: ( x, No_omega^ y are_commensurate & |.(x - ((No_omega^ y) * (uReal . r1))).| infinitely< x & |.(x - ((No_omega^ y) * (uReal . r2))).| infinitely< x implies r2 <= r1 )
set N = No_omega^ y;
assume that
A1: x, No_omega^ y are_commensurate and
A2: ( |.(x - ((No_omega^ y) * (uReal . r1))).| infinitely< x & |.(x - ((No_omega^ y) * (uReal . r2))).| infinitely< x ) and
A3: r1 < r2 ; :: thesis: contradiction
A4: |.((x - ((No_omega^ y) * (uReal . r1))) - (x - ((No_omega^ y) * (uReal . r2)))).| infinitely< x by A2, Th43;
A5: (x + (- ((No_omega^ y) * (uReal . r1)))) + (- (x + (- ((No_omega^ y) * (uReal . r2))))) = (x + (- ((No_omega^ y) * (uReal . r1)))) + ((- x) + (- (- ((No_omega^ y) * (uReal . r2))))) by SURREALR:40
.= x + ((- ((No_omega^ y) * (uReal . r1))) + (((No_omega^ y) * (uReal . r2)) + (- x))) by SURREALR:37
.= x + (((- ((No_omega^ y) * (uReal . r1))) + ((No_omega^ y) * (uReal . r2))) + (- x)) by SURREALR:37
.= (x + (- x)) + ((- ((No_omega^ y) * (uReal . r1))) + ((No_omega^ y) * (uReal . r2))) by SURREALR:37 ;
A6: x - x == 0_No by SURREALR:39;
( - ((No_omega^ y) * (uReal . r1)) = (No_omega^ y) * (- (uReal . r1)) & (No_omega^ y) * (- (uReal . r1)) == (No_omega^ y) * (uReal . (- r1)) ) by SURREALN:56, SURREALR:51, SURREALR:58;
then ( (- ((No_omega^ y) * (uReal . r1))) + ((No_omega^ y) * (uReal . r2)) == ((No_omega^ y) * (uReal . (- r1))) + ((No_omega^ y) * (uReal . r2)) & ((No_omega^ y) * (uReal . (- r1))) + ((No_omega^ y) * (uReal . r2)) == (No_omega^ y) * ((uReal . (- r1)) + (uReal . r2)) ) by SURREALR:43, SURREALR:67;
then ( (- ((No_omega^ y) * (uReal . r1))) + ((No_omega^ y) * (uReal . r2)) == (No_omega^ y) * ((uReal . (- r1)) + (uReal . r2)) & (No_omega^ y) * ((uReal . (- r1)) + (uReal . r2)) == (No_omega^ y) * (uReal . ((- r1) + r2)) ) by SURREALN:55, SURREALR:51, SURREALO:4;
then (- ((No_omega^ y) * (uReal . r1))) + ((No_omega^ y) * (uReal . r2)) == (No_omega^ y) * (uReal . ((- r1) + r2)) by SURREALO:4;
then ( (x + (- ((No_omega^ y) * (uReal . r1)))) + (- (x + (- ((No_omega^ y) * (uReal . r2))))) == 0_No + ((No_omega^ y) * (uReal . ((- r1) + r2))) & 0_No + ((No_omega^ y) * (uReal . ((- r1) + r2))) = (No_omega^ y) * (uReal . ((- r1) + r2)) ) by A5, A6, SURREALR:43;
then A7: |.((No_omega^ y) * (uReal . ((- r1) + r2))).| infinitely< x by Th48, A4, Th17;
consider n being positive Nat such that
A8: x < (No_omega^ y) * (uInt . n) by A1;
A9: ( uReal . n = uDyadic . n & uDyadic . n = uInt . n ) by SURREALN:46, SURREALN:def 5;
A10: 0 < r2 - r1 by A3, XREAL_1:50;
A11: 0_No < uReal . (r2 - r1) by A3, XREAL_1:50, SURREALN:47, SURREALN:51;
0_No < No_omega^ y by SURREALI:def 8;
then 0_No <= (No_omega^ y) * (uReal . (r2 - r1)) by A11, SURREALR:72;
then A12: |.((No_omega^ y) * (uReal . (r2 - r1))).| = (No_omega^ y) * (uReal . (r2 - r1)) by Def6;
(r2 - r1) * (n / (r2 - r1)) = n by A10, XCMPLX_1:87;
then ((No_omega^ y) * (uReal . (r2 - r1))) * (uReal . (n / (r2 - r1))) == (No_omega^ y) * (uReal . n) by Lm1;
then (No_omega^ y) * (uReal . n) <= x by A12, A7, A10, SURREALO:4;
hence contradiction by A8, A9; :: thesis: verum
end;

theorem Th56: :: SURREALC:56
for x being Surreal st not x == 0_No holds
omega-exp x = omega-exp (- x)
proof
let x be Surreal; :: thesis: ( not x == 0_No implies omega-exp x = omega-exp (- x) )
assume A1: not x == 0_No ; :: thesis: omega-exp x = omega-exp (- x)
then A2: |.x.|, No_omega^ (omega-exp x) are_commensurate by Def7;
A3: |.x.| = |.(- x).| by A1, Th39;
not - x == 0_No by A1, SURREALR:24;
hence omega-exp x = omega-exp (- x) by A2, A3, Def7; :: thesis: verum
end;

Lm9: for x, y being Surreal
for r1, r2 being Real st |.x.|, No_omega^ y are_commensurate & |.(x - ((No_omega^ y) * (uReal . r1))).| infinitely< |.x.| & |.(x - ((No_omega^ y) * (uReal . r2))).| infinitely< |.x.| holds
r2 = r1

proof
let x, y be Surreal; :: thesis: for r1, r2 being Real st |.x.|, No_omega^ y are_commensurate & |.(x - ((No_omega^ y) * (uReal . r1))).| infinitely< |.x.| & |.(x - ((No_omega^ y) * (uReal . r2))).| infinitely< |.x.| holds
r2 = r1

let r1, r2 be Real; :: thesis: ( |.x.|, No_omega^ y are_commensurate & |.(x - ((No_omega^ y) * (uReal . r1))).| infinitely< |.x.| & |.(x - ((No_omega^ y) * (uReal . r2))).| infinitely< |.x.| implies r2 = r1 )
set X = |.x.|;
set N = No_omega^ y;
assume A1: ( |.x.|, No_omega^ y are_commensurate & |.(x - ((No_omega^ y) * (uReal . r1))).| infinitely< |.x.| & |.(x - ((No_omega^ y) * (uReal . r2))).| infinitely< |.x.| ) ; :: thesis: r2 = r1
reconsider X = |.x.| as positive Surreal by A1, Th3;
per cases ( X = x or X = - x ) by Def6;
suppose X = x ; :: thesis: r2 = r1
then ( r1 <= r2 & r2 <= r1 ) by A1, Lm8;
hence r2 = r1 by XXREAL_0:1; :: thesis: verum
end;
suppose A2: X = - x ; :: thesis: r2 = r1
then A3: x + (- ((No_omega^ y) * (uReal . r1))) = (- X) + (- ((No_omega^ y) * (uReal . r1)))
.= - (X + ((No_omega^ y) * (uReal . r1))) by SURREALR:40 ;
- (uReal . (- r1)) == uReal . (- (- r1)) by SURREALN:56;
then ( - ((No_omega^ y) * (uReal . (- r1))) = (No_omega^ y) * (- (uReal . (- r1))) & (No_omega^ y) * (- (uReal . (- r1))) == (No_omega^ y) * (uReal . r1) ) by SURREALR:51, SURREALR:58;
then X + ((No_omega^ y) * (uReal . r1)) == X + (- ((No_omega^ y) * (uReal . (- r1)))) by SURREALR:43;
then x + (- ((No_omega^ y) * (uReal . r1))) == - (X + (- ((No_omega^ y) * (uReal . (- r1))))) by A3, SURREALR:10;
then ( |.(x + (- ((No_omega^ y) * (uReal . r1)))).| == |.(- (X + (- ((No_omega^ y) * (uReal . (- r1)))))).| & |.(- (X + (- ((No_omega^ y) * (uReal . (- r1)))))).| == |.(X + (- ((No_omega^ y) * (uReal . (- r1))))).| ) by Th48, Th39, Th38;
then |.(x + (- ((No_omega^ y) * (uReal . r1)))).| == |.(X + (- ((No_omega^ y) * (uReal . (- r1))))).| by SURREALO:4;
then A4: |.(X - ((No_omega^ y) * (uReal . (- r1)))).| infinitely< X by A1, Th17;
A5: x + (- ((No_omega^ y) * (uReal . r2))) = (- X) + (- ((No_omega^ y) * (uReal . r2))) by A2
.= - (X + ((No_omega^ y) * (uReal . r2))) by SURREALR:40 ;
- (uReal . (- r2)) == uReal . (- (- r2)) by SURREALN:56;
then ( - ((No_omega^ y) * (uReal . (- r2))) = (No_omega^ y) * (- (uReal . (- r2))) & (No_omega^ y) * (- (uReal . (- r2))) == (No_omega^ y) * (uReal . r2) ) by SURREALR:51, SURREALR:58;
then X + ((No_omega^ y) * (uReal . r2)) == X + (- ((No_omega^ y) * (uReal . (- r2)))) by SURREALR:43;
then x + (- ((No_omega^ y) * (uReal . r2))) == - (X + (- ((No_omega^ y) * (uReal . (- r2))))) by A5, SURREALR:10;
then ( |.(x + (- ((No_omega^ y) * (uReal . r2)))).| == |.(- (X + (- ((No_omega^ y) * (uReal . (- r2)))))).| & |.(- (X + (- ((No_omega^ y) * (uReal . (- r2)))))).| == |.(X + (- ((No_omega^ y) * (uReal . (- r2))))).| ) by Th48, Th39, Th38;
then |.(x + (- ((No_omega^ y) * (uReal . r2)))).| == |.(X + (- ((No_omega^ y) * (uReal . (- r2))))).| by SURREALO:4;
then |.(X - ((No_omega^ y) * (uReal . (- r2)))).| infinitely< X by A1, Th17;
then ( - r1 <= - r2 & - r2 <= - r1 ) by A4, A1, Lm8;
then - r1 = - r2 by XXREAL_0:1;
hence r2 = r1 ; :: thesis: verum
end;
end;
end;

definition
let x be Surreal;
assume A1: not x == 0_No ;
func omega-r x -> non zero Real means :Def8: :: SURREALC:def 8
|.(x - ((No_omega^ (omega-exp x)) * (uReal . it))).| infinitely< |.x.|;
existence
ex b1 being non zero Real st |.(x - ((No_omega^ (omega-exp x)) * (uReal . b1))).| infinitely< |.x.|
proof
reconsider X = |.x.| as positive Surreal by A1, Th36;
set y = omega-exp X;
A2: X = |.X.| by Th31, Def6;
not - x == 0_No by A1, SURREALR:24;
then not X == 0_No by A1, Def6;
then X, No_omega^ (omega-exp X) are_commensurate by A2, Def7;
then consider s being positive Real such that
A3: |.(X - ((No_omega^ (omega-exp X)) * (uReal . s))).| infinitely< X by Th54;
per cases ( X = x or X = - x ) by Def6;
suppose A4: X = x ; :: thesis: ex b1 being non zero Real st |.(x - ((No_omega^ (omega-exp x)) * (uReal . b1))).| infinitely< |.x.|
take s ; :: thesis: |.(x - ((No_omega^ (omega-exp x)) * (uReal . s))).| infinitely< |.x.|
thus |.(x - ((No_omega^ (omega-exp x)) * (uReal . s))).| infinitely< |.x.| by A3, A4; :: thesis: verum
end;
suppose A5: X = - x ; :: thesis: ex b1 being non zero Real st |.(x - ((No_omega^ (omega-exp x)) * (uReal . b1))).| infinitely< |.x.|
then A6: X + (- ((No_omega^ (omega-exp X)) * (uReal . s))) = - (x + ((No_omega^ (omega-exp X)) * (uReal . s))) by SURREALR:40;
take - s ; :: thesis: |.(x - ((No_omega^ (omega-exp x)) * (uReal . (- s)))).| infinitely< |.x.|
- (uReal . (- s)) == uReal . (- (- s)) by SURREALN:56;
then ( - ((No_omega^ (omega-exp X)) * (uReal . (- s))) = (No_omega^ (omega-exp X)) * (- (uReal . (- s))) & (No_omega^ (omega-exp X)) * (- (uReal . (- s))) == (No_omega^ (omega-exp X)) * (uReal . s) ) by SURREALR:51, SURREALR:58;
then x + ((No_omega^ (omega-exp X)) * (uReal . s)) == x + (- ((No_omega^ (omega-exp X)) * (uReal . (- s)))) by SURREALR:43;
then X + (- ((No_omega^ (omega-exp X)) * (uReal . s))) == - (x + (- ((No_omega^ (omega-exp X)) * (uReal . (- s))))) by SURREALR:10, A6;
then ( |.(X + (- ((No_omega^ (omega-exp X)) * (uReal . s)))).| == |.(- (x + (- ((No_omega^ (omega-exp X)) * (uReal . (- s)))))).| & |.(- (x + (- ((No_omega^ (omega-exp X)) * (uReal . (- s)))))).| == |.(x + (- ((No_omega^ (omega-exp X)) * (uReal . (- s))))).| ) by Th48, Th39, Th38;
then |.(X + (- ((No_omega^ (omega-exp X)) * (uReal . s)))).| == |.(x + (- ((No_omega^ (omega-exp X)) * (uReal . (- s))))).| by SURREALO:4;
then |.(x + (- ((No_omega^ (omega-exp X)) * (uReal . (- s))))).| infinitely< X by A3, Th17;
hence |.(x - ((No_omega^ (omega-exp x)) * (uReal . (- s)))).| infinitely< |.x.| by A5, A1, Th56; :: thesis: verum
end;
end;
end;
uniqueness
for b1, b2 being non zero Real st |.(x - ((No_omega^ (omega-exp x)) * (uReal . b1))).| infinitely< |.x.| & |.(x - ((No_omega^ (omega-exp x)) * (uReal . b2))).| infinitely< |.x.| holds
b1 = b2
proof
let r1, r2 be non zero Real; :: thesis: ( |.(x - ((No_omega^ (omega-exp x)) * (uReal . r1))).| infinitely< |.x.| & |.(x - ((No_omega^ (omega-exp x)) * (uReal . r2))).| infinitely< |.x.| implies r1 = r2 )
assume that
A7: |.(x - ((No_omega^ (omega-exp x)) * (uReal . r1))).| infinitely< |.x.| and
A8: |.(x - ((No_omega^ (omega-exp x)) * (uReal . r2))).| infinitely< |.x.| ; :: thesis: r1 = r2
|.x.|, No_omega^ (omega-exp x) are_commensurate by A1, Def7;
hence r1 = r2 by A7, A8, Lm9; :: thesis: verum
end;
end;

:: deftheorem Def8 defines omega-r SURREALC:def 8 :
for x being Surreal st not x == 0_No holds
for b2 being non zero Real holds
( b2 = omega-r x iff |.(x - ((No_omega^ (omega-exp x)) * (uReal . b2))).| infinitely< |.x.| );

theorem Th57: :: SURREALC:57
for x, y being Surreal
for n being positive Nat st |.y.| * (uReal . ((n + 1) / n)) < |.x.| holds
|.x.|,|.(x + y).| are_commensurate
proof
let x, y be Surreal; :: thesis: for n being positive Nat st |.y.| * (uReal . ((n + 1) / n)) < |.x.| holds
|.x.|,|.(x + y).| are_commensurate

let n be positive Nat; :: thesis: ( |.y.| * (uReal . ((n + 1) / n)) < |.x.| implies |.x.|,|.(x + y).| are_commensurate )
assume A1: |.y.| * (uReal . ((n + 1) / n)) < |.x.| ; :: thesis: |.x.|,|.(x + y).| are_commensurate
( 0_No <= |.y.| & 0_No <= uReal . ((n + 1) / n) ) by SURREALI:def 8, Th31;
then ( 0_No = 0_No * |.y.| & 0_No * |.y.| <= (uReal . ((n + 1) / n)) * |.y.| ) by SURREALR:75;
then A2: 0_No < |.x.| by A1, SURREALO:4;
A3: 0_No < uReal . (n / (n + 1)) by SURREALI:def 8;
A4: 1 / ((n + 1) / n) = n / (n + 1) by XCMPLX_1:57;
( |.y.| == (|.y.| * (uReal . ((n + 1) / n))) * (uReal . (n / (n + 1))) & (|.y.| * (uReal . ((n + 1) / n))) * (uReal . (n / (n + 1))) < |.x.| * (uReal . (n / (n + 1))) ) by A1, A4, Lm2, A3, SURREALR:70;
then A5: ( |.(- y).| == |.y.| & |.y.| < |.x.| * (uReal . (n / (n + 1))) ) by SURREALO:4, Th39, Th38;
then |.(- y).| < |.x.| * (uReal . (n / (n + 1))) by SURREALO:4;
then - (|.x.| * (uReal . (n / (n + 1)))) < - |.(- y).| by SURREALR:10;
then A6: |.x.| + (- (|.x.| * (uReal . (n / (n + 1))))) < |.x.| + (- |.(- y).|) by SURREALR:44;
A7: ( - (|.x.| * (uReal . (n / (n + 1)))) = |.x.| * (- (uReal . (n / (n + 1)))) & |.x.| * (- (uReal . (n / (n + 1)))) == |.x.| * (uReal . (- (n / (n + 1)))) ) by SURREALN:56, SURREALR:51, SURREALR:58;
1 - (n / (n + 1)) = ((n + 1) / (n + 1)) - (n / (n + 1)) by XCMPLX_1:60
.= ((n + 1) - n) / (n + 1) by XCMPLX_1:120 ;
then A8: 1 + (- (n / (n + 1))) = 1 / (n + 1) ;
A9: |.x.| = |.x.| * (uReal . 1) by SURREALN:48;
( |.x.| + (- (|.x.| * (uReal . (n / (n + 1))))) == (|.x.| * (uReal . 1)) + (|.x.| * (uReal . (- (n / (n + 1))))) & (|.x.| * (uReal . 1)) + (|.x.| * (uReal . (- (n / (n + 1))))) == |.x.| * ((uReal . 1) + (uReal . (- (n / (n + 1))))) ) by A7, SURREALR:43, SURREALR:67, SURREALN:48;
then ( |.x.| + (- (|.x.| * (uReal . (n / (n + 1))))) == |.x.| * ((uReal . 1) + (uReal . (- (n / (n + 1))))) & |.x.| * ((uReal . 1) + (uReal . (- (n / (n + 1))))) == |.x.| * (uReal . (1 / (n + 1))) ) by A8, SURREALN:55, SURREALR:51, SURREALO:4;
then A10: |.x.| + (- (|.x.| * (uReal . (n / (n + 1))))) == |.x.| * (uReal . (1 / (n + 1))) by SURREALO:4;
n < n + 1 by NAT_1:13;
then n / (n + 1) < 1 by XREAL_1:189;
then ( |.x.| * (uReal . (n / (n + 1))) <= |.x.| * 1_No & |.x.| * 1_No = |.x.| ) by SURREALN:48, SURREALN:51, A2, SURREALR:70;
then A11: ( |.(- y).| == |.y.| & |.y.| < |.x.| ) by A5, SURREALO:4;
then ( |.(- y).| + 0_No = |.(- y).| & |.(- y).| < |.x.| ) by SURREALO:4;
then 0_No <= |.x.| - |.(- y).| by SURREALR:42;
then A12: |.(|.x.| + (- |.(- y).|)).| = |.x.| + (- |.(- y).|) by Def6;
A13: |.x.| * (uReal . (1 / (n + 1))) < |.(|.x.| + (- |.(- y).|)).| by A10, A12, A6, SURREALO:4;
A14: ( uInt . (n + 1) = uDyadic . (n + 1) & uDyadic . (n + 1) = uReal . (n + 1) ) by SURREALN:46, SURREALN:def 5;
A15: ( uInt . 2 = uDyadic . 2 & uDyadic . 2 = uReal . 2 ) by SURREALN:46, SURREALN:def 5;
A16: 0_No < uReal . (n + 1) by SURREALI:def 8;
A17: 1 / (1 / (n + 1)) = n + 1 by XCMPLX_1:56;
|.(|.x.| - |.(- y).|).| <= |.(x - (- y)).| by Th49;
then |.x.| * (uReal . (1 / (n + 1))) < |.(x + y).| by A13, SURREALO:4;
then ( |.x.| == (|.x.| * (uReal . (1 / (n + 1)))) * (uReal . (n + 1)) & (|.x.| * (uReal . (1 / (n + 1)))) * (uReal . (n + 1)) < |.(x + y).| * (uReal . (n + 1)) ) by A16, SURREALR:70, A17, Lm2;
then A18: |.x.| < |.(x + y).| * (uInt . (n + 1)) by SURREALO:4, A14;
A19: |.y.| + |.x.| < |.x.| + |.x.| by A11, SURREALR:44;
(uReal . 1) + (uReal . 1) == uReal . (1 + 1) by SURREALN:55;
then ( |.x.| + |.x.| == |.x.| * ((uReal . 1) + (uReal . 1)) & |.x.| * ((uReal . 1) + (uReal . 1)) == |.x.| * (uReal . 2) ) by A9, SURREALR:67, SURREALR:51;
then |.x.| + |.x.| == |.x.| * (uReal . 2) by SURREALO:4;
then A20: |.y.| + |.x.| < |.x.| * (uReal . 2) by A19, SURREALO:4;
|.(x + y).| <= |.x.| + |.y.| by Th37;
then |.(x + y).| < |.x.| * (uInt . 2) by A15, A20, SURREALO:4;
hence |.x.|,|.(x + y).| are_commensurate by A18; :: thesis: verum
end;

theorem :: SURREALC:58
for x being Surreal st |.x.| is positive holds
not x == 0_No by Def6;

theorem Th59: :: SURREALC:59
for x, y being Surreal
for r, r1, r2 being Real st x * (uReal . r1) < y * (uReal . r2) & 0 < r holds
x * (uReal . (r1 * r)) < y * (uReal . (r2 * r))
proof
let x, y be Surreal; :: thesis: for r, r1, r2 being Real st x * (uReal . r1) < y * (uReal . r2) & 0 < r holds
x * (uReal . (r1 * r)) < y * (uReal . (r2 * r))

let r, r1, r2 be Real; :: thesis: ( x * (uReal . r1) < y * (uReal . r2) & 0 < r implies x * (uReal . (r1 * r)) < y * (uReal . (r2 * r)) )
assume A1: ( x * (uReal . r1) < y * (uReal . r2) & 0 < r ) ; :: thesis: x * (uReal . (r1 * r)) < y * (uReal . (r2 * r))
then 0_No < uReal . r by SURREALI:def 8;
then A2: (x * (uReal . r1)) * (uReal . r) < (y * (uReal . r2)) * (uReal . r) by A1, SURREALR:70;
(x * (uReal . r1)) * (uReal . r) == x * (uReal . (r1 * r)) by Lm1;
then ( x * (uReal . (r1 * r)) < (y * (uReal . r2)) * (uReal . r) & (y * (uReal . r2)) * (uReal . r) == y * (uReal . (r2 * r)) ) by A2, SURREALO:4, Lm1;
hence x * (uReal . (r1 * r)) < y * (uReal . (r2 * r)) by SURREALO:4; :: thesis: verum
end;

theorem :: SURREALC:60
for x, y being Surreal
for r, r1, r2 being Real st x * (uReal . r1) <= y * (uReal . r2) & 0 <= r holds
x * (uReal . (r1 * r)) <= y * (uReal . (r2 * r))
proof
let x, y be Surreal; :: thesis: for r, r1, r2 being Real st x * (uReal . r1) <= y * (uReal . r2) & 0 <= r holds
x * (uReal . (r1 * r)) <= y * (uReal . (r2 * r))

let r, r1, r2 be Real; :: thesis: ( x * (uReal . r1) <= y * (uReal . r2) & 0 <= r implies x * (uReal . (r1 * r)) <= y * (uReal . (r2 * r)) )
assume A1: ( x * (uReal . r1) <= y * (uReal . r2) & 0 <= r ) ; :: thesis: x * (uReal . (r1 * r)) <= y * (uReal . (r2 * r))
then 0_No <= uReal . r by SURREALN:51, SURREALN:47;
then A2: (x * (uReal . r1)) * (uReal . r) <= (y * (uReal . r2)) * (uReal . r) by A1, SURREALR:75;
(x * (uReal . r1)) * (uReal . r) == x * (uReal . (r1 * r)) by Lm1;
then ( x * (uReal . (r1 * r)) <= (y * (uReal . r2)) * (uReal . r) & (y * (uReal . r2)) * (uReal . r) == y * (uReal . (r2 * r)) ) by A2, SURREALO:4, Lm1;
hence x * (uReal . (r1 * r)) <= y * (uReal . (r2 * r)) by SURREALO:4; :: thesis: verum
end;

theorem Th61: :: SURREALC:61
for x, y being Surreal st not x == 0_No & not y == 0_No holds
( omega-exp x = omega-exp y iff |.x.|,|.y.| are_commensurate )
proof
let x, y be Surreal; :: thesis: ( not x == 0_No & not y == 0_No implies ( omega-exp x = omega-exp y iff |.x.|,|.y.| are_commensurate ) )
assume A1: ( not x == 0_No & not y == 0_No ) ; :: thesis: ( omega-exp x = omega-exp y iff |.x.|,|.y.| are_commensurate )
then A2: ( |.x.|, No_omega^ (omega-exp x) are_commensurate & |.y.|, No_omega^ (omega-exp y) are_commensurate ) by Def7;
thus ( omega-exp x = omega-exp y implies |.x.|,|.y.| are_commensurate ) by A2, Th4; :: thesis: ( |.x.|,|.y.| are_commensurate implies omega-exp x = omega-exp y )
assume |.x.|,|.y.| are_commensurate ; :: thesis: omega-exp x = omega-exp y
then |.y.|, No_omega^ (omega-exp x) are_commensurate by A2, Th4;
hence omega-exp x = omega-exp y by A1, Def7; :: thesis: verum
end;

theorem Th62: :: SURREALC:62
for x, y being Surreal st not x == 0_No & not x + y == 0_No & omega-exp x = omega-exp (x + y) & omega-r x = omega-r (x + y) holds
|.y.| infinitely< |.x.|
proof
let x, y be Surreal; :: thesis: ( not x == 0_No & not x + y == 0_No & omega-exp x = omega-exp (x + y) & omega-r x = omega-r (x + y) implies |.y.| infinitely< |.x.| )
set r = omega-r x;
set w = omega-exp x;
set N = No_omega^ (omega-exp x);
set R = uReal . (omega-r x);
assume that
A1: ( not x == 0_No & not x + y == 0_No ) and
A2: ( omega-exp x = omega-exp (x + y) & omega-r x = omega-r (x + y) ) ; :: thesis: |.y.| infinitely< |.x.|
let s be positive Real; :: according to SURREALC:def 3 :: thesis: |.y.| * (uReal . s) < |.x.|
A3: ( |.x.|, No_omega^ (omega-exp x) are_commensurate & |.(x + y).|, No_omega^ (omega-exp x) are_commensurate ) by A1, A2, Def7;
A4: 0_No <= uReal . s by SURREALI:def 8;
A5: |.(x - ((No_omega^ (omega-exp x)) * (uReal . (omega-r x)))).| infinitely< |.x.| by A1, Def8;
|.((x + y) - ((No_omega^ (omega-exp x)) * (uReal . (omega-r x)))).| infinitely< |.(x + y).| by A1, A2, Def8;
then A6: |.((x + y) + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))).| infinitely< |.x.| by Th16, A3, Th4;
((No_omega^ (omega-exp x)) * (uReal . (omega-r x))) - ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))) == 0_No by SURREALR:39;
then A7: ( (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x)))) + (((No_omega^ (omega-exp x)) * (uReal . (omega-r x))) + (- x)) = ((- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x)))) + ((No_omega^ (omega-exp x)) * (uReal . (omega-r x)))) + (- x) & ((- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x)))) + ((No_omega^ (omega-exp x)) * (uReal . (omega-r x)))) + (- x) == 0_No + (- x) & 0_No + (- x) = - x ) by SURREALR:43, SURREALR:37;
A8: x - x == 0_No by SURREALR:39;
(x + y) + (- x) = y + (x + (- x)) by SURREALR:37;
then A9: ( (x + y) + (- x) == y + 0_No & y + 0_No = y ) by A8, SURREALR:43;
- (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x)))) = (No_omega^ (omega-exp x)) * (uReal . (omega-r x)) ;
then - (x + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))) = ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))) + (- x) by SURREALR:40;
then ( ((x + y) + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))) + (- (x + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x)))))) = (x + y) + ((- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x)))) + (((No_omega^ (omega-exp x)) * (uReal . (omega-r x))) + (- x))) & (x + y) + ((- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x)))) + (((No_omega^ (omega-exp x)) * (uReal . (omega-r x))) + (- x))) == (x + y) + (- x) ) by A7, SURREALR:43, SURREALR:37;
then ((x + y) + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))) + (- (x + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x)))))) == y by A9, SURREALO:4;
then ( |.y.| == |.(((x + y) + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))) + (- (x + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))))).| & |.(((x + y) + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))) + (- (x + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))))).| <= |.((x + y) + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))).| + |.(- (x + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x)))))).| ) by Th48, Th37;
then |.y.| <= |.((x + y) + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))).| + |.(- (x + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x)))))).| by SURREALO:4;
then ( |.y.| * (uReal . s) <= (|.((x + y) + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))).| + |.(- (x + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x)))))).|) * (uReal . s) & (|.((x + y) + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))).| + |.(- (x + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x)))))).|) * (uReal . s) == (|.((x + y) + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))).| * (uReal . s)) + (|.(- (x + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x)))))).| * (uReal . s)) ) by A4, SURREALR:67, SURREALR:75;
then A10: |.y.| * (uReal . s) <= (|.((x + y) + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))).| * (uReal . s)) + (|.(- (x + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x)))))).| * (uReal . s)) by SURREALO:4;
A11: |.x.| = |.x.| * (uReal . 1) by SURREALN:48;
|.((x + y) + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))).| * (uReal . (s * 2)) < |.x.| by A6;
then A12: |.((x + y) + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))).| * (uReal . ((s * 2) * (1 / 2))) <= |.x.| * (uReal . (1 * (1 / 2))) by Th59, A11;
|.(x + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))).| * (uReal . (s * 2)) < |.x.| by A5;
then A13: |.(x + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))).| * (uReal . ((s * 2) * (1 / 2))) < |.x.| * (uReal . (1 * (1 / 2))) by Th59, A11;
|.(x + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))).| * (uReal . s) == |.(- (x + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x)))))).| * (uReal . s) by SURREALR:51, Th40;
then |.(- (x + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x)))))).| * (uReal . ((s * 2) * (1 / 2))) < |.x.| * (uReal . (1 * (1 / 2))) by A13, SURREALO:4;
then A14: (|.((x + y) + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))).| * (uReal . s)) + (|.(- (x + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x)))))).| * (uReal . s)) < (|.x.| * (uReal . (1 * (1 / 2)))) + (|.x.| * (uReal . (1 * (1 / 2)))) by A12, SURREALR:44;
( (|.x.| * (uReal . (1 * (1 / 2)))) + (|.x.| * (uReal . (1 * (1 / 2)))) == |.x.| * ((uReal . (1 / 2)) + (uReal . (1 / 2))) & |.x.| * ((uReal . (1 / 2)) + (uReal . (1 / 2))) == |.x.| * (uReal . ((1 / 2) + (1 / 2))) ) by SURREALR:67, SURREALR:51, SURREALN:55;
then ( (|.x.| * (uReal . (1 * (1 / 2)))) + (|.x.| * (uReal . (1 * (1 / 2)))) == |.x.| * (uReal . 1) & |.x.| * (uReal . 1) = |.x.| ) by SURREALN:48, SURREALO:4;
then (|.((x + y) + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))).| * (uReal . s)) + (|.(- (x + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x)))))).| * (uReal . s)) < |.x.| by A14, SURREALO:4;
hence |.y.| * (uReal . s) < |.x.| by A10, SURREALO:4; :: thesis: verum
end;

theorem Th63: :: SURREALC:63
for x, y being Surreal st |.y.| infinitely< |.x.| holds
( not x == 0_No & not x + y == 0_No & omega-exp x = omega-exp (x + y) & omega-r x = omega-r (x + y) )
proof
let x, y be Surreal; :: thesis: ( |.y.| infinitely< |.x.| implies ( not x == 0_No & not x + y == 0_No & omega-exp x = omega-exp (x + y) & omega-r x = omega-r (x + y) ) )
assume A1: |.y.| infinitely< |.x.| ; :: thesis: ( not x == 0_No & not x + y == 0_No & omega-exp x = omega-exp (x + y) & omega-r x = omega-r (x + y) )
hence A2: ( not x == 0_No & not x + y == 0_No ) by Th45, Th47; :: thesis: ( omega-exp x = omega-exp (x + y) & omega-r x = omega-r (x + y) )
A3: |.y.| * (uReal . ((2 + 1) / 2)) < |.x.| by A1;
then |.x.|,|.(x + y).| are_commensurate by Th57;
hence A4: omega-exp x = omega-exp (x + y) by A2, Th61; :: thesis: omega-r x = omega-r (x + y)
set N = No_omega^ (omega-exp x);
A5: |.(x - ((No_omega^ (omega-exp x)) * (uReal . (omega-r x)))).| infinitely< |.x.| by A2, Def8;
|.((x + y) + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))).| infinitely< |.x.|
proof
let s be positive Real; :: according to SURREALC:def 3 :: thesis: |.((x + y) + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))).| * (uReal . s) < |.x.|
A6: 0_No <= uReal . s by SURREALI:def 8;
set r = uReal . (omega-r x);
(x + y) + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x)))) = y + (x + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))) by SURREALR:37;
then ( |.((x + y) + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))).| * (uReal . s) <= (|.(x + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))).| + |.y.|) * (uReal . s) & (|.(x + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))).| + |.y.|) * (uReal . s) == (|.(x + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))).| * (uReal . s)) + (|.y.| * (uReal . s)) ) by Th37, A6, SURREALR:67, SURREALR:75;
then A7: |.((x + y) + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))).| * (uReal . s) <= (|.(x + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))).| * (uReal . s)) + (|.y.| * (uReal . s)) by SURREALO:4;
A8: |.x.| = |.x.| * (uReal . 1) by SURREALN:48;
|.(x + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))).| * (uReal . (s * 2)) < |.x.| by A5;
then A9: |.(x + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))).| * (uReal . ((s * 2) * (1 / 2))) <= |.x.| * (uReal . (1 * (1 / 2))) by Th59, A8;
|.y.| * (uReal . (s * 2)) < |.x.| by A1;
then |.y.| * (uReal . ((s * 2) * (1 / 2))) < |.x.| * (uReal . (1 * (1 / 2))) by Th59, A8;
then A10: (|.(x + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))).| * (uReal . s)) + (|.y.| * (uReal . s)) < (|.x.| * (uReal . (1 * (1 / 2)))) + (|.x.| * (uReal . (1 * (1 / 2)))) by A9, SURREALR:44;
( (|.x.| * (uReal . (1 * (1 / 2)))) + (|.x.| * (uReal . (1 * (1 / 2)))) == |.x.| * ((uReal . (1 / 2)) + (uReal . (1 / 2))) & |.x.| * ((uReal . (1 / 2)) + (uReal . (1 / 2))) == |.x.| * (uReal . ((1 / 2) + (1 / 2))) ) by SURREALR:67, SURREALR:51, SURREALN:55;
then ( (|.x.| * (uReal . (1 * (1 / 2)))) + (|.x.| * (uReal . (1 * (1 / 2)))) == |.x.| * (uReal . 1) & |.x.| * (uReal . 1) = |.x.| ) by SURREALN:48, SURREALO:4;
then (|.(x + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))).| * (uReal . s)) + (|.y.| * (uReal . s)) < |.x.| by A10, SURREALO:4;
hence |.((x + y) + (- ((No_omega^ (omega-exp x)) * (uReal . (omega-r x))))).| * (uReal . s) < |.x.| by A7, SURREALO:4; :: thesis: verum
end;
then |.((x + y) - ((No_omega^ (omega-exp x)) * (uReal . (omega-r x)))).| infinitely< |.(x + y).| by A3, Th57, Th16;
hence omega-r x = omega-r (x + y) by A2, A4, Def8; :: thesis: verum
end;

theorem Th64: :: SURREALC:64
for x, y being Surreal st not x == 0_No & y == 0_No holds
y infinitely< |.x.|
proof
let x, y be Surreal; :: thesis: ( not x == 0_No & y == 0_No implies y infinitely< |.x.| )
assume A1: ( not x == 0_No & y == 0_No ) ; :: thesis: y infinitely< |.x.|
then A2: |.x.| is positive by Th36;
let r be positive Real; :: according to SURREALC:def 3 :: thesis: y * (uReal . r) < |.x.|
( (uReal . r) * y == (uReal . r) * 0_No & (uReal . r) * 0_No = 0_No ) by A1, SURREALR:51;
hence y * (uReal . r) < |.x.| by SURREALO:4, A2; :: thesis: verum
end;

theorem :: SURREALC:65
for r being Real st uReal . r == 0_No holds
r = 0
proof
let r be Real; :: thesis: ( uReal . r == 0_No implies r = 0 )
assume uReal . r == 0_No ; :: thesis: r = 0
then ( 0 <= r & r <= 0 ) by SURREALN:51, SURREALN:47;
hence r = 0 ; :: thesis: verum
end;

Lm10: for x being Surreal
for r being Real st x is positive & r > 0 holds
(uReal . r) * x,x are_commensurate

proof
let x be Surreal; :: thesis: for r being Real st x is positive & r > 0 holds
(uReal . r) * x,x are_commensurate

let r be Real; :: thesis: ( x is positive & r > 0 implies (uReal . r) * x,x are_commensurate )
assume A1: ( x is positive & r > 0 ) ; :: thesis: (uReal . r) * x,x are_commensurate
consider n being Nat such that
A2: r < n by SEQ_4:3;
n < n + 1 by NAT_1:13;
then A3: r < n + 1 by A2, XXREAL_0:2;
( uReal . (n + 1) = uDyadic . (n + 1) & uDyadic . (n + 1) = uInt . (n + 1) ) by SURREALN:46, SURREALN:def 5;
then A4: (uReal . r) * x < x * (uInt . (n + 1)) by A3, SURREALN:51, SURREALR:70, A1;
consider k being Nat such that
A5: 1 / r < k by SEQ_4:3;
k < k + 1 by NAT_1:13;
then A6: 1 / r < k + 1 by A5, XXREAL_0:2;
0_No < (uReal . r) * x by A1, SURREALI:def 8;
then A7: (uReal . (1 / r)) * ((uReal . r) * x) < (uReal . (k + 1)) * ((uReal . r) * x) by A6, SURREALN:51, SURREALR:70;
A8: ( uReal . (k + 1) = uDyadic . (k + 1) & uDyadic . (k + 1) = uInt . (k + 1) ) by SURREALN:46, SURREALN:def 5;
(uReal . (1 / r)) * ((uReal . r) * x) == x by Lm2, A1;
then x < ((uReal . r) * x) * (uInt . (k + 1)) by A8, A7, SURREALO:4;
hence (uReal . r) * x,x are_commensurate by A4; :: thesis: verum
end;

theorem Th66: :: SURREALC:66
for x being Surreal
for r being Real st x is positive & r <> 0 holds
|.((uReal . r) * x).|,x are_commensurate
proof
let x be Surreal; :: thesis: for r being Real st x is positive & r <> 0 holds
|.((uReal . r) * x).|,x are_commensurate

let r be Real; :: thesis: ( x is positive & r <> 0 implies |.((uReal . r) * x).|,x are_commensurate )
assume A1: ( x is positive & r <> 0 ) ; :: thesis: |.((uReal . r) * x).|,x are_commensurate
per cases then ( 0 < r or r < 0 ) ;
suppose A2: 0 < r ; :: thesis: |.((uReal . r) * x).|,x are_commensurate
then 0_No <= (uReal . r) * x by A1, SURREALI:def 8;
then (uReal . r) * x = |.((uReal . r) * x).| by Def6;
hence |.((uReal . r) * x).|,x are_commensurate by Lm10, A1, A2; :: thesis: verum
end;
suppose A3: r < 0 ; :: thesis: |.((uReal . r) * x).|,x are_commensurate
0_No <= (uReal . (- r)) * x by A3, A1, SURREALI:def 8;
then A4: (uReal . (- r)) * x = |.((uReal . (- r)) * x).| by Def6;
( (uReal . (- r)) * x == (- (uReal . r)) * x & (- (uReal . r)) * x == - ((uReal . r) * x) ) by SURREALN:56, SURREALR:51, SURREALR:58;
then (uReal . (- r)) * x == - ((uReal . r) * x) by SURREALR:58;
then ( |.((uReal . (- r)) * x).| == |.(- ((uReal . r) * x)).| & |.(- ((uReal . r) * x)).| == |.((uReal . r) * x).| ) by Th48, Th39, Th38;
then (uReal . (- r)) * x == |.((uReal . r) * x).| by A4, SURREALO:4;
hence |.((uReal . r) * x).|,x are_commensurate by A3, Lm10, A1, Th5; :: thesis: verum
end;
end;
end;

scheme :: SURREALC:sch 1
Simplest{ P1[ Surreal] } :
ex s being uSurreal st
( P1[s] & ( for x being uSurreal st P1[x] & x <> s holds
born s in born x ) )
provided
A1: ex x being Surreal st P1[x] and
A2: for x, y, z being Surreal st x <= y & y <= z & P1[x] & P1[z] holds
P1[y]
proof
consider x being Surreal such that
A3: P1[x] by A1;
set c = Unique_No x;
A4: Unique_No x == x by SURREALO:def 10;
defpred S1[ Ordinal] means ex y being uSurreal st
( born y = $1 & P1[y] );
S1[ born (Unique_No x)] by A4, A3, A2;
then A5: ex A being Ordinal st S1[A] ;
consider A being Ordinal such that
A6: ( S1[A] & ( for B being Ordinal st S1[B] holds
A c= B ) )
from ORDINAL1:sch 1(A5);
consider s being uSurreal such that
A7: ( born s = A & P1[s] ) by A6;
take s ; :: thesis: ( P1[s] & ( for x being uSurreal st P1[x] & x <> s holds
born s in born x ) )

thus P1[s] by A7; :: thesis: for x being uSurreal st P1[x] & x <> s holds
born s in born x

let y be uSurreal; :: thesis: ( P1[y] & y <> s implies born s in born y )
assume A8: ( P1[y] & y <> s & not born s in born y ) ; :: thesis: contradiction
( born s c= born y & born y c= born s ) by A8, ORDINAL1:16, A7, A6;
then A9: born s = born y by XBOOLE_0:def 10;
not y == s by A8, SURREALO:50;
per cases then ( y < s or s < y ) ;
suppose y < s ; :: thesis: contradiction
per cases then ( ex xR being Surreal st
( xR in R_ y & y < xR & xR <= s ) or ex yL being Surreal st
( yL in L_ s & y <= yL & yL < s ) )
by SURREALO:13;
suppose ex xR being Surreal st
( xR in R_ y & y < xR & xR <= s )
; :: thesis: contradiction
then consider xR being Surreal such that
A10: ( xR in R_ y & y < xR & xR <= s ) ;
xR in (L_ y) \/ (R_ y) by A10, XBOOLE_0:def 3;
then A11: born xR in born y by SURREALO:1;
A12: Unique_No xR == xR by SURREALO:def 10;
then ( y <= Unique_No xR & Unique_No xR <= s ) by A10, SURREALO:4;
then A13: A c= born (Unique_No xR) by A6, A8, A2, A7;
born (Unique_No xR) = born_eq (Unique_No xR) by SURREALO:48;
hence contradiction by A11, A7, A9, ORDINAL1:5, A13, A12, SURREALO:def 5; :: thesis: verum
end;
suppose ex yL being Surreal st
( yL in L_ s & y <= yL & yL < s )
; :: thesis: contradiction
then consider yL being Surreal such that
A14: ( yL in L_ s & y <= yL & yL < s ) ;
yL in (L_ s) \/ (R_ s) by A14, XBOOLE_0:def 3;
then A15: born yL in born s by SURREALO:1;
A16: Unique_No yL == yL by SURREALO:def 10;
then ( y <= Unique_No yL & Unique_No yL <= s ) by A14, SURREALO:4;
then A17: A c= born (Unique_No yL) by A6, A8, A2, A7;
born (Unique_No yL) = born_eq (Unique_No yL) by SURREALO:48;
hence contradiction by A15, A7, ORDINAL1:5, A17, A16, SURREALO:def 5; :: thesis: verum
end;
end;
end;
suppose s < y ; :: thesis: contradiction
per cases then ( ex xR being Surreal st
( xR in R_ s & s < xR & xR <= y ) or ex yL being Surreal st
( yL in L_ y & s <= yL & yL < y ) )
by SURREALO:13;
suppose ex xR being Surreal st
( xR in R_ s & s < xR & xR <= y )
; :: thesis: contradiction
then consider xR being Surreal such that
A18: ( xR in R_ s & s < xR & xR <= y ) ;
xR in (L_ s) \/ (R_ s) by A18, XBOOLE_0:def 3;
then A19: born xR in born s by SURREALO:1;
A20: Unique_No xR == xR by SURREALO:def 10;
then ( s <= Unique_No xR & Unique_No xR <= y ) by A18, SURREALO:4;
then A21: A c= born (Unique_No xR) by A6, A8, A2, A7;
born (Unique_No xR) = born_eq (Unique_No xR) by SURREALO:48;
hence contradiction by A19, A7, ORDINAL1:5, A21, A20, SURREALO:def 5; :: thesis: verum
end;
suppose ex yL being Surreal st
( yL in L_ y & s <= yL & yL < y )
; :: thesis: contradiction
then consider yL being Surreal such that
A22: ( yL in L_ y & s <= yL & yL < y ) ;
yL in (L_ y) \/ (R_ y) by A22, XBOOLE_0:def 3;
then A23: born yL in born y by SURREALO:1;
A24: Unique_No yL == yL by SURREALO:def 10;
then ( s <= Unique_No yL & Unique_No yL <= y ) by A22, SURREALO:4;
then A25: A c= born (Unique_No yL) by A6, A8, A2, A7;
born (Unique_No yL) = born_eq (Unique_No yL) by SURREALO:48;
hence contradiction by A23, A7, A9, ORDINAL1:5, A25, A24, SURREALO:def 5; :: thesis: verum
end;
end;
end;
end;
end;

definition
let f be Function;
attr f is surreal-valued means :Def9: :: SURREALC:def 9
rng f is surreal-membered ;
end;

:: deftheorem Def9 defines surreal-valued SURREALC:def 9 :
for f being Function holds
( f is surreal-valued iff rng f is surreal-membered );

registration
let s be Surreal;
cluster <%s%> -> surreal-valued ;
coherence
<%s%> is surreal-valued
proof end;
end;

registration
cluster Relation-like Function-like Sequence-like surreal-valued for set ;
existence
ex b1 being Sequence st b1 is surreal-valued
proof end;
end;

registration
let f be surreal-valued Function;
cluster proj2 f -> surreal-membered ;
coherence
rng f is surreal-membered
by Def9;
end;

definition
mode Surreal-Sequence is surreal-valued Sequence;
end;

registration
let X be surreal-membered set ;
cluster -> surreal-membered for Element of bool X;
coherence
for b1 being Subset of X holds b1 is surreal-membered
by SURREAL0:def 16;
end;

registration
let f be surreal-valued Function;
let X be set ;
cluster f | X -> surreal-valued ;
coherence
f | X is surreal-valued
proof
rng (f | X) c= rng f by RELAT_1:70;
hence f | X is surreal-valued ; :: thesis: verum
end;
end;

registration
let f, g be Surreal-Sequence;
cluster f ^ g -> surreal-valued ;
coherence
f ^ g is surreal-valued
proof
rng (f ^ g) = (rng f) \/ (rng g) by ORDINAL4:2;
hence f ^ g is surreal-valued ; :: thesis: verum
end;
end;

definition
let f be Function;
attr f is uniq-surreal-valued means :Def10: :: SURREALC:def 10
rng f is uniq-surreal-membered ;
end;

:: deftheorem Def10 defines uniq-surreal-valued SURREALC:def 10 :
for f being Function holds
( f is uniq-surreal-valued iff rng f is uniq-surreal-membered );

registration
let s be uSurreal;
cluster <%s%> -> uniq-surreal-valued ;
coherence
<%s%> is uniq-surreal-valued
proof end;
end;

registration
cluster Relation-like Function-like Sequence-like uniq-surreal-valued for set ;
existence
ex b1 being Sequence st b1 is uniq-surreal-valued
proof end;
end;

registration
let f be uniq-surreal-valued Function;
cluster proj2 f -> uniq-surreal-membered ;
coherence
rng f is uniq-surreal-membered
by Def10;
end;

definition
mode uSurreal-Sequence is uniq-surreal-valued Sequence;
end;

registration
let X be uniq-surreal-membered set ;
cluster -> uniq-surreal-membered for Element of bool X;
coherence
for b1 being Subset of X holds b1 is uniq-surreal-membered
by SURREALO:def 12;
end;

registration
let f be uniq-surreal-valued Function;
let X be set ;
cluster f | X -> uniq-surreal-valued ;
coherence
f | X is uniq-surreal-valued
proof
rng (f | X) c= rng f by RELAT_1:70;
hence f | X is uniq-surreal-valued ; :: thesis: verum
end;
end;

registration
let f, g be uSurreal-Sequence;
cluster f ^ g -> uniq-surreal-valued ;
coherence
f ^ g is uniq-surreal-valued
proof
rng (f ^ g) = (rng f) \/ (rng g) by ORDINAL4:2;
hence f ^ g is uniq-surreal-valued ; :: thesis: verum
end;
end;

registration
cluster uniq-surreal-membered -> surreal-membered for set ;
coherence
for b1 being set st b1 is uniq-surreal-membered holds
b1 is surreal-membered
;
end;

registration
cluster Relation-like Function-like uniq-surreal-valued -> surreal-valued for set ;
coherence
for b1 being Function st b1 is uniq-surreal-valued holds
b1 is surreal-valued
;
end;

definition
let S be Surreal-Sequence;
attr S is strictly_decreasing means :Def11: :: SURREALC:def 11
for a, b being Ordinal st a in b & b in dom S holds
for sa, sb being Surreal st sa = S . a & sb = S . b holds
sb < sa;
end;

:: deftheorem Def11 defines strictly_decreasing SURREALC:def 11 :
for S being Surreal-Sequence holds
( S is strictly_decreasing iff for a, b being Ordinal st a in b & b in dom S holds
for sa, sb being Surreal st sa = S . a & sb = S . b holds
sb < sa );

registration
let s be uSurreal;
cluster <%s%> -> strictly_decreasing ;
coherence
<%s%> is strictly_decreasing
proof
set S = <%s%>;
let a, b be Ordinal; :: according to SURREALC:def 11 :: thesis: ( a in b & b in dom <%s%> implies for sa, sb being Surreal st sa = <%s%> . a & sb = <%s%> . b holds
sb < sa )

assume A1: ( a in b & b in dom <%s%> ) ; :: thesis: for sa, sb being Surreal st sa = <%s%> . a & sb = <%s%> . b holds
sb < sa

dom <%s%> = {0} by CARD_1:49, AFINSQ_1:33;
hence for sa, sb being Surreal st sa = <%s%> . a & sb = <%s%> . b holds
sb < sa
by A1, TARSKI:def 1; :: thesis: verum
end;
end;

registration
cluster Relation-like Function-like Sequence-like surreal-valued uniq-surreal-valued strictly_decreasing for set ;
existence
ex b1 being uSurreal-Sequence st b1 is strictly_decreasing
proof end;
end;

registration
let s1, s2 be non-zero Sequence;
cluster s1 ^ s2 -> non-zero ;
coherence
s1 ^ s2 is non-zero
proof
assume 0 in rng (s1 ^ s2) ; :: according to ORDINAL1:def 15 :: thesis: contradiction
then 0 in (rng s1) \/ (rng s2) by ORDINAL4:2;
then ( 0 in rng s1 or 0 in rng s2 ) by XBOOLE_0:def 3;
hence contradiction ; :: thesis: verum
end;
end;

registration
cluster Relation-like REAL -valued Function-like Sequence-like non-zero V62() V63() V64() for set ;
existence
ex b1 being Sequence of REAL st b1 is non-zero
proof end;
end;

definition
let s be object ;
let y be Surreal;
let r be Real;
let x be object ;
attr x is s,y,r -terms means :: SURREALC:def 12
( not x +' (-' s) == 0_No & omega-exp (x +' (-' s)) == y & omega-r (x +' (-' s)) = r );
end;

:: deftheorem defines -terms SURREALC:def 12 :
for s being object
for y being Surreal
for r being Real
for x being object holds
( x is s,y,r -terms iff ( not x +' (-' s) == 0_No & omega-exp (x +' (-' s)) == y & omega-r (x +' (-' s)) = r ) );

definition
let s, y be Surreal;
let r be Real;
let x be Surreal;
redefine attr x is s,y,r -terms means :: SURREALC:def 13
( not x - s == 0_No & omega-exp (x - s) == y & omega-r (x - s) = r );
compatibility
( x is s,y,r -terms iff ( not x - s == 0_No & omega-exp (x - s) == y & omega-r (x - s) = r ) )
;
end;

:: deftheorem defines -terms SURREALC:def 13 :
for s, y being Surreal
for r being Real
for x being Surreal holds
( x is s,y,r -terms iff ( not x - s == 0_No & omega-exp (x - s) == y & omega-r (x - s) = r ) );

theorem Th67: :: SURREALC:67
for y being Surreal
for r being Real st r <> 0 holds
not (uReal . r) * (No_omega^ y) == 0_No
proof
let y be Surreal; :: thesis: for r being Real st r <> 0 holds
not (uReal . r) * (No_omega^ y) == 0_No

let r be Real; :: thesis: ( r <> 0 implies not (uReal . r) * (No_omega^ y) == 0_No )
assume r <> 0 ; :: thesis: not (uReal . r) * (No_omega^ y) == 0_No
then |.((uReal . r) * (No_omega^ y)).|, No_omega^ y are_commensurate by Th66;
then |.((uReal . r) * (No_omega^ y)).| is positive by Th3;
hence not (uReal . r) * (No_omega^ y) == 0_No by Def6; :: thesis: verum
end;

theorem Th68: :: SURREALC:68
for y being Surreal
for r being Real st r <> 0 holds
omega-exp ((uReal . r) * (No_omega^ y)) = Unique_No y
proof
let y be Surreal; :: thesis: for r being Real st r <> 0 holds
omega-exp ((uReal . r) * (No_omega^ y)) = Unique_No y

let r be Real; :: thesis: ( r <> 0 implies omega-exp ((uReal . r) * (No_omega^ y)) = Unique_No y )
assume r <> 0 ; :: thesis: omega-exp ((uReal . r) * (No_omega^ y)) = Unique_No y
then A1: ( |.((uReal . r) * (No_omega^ y)).|, No_omega^ y are_commensurate & not (uReal . r) * (No_omega^ y) == 0_No ) by Th66, Th67;
y == Unique_No y by SURREALO:def 10;
then No_omega^ y == No_omega^ (Unique_No y) by Lm5;
then |.((uReal . r) * (No_omega^ y)).|, No_omega^ (Unique_No y) are_commensurate by A1, Th5;
hence omega-exp ((uReal . r) * (No_omega^ y)) = Unique_No y by A1, Def7; :: thesis: verum
end;

theorem Th69: :: SURREALC:69
for y being Surreal
for r being Real
for s being Surreal st r <> 0 holds
s + ((uReal . r) * (No_omega^ y)) is s,y,r -terms
proof
let y be Surreal; :: thesis: for r being Real
for s being Surreal st r <> 0 holds
s + ((uReal . r) * (No_omega^ y)) is s,y,r -terms

let r be Real; :: thesis: for s being Surreal st r <> 0 holds
s + ((uReal . r) * (No_omega^ y)) is s,y,r -terms

let s be Surreal; :: thesis: ( r <> 0 implies s + ((uReal . r) * (No_omega^ y)) is s,y,r -terms )
assume A1: r <> 0 ; :: thesis: s + ((uReal . r) * (No_omega^ y)) is s,y,r -terms
set R = uReal . r;
set N = No_omega^ y;
set sRNs = (s + ((uReal . r) * (No_omega^ y))) + (- s);
s - s == 0_No by SURREALR:39;
then A2: ( (s + ((uReal . r) * (No_omega^ y))) + (- s) = ((uReal . r) * (No_omega^ y)) + (s + (- s)) & ((uReal . r) * (No_omega^ y)) + (s + (- s)) == ((uReal . r) * (No_omega^ y)) + 0_No & ((uReal . r) * (No_omega^ y)) + 0_No = (uReal . r) * (No_omega^ y) ) by SURREALR:43, SURREALR:37;
A3: not (uReal . r) * (No_omega^ y) == 0_No by A1, Th67;
then A4: not (s + ((uReal . r) * (No_omega^ y))) + (- s) == 0_No by A2, SURREALO:4;
A5: omega-exp ((uReal . r) * (No_omega^ y)) = Unique_No y by A1, Th68;
|.((uReal . r) * (No_omega^ y)).| is positive by A1, Th67, Th36;
then |.((s + ((uReal . r) * (No_omega^ y))) + (- s)).|,|.((uReal . r) * (No_omega^ y)).| are_commensurate by A2, Th48, Th8;
then A6: ( omega-exp ((s + ((uReal . r) * (No_omega^ y))) + (- s)) = Unique_No y & Unique_No y == y ) by SURREALO:def 10, A4, A5, Th61, A3;
then No_omega^ (omega-exp ((s + ((uReal . r) * (No_omega^ y))) + (- s))) == No_omega^ y by Lm5;
then (No_omega^ (omega-exp ((s + ((uReal . r) * (No_omega^ y))) + (- s)))) * (uReal . r) == (No_omega^ y) * (uReal . r) by SURREALR:51;
then - ((No_omega^ (omega-exp ((s + ((uReal . r) * (No_omega^ y))) + (- s)))) * (uReal . r)) == - ((No_omega^ y) * (uReal . r)) by SURREALR:10;
then ( ((s + ((uReal . r) * (No_omega^ y))) + (- s)) - ((No_omega^ (omega-exp ((s + ((uReal . r) * (No_omega^ y))) + (- s)))) * (uReal . r)) == ((No_omega^ y) * (uReal . r)) - ((No_omega^ y) * (uReal . r)) & ((No_omega^ y) * (uReal . r)) - ((No_omega^ y) * (uReal . r)) == 0_No ) by A2, SURREALR:43, SURREALR:39;
then ((s + ((uReal . r) * (No_omega^ y))) + (- s)) + (- ((No_omega^ (omega-exp ((s + ((uReal . r) * (No_omega^ y))) + (- s)))) * (uReal . r))) == 0_No by SURREALO:4;
then |.(((s + ((uReal . r) * (No_omega^ y))) + (- s)) + (- ((No_omega^ (omega-exp ((s + ((uReal . r) * (No_omega^ y))) + (- s)))) * (uReal . r)))).| == 0_No by Def6;
then |.(((s + ((uReal . r) * (No_omega^ y))) + (- s)) - ((No_omega^ (omega-exp ((s + ((uReal . r) * (No_omega^ y))) + (- s)))) * (uReal . r))).| infinitely< |.((s + ((uReal . r) * (No_omega^ y))) + (- s)).| by A4, Th64;
hence s + ((uReal . r) * (No_omega^ y)) is s,y,r -terms by A1, A4, Def8, A6; :: thesis: verum
end;

theorem Th70: :: SURREALC:70
for x, y being Surreal st x == y & not x == 0_No holds
( omega-exp x = omega-exp y & omega-r x = omega-r y )
proof
let x, y be Surreal; :: thesis: ( x == y & not x == 0_No implies ( omega-exp x = omega-exp y & omega-r x = omega-r y ) )
assume A1: ( x == y & not x == 0_No ) ; :: thesis: ( omega-exp x = omega-exp y & omega-r x = omega-r y )
A2: not y == 0_No by A1, SURREALO:4;
|.x.| is positive by A1, Th36;
then A3: |.x.|,|.y.| are_commensurate by A1, Th48, Th8;
then A4: omega-exp x = omega-exp y by A2, A1, Th61;
set rx = omega-r x;
|.(x - ((No_omega^ (omega-exp x)) * (uReal . (omega-r x)))).| infinitely< |.x.| by A1, Def8;
then A5: |.(x + (- ((No_omega^ (omega-exp y)) * (uReal . (omega-r x))))).| infinitely< |.y.| by A4, A3, Th16;
x + (- ((No_omega^ (omega-exp y)) * (uReal . (omega-r x)))) == y + (- ((No_omega^ (omega-exp y)) * (uReal . (omega-r x)))) by SURREALR:43, A1;
then |.(y - ((No_omega^ (omega-exp y)) * (uReal . (omega-r x)))).| infinitely< |.y.| by A5, Th17, Th48;
hence ( omega-exp x = omega-exp y & omega-r x = omega-r y ) by A2, Def8, A3, A1, Th61; :: thesis: verum
end;

theorem Th71: :: SURREALC:71
for x, y being Surreal
for r being Real
for s being Surreal st r <> 0 holds
( (s + ((uReal . r) * (No_omega^ y))) + x is s,y,r -terms iff |.x.| infinitely< No_omega^ y )
proof
let x, y be Surreal; :: thesis: for r being Real
for s being Surreal st r <> 0 holds
( (s + ((uReal . r) * (No_omega^ y))) + x is s,y,r -terms iff |.x.| infinitely< No_omega^ y )

let r be Real; :: thesis: for s being Surreal st r <> 0 holds
( (s + ((uReal . r) * (No_omega^ y))) + x is s,y,r -terms iff |.x.| infinitely< No_omega^ y )

let s be Surreal; :: thesis: ( r <> 0 implies ( (s + ((uReal . r) * (No_omega^ y))) + x is s,y,r -terms iff |.x.| infinitely< No_omega^ y ) )
assume A1: r <> 0 ; :: thesis: ( (s + ((uReal . r) * (No_omega^ y))) + x is s,y,r -terms iff |.x.| infinitely< No_omega^ y )
set N = No_omega^ y;
set R = uReal . r;
set sRNx = (s + ((uReal . r) * (No_omega^ y))) + x;
set sRNs = (s + ((uReal . r) * (No_omega^ y))) + (- s);
s - s == 0_No by SURREALR:39;
then A2: ( (s + ((uReal . r) * (No_omega^ y))) + (- s) = ((uReal . r) * (No_omega^ y)) + (s + (- s)) & ((uReal . r) * (No_omega^ y)) + (s + (- s)) == ((uReal . r) * (No_omega^ y)) + 0_No & ((uReal . r) * (No_omega^ y)) + 0_No = (uReal . r) * (No_omega^ y) ) by SURREALR:43, SURREALR:37;
not (uReal . r) * (No_omega^ y) == 0_No by A1, Th67;
then A3: not (s + ((uReal . r) * (No_omega^ y))) + (- s) == 0_No by A2, SURREALO:4;
A4: |.((s + ((uReal . r) * (No_omega^ y))) + (- s)).| is positive by A3, Th36;
A5: |.((s + ((uReal . r) * (No_omega^ y))) + (- s)).|,|.((No_omega^ y) * (uReal . r)).| are_commensurate by A2, Th48, A4, Th8;
A6: |.((No_omega^ y) * (uReal . r)).|, No_omega^ y are_commensurate by A1, Th66;
then A7: |.((s + ((uReal . r) * (No_omega^ y))) + (- s)).|, No_omega^ y are_commensurate by Th4, A5;
A8: ((s + ((uReal . r) * (No_omega^ y))) + x) + (- s) = (s + (((uReal . r) * (No_omega^ y)) + x)) + (- s) by SURREALR:37
.= (s + (- s)) + (((uReal . r) * (No_omega^ y)) + x) by SURREALR:37 ;
s - s == 0_No by SURREALR:39;
then A9: ( (s + (- s)) + (((uReal . r) * (No_omega^ y)) + x) == 0_No + (((uReal . r) * (No_omega^ y)) + x) & 0_No + (((uReal . r) * (No_omega^ y)) + x) = ((uReal . r) * (No_omega^ y)) + x ) by SURREALR:43;
((s + ((uReal . r) * (No_omega^ y))) + (- s)) + x == ((uReal . r) * (No_omega^ y)) + x by A2, SURREALR:43;
then A10: ((s + ((uReal . r) * (No_omega^ y))) + x) + (- s) == ((s + ((uReal . r) * (No_omega^ y))) + (- s)) + x by A9, SURREALO:4, A8;
A11: s + ((uReal . r) * (No_omega^ y)) is s,y,r -terms by A1, Th69;
then A12: ( not (s + ((uReal . r) * (No_omega^ y))) + (- s) == 0_No & omega-exp ((s + ((uReal . r) * (No_omega^ y))) + (- s)) == y & omega-r ((s + ((uReal . r) * (No_omega^ y))) + (- s)) = r ) ;
thus ( (s + ((uReal . r) * (No_omega^ y))) + x is s,y,r -terms implies |.x.| infinitely< No_omega^ y ) :: thesis: ( |.x.| infinitely< No_omega^ y implies (s + ((uReal . r) * (No_omega^ y))) + x is s,y,r -terms )
proof
assume A13: (s + ((uReal . r) * (No_omega^ y))) + x is s,y,r -terms ; :: thesis: |.x.| infinitely< No_omega^ y
then A14: ( not ((s + ((uReal . r) * (No_omega^ y))) + x) + (- s) == 0_No & omega-exp (((s + ((uReal . r) * (No_omega^ y))) + x) + (- s)) == y & omega-r (((s + ((uReal . r) * (No_omega^ y))) + x) + (- s)) = r ) ;
A15: not ((s + ((uReal . r) * (No_omega^ y))) + (- s)) + x == 0_No by A10, A14, SURREALO:4;
A16: ( omega-exp (((s + ((uReal . r) * (No_omega^ y))) + x) + (- s)) = omega-exp (((s + ((uReal . r) * (No_omega^ y))) + (- s)) + x) & omega-r (((s + ((uReal . r) * (No_omega^ y))) + x) + (- s)) = omega-r (((s + ((uReal . r) * (No_omega^ y))) + (- s)) + x) ) by A13, A10, Th70;
A17: omega-r (((s + ((uReal . r) * (No_omega^ y))) + (- s)) + x) = omega-r ((s + ((uReal . r) * (No_omega^ y))) + (- s)) by A13, A11, A10, Th70;
omega-exp ((s + ((uReal . r) * (No_omega^ y))) + (- s)) == omega-exp (((s + ((uReal . r) * (No_omega^ y))) + (- s)) + x) by A14, A12, A16, SURREALO:4;
then omega-exp ((s + ((uReal . r) * (No_omega^ y))) + (- s)) = omega-exp (((s + ((uReal . r) * (No_omega^ y))) + (- s)) + x) by SURREALO:50;
hence |.x.| infinitely< No_omega^ y by A7, Th16, A17, A15, A11, Th62; :: thesis: verum
end;
assume |.x.| infinitely< No_omega^ y ; :: thesis: (s + ((uReal . r) * (No_omega^ y))) + x is s,y,r -terms
then |.x.| infinitely< |.((s + ((uReal . r) * (No_omega^ y))) + (- s)).| by A6, Th4, A5, Th16;
then A18: ( not ((s + ((uReal . r) * (No_omega^ y))) + (- s)) + x == 0_No & omega-exp ((s + ((uReal . r) * (No_omega^ y))) + (- s)) = omega-exp (((s + ((uReal . r) * (No_omega^ y))) + (- s)) + x) & omega-r ((s + ((uReal . r) * (No_omega^ y))) + (- s)) = omega-r (((s + ((uReal . r) * (No_omega^ y))) + (- s)) + x) ) by Th63;
then not ((s + ((uReal . r) * (No_omega^ y))) + x) + (- s) == 0_No by A10, SURREALO:4;
hence (s + ((uReal . r) * (No_omega^ y))) + x is s,y,r -terms by A18, A10, Th70, A11; :: thesis: verum
end;

theorem Th72: :: SURREALC:72
for x, y, z being Surreal
for r being Real
for s being Surreal st r <> 0 & x is s,y,r -terms & x == z holds
z is s,y,r -terms
proof
let x, y, z be Surreal; :: thesis: for r being Real
for s being Surreal st r <> 0 & x is s,y,r -terms & x == z holds
z is s,y,r -terms

let r be Real; :: thesis: for s being Surreal st r <> 0 & x is s,y,r -terms & x == z holds
z is s,y,r -terms

let s be Surreal; :: thesis: ( r <> 0 & x is s,y,r -terms & x == z implies z is s,y,r -terms )
assume A1: ( r <> 0 & x is s,y,r -terms & x == z ) ; :: thesis: z is s,y,r -terms
then A2: ( not x + (- s) == 0_No & omega-exp (x + (- s)) == y & omega-r (x + (- s)) = r ) ;
A3: x + (- s) == z + (- s) by A1, SURREALR:43;
not z + (- s) == 0_No by A2, A3, SURREALO:4;
hence z is s,y,r -terms by A1, A3, Th70; :: thesis: verum
end;

theorem Th73: :: SURREALC:73
for x, y being Surreal
for r being Real
for s being Surreal st r <> 0 holds
( x is s,y,r -terms iff |.(x - (s + ((uReal . r) * (No_omega^ y)))).| infinitely< No_omega^ y )
proof
let x, y be Surreal; :: thesis: for r being Real
for s being Surreal st r <> 0 holds
( x is s,y,r -terms iff |.(x - (s + ((uReal . r) * (No_omega^ y)))).| infinitely< No_omega^ y )

let r be Real; :: thesis: for s being Surreal st r <> 0 holds
( x is s,y,r -terms iff |.(x - (s + ((uReal . r) * (No_omega^ y)))).| infinitely< No_omega^ y )

let s be Surreal; :: thesis: ( r <> 0 implies ( x is s,y,r -terms iff |.(x - (s + ((uReal . r) * (No_omega^ y)))).| infinitely< No_omega^ y ) )
assume A1: r <> 0 ; :: thesis: ( x is s,y,r -terms iff |.(x - (s + ((uReal . r) * (No_omega^ y)))).| infinitely< No_omega^ y )
set N = No_omega^ y;
set R = uReal . r;
set sNR = s + ((uReal . r) * (No_omega^ y));
set X = x - (s + ((uReal . r) * (No_omega^ y)));
(s + ((uReal . r) * (No_omega^ y))) - (s + ((uReal . r) * (No_omega^ y))) == 0_No by SURREALR:39;
then A2: ( (s + ((uReal . r) * (No_omega^ y))) + (x - (s + ((uReal . r) * (No_omega^ y)))) = x + ((s + ((uReal . r) * (No_omega^ y))) + (- (s + ((uReal . r) * (No_omega^ y))))) & x + ((s + ((uReal . r) * (No_omega^ y))) + (- (s + ((uReal . r) * (No_omega^ y))))) == x + 0_No & x + 0_No = x ) by SURREALR:37, SURREALR:43;
thus ( x is s,y,r -terms implies |.(x - (s + ((uReal . r) * (No_omega^ y)))).| infinitely< No_omega^ y ) :: thesis: ( |.(x - (s + ((uReal . r) * (No_omega^ y)))).| infinitely< No_omega^ y implies x is s,y,r -terms )
proof
assume x is s,y,r -terms ; :: thesis: |.(x - (s + ((uReal . r) * (No_omega^ y)))).| infinitely< No_omega^ y
then (s + ((uReal . r) * (No_omega^ y))) + (x - (s + ((uReal . r) * (No_omega^ y)))) is s,y,r -terms by A2, Th72;
hence |.(x - (s + ((uReal . r) * (No_omega^ y)))).| infinitely< No_omega^ y by Th71; :: thesis: verum
end;
assume |.(x - (s + ((uReal . r) * (No_omega^ y)))).| infinitely< No_omega^ y ; :: thesis: x is s,y,r -terms
then (s + ((uReal . r) * (No_omega^ y))) + (x - (s + ((uReal . r) * (No_omega^ y)))) is s,y,r -terms by A1, Th71;
hence x is s,y,r -terms by A2, Th72; :: thesis: verum
end;

theorem Th74: :: SURREALC:74
for r being Real
for s, p being Surreal st r <> 0 holds
for x, y, z being Surreal st x is s,p,r -terms & z is s,p,r -terms & x <= y & y <= z holds
y is s,p,r -terms
proof
let r be Real; :: thesis: for s, p being Surreal st r <> 0 holds
for x, y, z being Surreal st x is s,p,r -terms & z is s,p,r -terms & x <= y & y <= z holds
y is s,p,r -terms

let s, p be Surreal; :: thesis: ( r <> 0 implies for x, y, z being Surreal st x is s,p,r -terms & z is s,p,r -terms & x <= y & y <= z holds
y is s,p,r -terms )

assume A1: r <> 0 ; :: thesis: for x, y, z being Surreal st x is s,p,r -terms & z is s,p,r -terms & x <= y & y <= z holds
y is s,p,r -terms

let x, y, z be Surreal; :: thesis: ( x is s,p,r -terms & z is s,p,r -terms & x <= y & y <= z implies y is s,p,r -terms )
assume that
A2: ( x is s,p,r -terms & z is s,p,r -terms ) and
A3: ( x <= y & y <= z ) ; :: thesis: y is s,p,r -terms
set N = No_omega^ p;
set R = uReal . r;
set sNR = s + ((uReal . r) * (No_omega^ p));
set X = x - (s + ((uReal . r) * (No_omega^ p)));
set Y = y - (s + ((uReal . r) * (No_omega^ p)));
set Z = z - (s + ((uReal . r) * (No_omega^ p)));
( |.(x - (s + ((uReal . r) * (No_omega^ p)))).| infinitely< No_omega^ p & |.(z - (s + ((uReal . r) * (No_omega^ p)))).| infinitely< No_omega^ p ) by A2, Th73;
then A4: |.(x - (s + ((uReal . r) * (No_omega^ p)))).| + |.(z - (s + ((uReal . r) * (No_omega^ p)))).| infinitely< No_omega^ p by Th18;
( x - (s + ((uReal . r) * (No_omega^ p))) <= y - (s + ((uReal . r) * (No_omega^ p))) & y - (s + ((uReal . r) * (No_omega^ p))) <= z - (s + ((uReal . r) * (No_omega^ p))) ) by A3, SURREALR:43;
then |.(y - (s + ((uReal . r) * (No_omega^ p)))).| infinitely< No_omega^ p by A4, Th11, Th51;
hence y is s,p,r -terms by A1, Th73; :: thesis: verum
end;

definition
let r be Sequence of REAL ;
let y, s be Sequence;
let alpha be Ordinal;
let x be Surreal;
pred x in_meets_terms s,y,r,alpha means :: SURREALC:def 14
for beta being Ordinal
for sb, yb being Surreal st beta in alpha & sb = s . beta & yb = y . beta holds
x is sb,yb,r . beta -terms ;
end;

:: deftheorem defines in_meets_terms SURREALC:def 14 :
for r being Sequence of REAL
for y, s being Sequence
for alpha being Ordinal
for x being Surreal holds
( x in_meets_terms s,y,r,alpha iff for beta being Ordinal
for sb, yb being Surreal st beta in alpha & sb = s . beta & yb = y . beta holds
x is sb,yb,r . beta -terms );

definition
let r be Sequence of REAL ;
let y, s be Sequence;
let alpha be Ordinal;
pred s,y,r simplest_on_position alpha means :: SURREALC:def 15
for sa being Surreal st sa = s . alpha holds
( ( 0 = alpha implies sa = 0_No ) & ( 0 <> alpha implies ( sa in_meets_terms s,y,r,alpha & ( for x being uSurreal st x in_meets_terms s,y,r,alpha & x <> sa holds
born sa in born x ) ) ) );
end;

:: deftheorem defines simplest_on_position SURREALC:def 15 :
for r being Sequence of REAL
for y, s being Sequence
for alpha being Ordinal holds
( s,y,r simplest_on_position alpha iff for sa being Surreal st sa = s . alpha holds
( ( 0 = alpha implies sa = 0_No ) & ( 0 <> alpha implies ( sa in_meets_terms s,y,r,alpha & ( for x being uSurreal st x in_meets_terms s,y,r,alpha & x <> sa holds
born sa in born x ) ) ) ) );

theorem Th75: :: SURREALC:75
for x being Surreal
for r being Sequence of REAL
for y, s1, s2 being Sequence
for alpha being Ordinal st s1 | alpha = s2 | alpha & x in_meets_terms s1,y,r,alpha holds
x in_meets_terms s2,y,r,alpha
proof
let x be Surreal; :: thesis: for r being Sequence of REAL
for y, s1, s2 being Sequence
for alpha being Ordinal st s1 | alpha = s2 | alpha & x in_meets_terms s1,y,r,alpha holds
x in_meets_terms s2,y,r,alpha

let r be Sequence of REAL ; :: thesis: for y, s1, s2 being Sequence
for alpha being Ordinal st s1 | alpha = s2 | alpha & x in_meets_terms s1,y,r,alpha holds
x in_meets_terms s2,y,r,alpha

let y, s1, s2 be Sequence; :: thesis: for alpha being Ordinal st s1 | alpha = s2 | alpha & x in_meets_terms s1,y,r,alpha holds
x in_meets_terms s2,y,r,alpha

let alpha be Ordinal; :: thesis: ( s1 | alpha = s2 | alpha & x in_meets_terms s1,y,r,alpha implies x in_meets_terms s2,y,r,alpha )
assume that
A1: s1 | alpha = s2 | alpha and
A2: x in_meets_terms s1,y,r,alpha ; :: thesis: x in_meets_terms s2,y,r,alpha
let beta be Ordinal; :: according to SURREALC:def 14 :: thesis: for sb, yb being Surreal st beta in alpha & sb = s2 . beta & yb = y . beta holds
x is sb,yb,r . beta -terms

let sb, yb be Surreal; :: thesis: ( beta in alpha & sb = s2 . beta & yb = y . beta implies x is sb,yb,r . beta -terms )
assume A3: ( beta in alpha & sb = s2 . beta & yb = y . beta ) ; :: thesis: x is sb,yb,r . beta -terms
( s2 . beta = (s2 | alpha) . beta & s1 . beta = (s1 | alpha) . beta ) by A3, FUNCT_1:49;
hence x is sb,yb,r . beta -terms by A3, A2, A1; :: thesis: verum
end;

theorem Th76: :: SURREALC:76
for r being Sequence of REAL
for y, s1, s2 being Sequence
for alpha being Ordinal st s1 . alpha is uSurreal & s2 . alpha is uSurreal & s1 | alpha = s2 | alpha & s1,y,r simplest_on_position alpha & s2,y,r simplest_on_position alpha holds
s1 . alpha = s2 . alpha
proof
let r be Sequence of REAL ; :: thesis: for y, s1, s2 being Sequence
for alpha being Ordinal st s1 . alpha is uSurreal & s2 . alpha is uSurreal & s1 | alpha = s2 | alpha & s1,y,r simplest_on_position alpha & s2,y,r simplest_on_position alpha holds
s1 . alpha = s2 . alpha

let y, s1, s2 be Sequence; :: thesis: for alpha being Ordinal st s1 . alpha is uSurreal & s2 . alpha is uSurreal & s1 | alpha = s2 | alpha & s1,y,r simplest_on_position alpha & s2,y,r simplest_on_position alpha holds
s1 . alpha = s2 . alpha

let alpha be Ordinal; :: thesis: ( s1 . alpha is uSurreal & s2 . alpha is uSurreal & s1 | alpha = s2 | alpha & s1,y,r simplest_on_position alpha & s2,y,r simplest_on_position alpha implies s1 . alpha = s2 . alpha )
assume that
A1: ( s1 . alpha is uSurreal & s2 . alpha is uSurreal ) and
A2: s1 | alpha = s2 | alpha and
A3: ( s1,y,r simplest_on_position alpha & s2,y,r simplest_on_position alpha ) and
A4: s1 . alpha <> s2 . alpha ; :: thesis: contradiction
reconsider s1a = s1 . alpha, s2a = s2 . alpha as uSurreal by A1;
per cases ( alpha = 0 or alpha <> 0 ) ;
suppose alpha = 0 ; :: thesis: contradiction
then ( s1 . alpha = 0_No & 0_No = s2 . alpha ) by A1, A3;
hence contradiction by A4; :: thesis: verum
end;
suppose A5: alpha <> 0 ; :: thesis: contradiction
s1a in_meets_terms s1,y,r,alpha by A3;
then s1a in_meets_terms s2,y,r,alpha by A2, Th75;
then A6: born s2a in born s1a by A4, A3, A5;
s2a in_meets_terms s2,y,r,alpha by A3;
then s2a in_meets_terms s1,y,r,alpha by A2, Th75;
hence contradiction by A6, A4, A3, A5; :: thesis: verum
end;
end;
end;

definition
let r be Sequence of REAL ;
let y, s be Sequence;
let alpha be Ordinal;
pred s,y,r simplest_up_to alpha means :: SURREALC:def 16
for beta being Ordinal st beta in alpha holds
s,y,r simplest_on_position beta;
end;

:: deftheorem defines simplest_up_to SURREALC:def 16 :
for r being Sequence of REAL
for y, s being Sequence
for alpha being Ordinal holds
( s,y,r simplest_up_to alpha iff for beta being Ordinal st beta in alpha holds
s,y,r simplest_on_position beta );

theorem Th77: :: SURREALC:77
for r being Sequence of REAL
for y being Sequence
for s1, s2 being uSurreal-Sequence
for alpha being Ordinal st alpha c= dom s1 & alpha c= dom s2 & s1,y,r simplest_up_to alpha & s2,y,r simplest_up_to alpha holds
s1 | alpha = s2 | alpha
proof
let r be Sequence of REAL ; :: thesis: for y being Sequence
for s1, s2 being uSurreal-Sequence
for alpha being Ordinal st alpha c= dom s1 & alpha c= dom s2 & s1,y,r simplest_up_to alpha & s2,y,r simplest_up_to alpha holds
s1 | alpha = s2 | alpha

let y be Sequence; :: thesis: for s1, s2 being uSurreal-Sequence
for alpha being Ordinal st alpha c= dom s1 & alpha c= dom s2 & s1,y,r simplest_up_to alpha & s2,y,r simplest_up_to alpha holds
s1 | alpha = s2 | alpha

let s1, s2 be uSurreal-Sequence; :: thesis: for alpha being Ordinal st alpha c= dom s1 & alpha c= dom s2 & s1,y,r simplest_up_to alpha & s2,y,r simplest_up_to alpha holds
s1 | alpha = s2 | alpha

let alpha be Ordinal; :: thesis: ( alpha c= dom s1 & alpha c= dom s2 & s1,y,r simplest_up_to alpha & s2,y,r simplest_up_to alpha implies s1 | alpha = s2 | alpha )
assume that
A1: ( alpha c= dom s1 & alpha c= dom s2 ) and
A2: ( s1,y,r simplest_up_to alpha & s2,y,r simplest_up_to alpha ) ; :: thesis: s1 | alpha = s2 | alpha
defpred S1[ Ordinal] means ( $1 in alpha implies s1 . $1 = s2 . $1 );
A3: for D being Ordinal st ( for C being Ordinal st C in D holds
S1[C] ) holds
S1[D]
proof
let D be Ordinal; :: thesis: ( ( for C being Ordinal st C in D holds
S1[C] ) implies S1[D] )

assume A4: for C being Ordinal st C in D holds
S1[C]
; :: thesis: S1[D]
assume A5: D in alpha ; :: thesis: s1 . D = s2 . D
then A6: ( s1,y,r simplest_on_position D & s2,y,r simplest_on_position D ) by A2;
A7: D c= alpha by A5, ORDINAL1:def 2;
A8: ( dom (s1 | D) = D & D = dom (s2 | D) ) by RELAT_1:62, A5, ORDINAL1:def 2, A1;
A9: for x being object st x in D holds
(s1 | D) . x = (s2 | D) . x
proof
let x be object ; :: thesis: ( x in D implies (s1 | D) . x = (s2 | D) . x )
assume A10: x in D ; :: thesis: (s1 | D) . x = (s2 | D) . x
reconsider o = x as Ordinal by A10;
thus (s1 | D) . x = s1 . o by A10, FUNCT_1:49
.= s2 . o by A7, A4, A10
.= (s2 | D) . x by A10, FUNCT_1:49 ; :: thesis: verum
end;
( s1 . D in rng s1 & s2 . D in rng s2 ) by A1, A5, FUNCT_1:def 3;
then ( s1 . D is uSurreal & s2 . D is uSurreal ) by SURREALO:def 12;
hence s1 . D = s2 . D by A9, A6, A8, FUNCT_1:2, Th76; :: thesis: verum
end;
A11: for D being Ordinal holds S1[D] from ORDINAL1:sch 2(A3);
A12: ( dom (s1 | alpha) = alpha & alpha = dom (s2 | alpha) ) by A1, RELAT_1:62;
for x being object st x in alpha holds
(s1 | alpha) . x = (s2 | alpha) . x
proof
let x be object ; :: thesis: ( x in alpha implies (s1 | alpha) . x = (s2 | alpha) . x )
assume A13: x in alpha ; :: thesis: (s1 | alpha) . x = (s2 | alpha) . x
reconsider o = x as Ordinal by A13;
thus (s1 | alpha) . x = s1 . o by A13, FUNCT_1:49
.= s2 . o by A11, A13
.= (s2 | alpha) . x by A13, FUNCT_1:49 ; :: thesis: verum
end;
hence s1 | alpha = s2 | alpha by A12, FUNCT_1:2; :: thesis: verum
end;

theorem :: SURREALC:78
for r being Sequence of REAL
for y, s being Sequence
for alpha, beta being Ordinal st beta c= alpha & s,y,r simplest_up_to alpha holds
s,y,r simplest_up_to beta ;

theorem Th79: :: SURREALC:79
for x being Surreal
for r being Sequence of REAL
for y, s being Sequence
for alpha being Ordinal holds
( x in_meets_terms s,y,r,alpha iff x in_meets_terms s | (succ alpha),y,r,alpha )
proof
let x be Surreal; :: thesis: for r being Sequence of REAL
for y, s being Sequence
for alpha being Ordinal holds
( x in_meets_terms s,y,r,alpha iff x in_meets_terms s | (succ alpha),y,r,alpha )

let r be Sequence of REAL ; :: thesis: for y, s being Sequence
for alpha being Ordinal holds
( x in_meets_terms s,y,r,alpha iff x in_meets_terms s | (succ alpha),y,r,alpha )

let y, s be Sequence; :: thesis: for alpha being Ordinal holds
( x in_meets_terms s,y,r,alpha iff x in_meets_terms s | (succ alpha),y,r,alpha )

let alpha be Ordinal; :: thesis: ( x in_meets_terms s,y,r,alpha iff x in_meets_terms s | (succ alpha),y,r,alpha )
thus ( x in_meets_terms s,y,r,alpha implies x in_meets_terms s | (succ alpha),y,r,alpha ) :: thesis: ( x in_meets_terms s | (succ alpha),y,r,alpha implies x in_meets_terms s,y,r,alpha )
proof
assume A1: x in_meets_terms s,y,r,alpha ; :: thesis: x in_meets_terms s | (succ alpha),y,r,alpha
let beta be Ordinal; :: according to SURREALC:def 14 :: thesis: for sb, yb being Surreal st beta in alpha & sb = (s | (succ alpha)) . beta & yb = y . beta holds
x is sb,yb,r . beta -terms

let sb, yb be Surreal; :: thesis: ( beta in alpha & sb = (s | (succ alpha)) . beta & yb = y . beta implies x is sb,yb,r . beta -terms )
assume A2: ( beta in alpha & sb = (s | (succ alpha)) . beta & yb = y . beta ) ; :: thesis: x is sb,yb,r . beta -terms
beta in succ alpha by A2, ORDINAL1:8;
then (s | (succ alpha)) . beta = s . beta by FUNCT_1:49;
hence x is sb,yb,r . beta -terms by A1, A2; :: thesis: verum
end;
assume A3: x in_meets_terms s | (succ alpha),y,r,alpha ; :: thesis: x in_meets_terms s,y,r,alpha
let beta be Ordinal; :: according to SURREALC:def 14 :: thesis: for sb, yb being Surreal st beta in alpha & sb = s . beta & yb = y . beta holds
x is sb,yb,r . beta -terms

let sb, yb be Surreal; :: thesis: ( beta in alpha & sb = s . beta & yb = y . beta implies x is sb,yb,r . beta -terms )
assume A4: ( beta in alpha & sb = s . beta & yb = y . beta ) ; :: thesis: x is sb,yb,r . beta -terms
beta in succ alpha by A4, ORDINAL1:8;
then (s | (succ alpha)) . beta = s . beta by FUNCT_1:49;
hence x is sb,yb,r . beta -terms by A3, A4; :: thesis: verum
end;

theorem Th80: :: SURREALC:80
for r being Sequence of REAL
for y, s being Sequence
for alpha being Ordinal holds
( s | (succ alpha),y,r simplest_on_position alpha iff s,y,r simplest_on_position alpha )
proof
let r be Sequence of REAL ; :: thesis: for y, s being Sequence
for alpha being Ordinal holds
( s | (succ alpha),y,r simplest_on_position alpha iff s,y,r simplest_on_position alpha )

let y, s be Sequence; :: thesis: for alpha being Ordinal holds
( s | (succ alpha),y,r simplest_on_position alpha iff s,y,r simplest_on_position alpha )

let alpha be Ordinal; :: thesis: ( s | (succ alpha),y,r simplest_on_position alpha iff s,y,r simplest_on_position alpha )
per cases ( dom s c= succ alpha or not dom s c= succ alpha ) ;
suppose dom s c= succ alpha ; :: thesis: ( s | (succ alpha),y,r simplest_on_position alpha iff s,y,r simplest_on_position alpha )
hence ( s | (succ alpha),y,r simplest_on_position alpha iff s,y,r simplest_on_position alpha ) by RELAT_1:68; :: thesis: verum
end;
suppose not dom s c= succ alpha ; :: thesis: ( s | (succ alpha),y,r simplest_on_position alpha iff s,y,r simplest_on_position alpha )
thus ( s | (succ alpha),y,r simplest_on_position alpha implies s,y,r simplest_on_position alpha ) :: thesis: ( s,y,r simplest_on_position alpha implies s | (succ alpha),y,r simplest_on_position alpha )
proof
assume A1: s | (succ alpha),y,r simplest_on_position alpha ; :: thesis: s,y,r simplest_on_position alpha
let sa be Surreal; :: according to SURREALC:def 15 :: thesis: ( sa = s . alpha implies ( ( 0 = alpha implies sa = 0_No ) & ( 0 <> alpha implies ( sa in_meets_terms s,y,r,alpha & ( for x being uSurreal st x in_meets_terms s,y,r,alpha & x <> sa holds
born sa in born x ) ) ) ) )

assume A2: sa = s . alpha ; :: thesis: ( ( 0 = alpha implies sa = 0_No ) & ( 0 <> alpha implies ( sa in_meets_terms s,y,r,alpha & ( for x being uSurreal st x in_meets_terms s,y,r,alpha & x <> sa holds
born sa in born x ) ) ) )

A3: (s | (succ alpha)) . alpha = sa by ORDINAL1:6, A2, FUNCT_1:49;
hence ( 0 = alpha implies sa = 0_No ) by A1; :: thesis: ( 0 <> alpha implies ( sa in_meets_terms s,y,r,alpha & ( for x being uSurreal st x in_meets_terms s,y,r,alpha & x <> sa holds
born sa in born x ) ) )

assume A4: 0 <> alpha ; :: thesis: ( sa in_meets_terms s,y,r,alpha & ( for x being uSurreal st x in_meets_terms s,y,r,alpha & x <> sa holds
born sa in born x ) )

sa in_meets_terms s | (succ alpha),y,r,alpha by A1, A3;
hence sa in_meets_terms s,y,r,alpha by Th79; :: thesis: for x being uSurreal st x in_meets_terms s,y,r,alpha & x <> sa holds
born sa in born x

let x be uSurreal; :: thesis: ( x in_meets_terms s,y,r,alpha & x <> sa implies born sa in born x )
assume A5: ( x in_meets_terms s,y,r,alpha & x <> sa ) ; :: thesis: born sa in born x
x in_meets_terms s | (succ alpha),y,r,alpha by A5, Th79;
hence born sa in born x by A4, A1, A3, A5; :: thesis: verum
end;
assume A6: s,y,r simplest_on_position alpha ; :: thesis: s | (succ alpha),y,r simplest_on_position alpha
let sa be Surreal; :: according to SURREALC:def 15 :: thesis: ( sa = (s | (succ alpha)) . alpha implies ( ( 0 = alpha implies sa = 0_No ) & ( 0 <> alpha implies ( sa in_meets_terms s | (succ alpha),y,r,alpha & ( for x being uSurreal st x in_meets_terms s | (succ alpha),y,r,alpha & x <> sa holds
born sa in born x ) ) ) ) )

assume A7: sa = (s | (succ alpha)) . alpha ; :: thesis: ( ( 0 = alpha implies sa = 0_No ) & ( 0 <> alpha implies ( sa in_meets_terms s | (succ alpha),y,r,alpha & ( for x being uSurreal st x in_meets_terms s | (succ alpha),y,r,alpha & x <> sa holds
born sa in born x ) ) ) )

A8: s . alpha = sa by ORDINAL1:6, A7, FUNCT_1:49;
hence ( 0 = alpha implies sa = 0_No ) by A6; :: thesis: ( 0 <> alpha implies ( sa in_meets_terms s | (succ alpha),y,r,alpha & ( for x being uSurreal st x in_meets_terms s | (succ alpha),y,r,alpha & x <> sa holds
born sa in born x ) ) )

assume A9: 0 <> alpha ; :: thesis: ( sa in_meets_terms s | (succ alpha),y,r,alpha & ( for x being uSurreal st x in_meets_terms s | (succ alpha),y,r,alpha & x <> sa holds
born sa in born x ) )

sa in_meets_terms s,y,r,alpha by A6, A8;
hence sa in_meets_terms s | (succ alpha),y,r,alpha by Th79; :: thesis: for x being uSurreal st x in_meets_terms s | (succ alpha),y,r,alpha & x <> sa holds
born sa in born x

let x be uSurreal; :: thesis: ( x in_meets_terms s | (succ alpha),y,r,alpha & x <> sa implies born sa in born x )
assume A10: ( x in_meets_terms s | (succ alpha),y,r,alpha & x <> sa ) ; :: thesis: born sa in born x
x in_meets_terms s,y,r,alpha by A10, Th79;
hence born sa in born x by A9, A6, A8, A10; :: thesis: verum
end;
end;
end;

theorem Th81: :: SURREALC:81
for r being non-zero Sequence of REAL
for p, s being Sequence
for alpha being Ordinal st alpha c= dom r holds
for x, y, z being Surreal st x <= y & y <= z & x in_meets_terms s,p,r,alpha & z in_meets_terms s,p,r,alpha holds
y in_meets_terms s,p,r,alpha
proof
let r be non-zero Sequence of REAL ; :: thesis: for p, s being Sequence
for alpha being Ordinal st alpha c= dom r holds
for x, y, z being Surreal st x <= y & y <= z & x in_meets_terms s,p,r,alpha & z in_meets_terms s,p,r,alpha holds
y in_meets_terms s,p,r,alpha

let p, s be Sequence; :: thesis: for alpha being Ordinal st alpha c= dom r holds
for x, y, z being Surreal st x <= y & y <= z & x in_meets_terms s,p,r,alpha & z in_meets_terms s,p,r,alpha holds
y in_meets_terms s,p,r,alpha

let alpha be Ordinal; :: thesis: ( alpha c= dom r implies for x, y, z being Surreal st x <= y & y <= z & x in_meets_terms s,p,r,alpha & z in_meets_terms s,p,r,alpha holds
y in_meets_terms s,p,r,alpha )

assume alpha c= dom r ; :: thesis: for x, y, z being Surreal st x <= y & y <= z & x in_meets_terms s,p,r,alpha & z in_meets_terms s,p,r,alpha holds
y in_meets_terms s,p,r,alpha

let x, y, z be Surreal; :: thesis: ( x <= y & y <= z & x in_meets_terms s,p,r,alpha & z in_meets_terms s,p,r,alpha implies y in_meets_terms s,p,r,alpha )
assume A1: ( x <= y & y <= z & x in_meets_terms s,p,r,alpha & z in_meets_terms s,p,r,alpha ) ; :: thesis: y in_meets_terms s,p,r,alpha
let beta be Ordinal; :: according to SURREALC:def 14 :: thesis: for sb, yb being Surreal st beta in alpha & sb = s . beta & yb = p . beta holds
y is sb,yb,r . beta -terms

let sb, yb be Surreal; :: thesis: ( beta in alpha & sb = s . beta & yb = p . beta implies y is sb,yb,r . beta -terms )
assume A2: ( beta in alpha & sb = s . beta & yb = p . beta ) ; :: thesis: y is sb,yb,r . beta -terms
( x is sb,yb,r . beta -terms & z is sb,yb,r . beta -terms ) by A1, A2;
hence y is sb,yb,r . beta -terms by A1, Th74; :: thesis: verum
end;

theorem Th82: :: SURREALC:82
for r being non-zero Sequence of REAL
for y being strictly_decreasing Surreal-Sequence ex s being uSurreal-Sequence st
( dom s = succ ((dom r) /\ (dom y)) & s,y,r simplest_up_to dom s )
proof
let r be non-zero Sequence of REAL ; :: thesis: for y being strictly_decreasing Surreal-Sequence ex s being uSurreal-Sequence st
( dom s = succ ((dom r) /\ (dom y)) & s,y,r simplest_up_to dom s )

let y be strictly_decreasing Surreal-Sequence; :: thesis: ex s being uSurreal-Sequence st
( dom s = succ ((dom r) /\ (dom y)) & s,y,r simplest_up_to dom s )

defpred S1[ Ordinal] means ( $1 c= (dom r) /\ (dom y) implies ex s being uSurreal-Sequence st
( dom s = succ $1 & s,y,r simplest_up_to dom s ) );
A1: for D being Ordinal st ( for C being Ordinal st C in D holds
S1[C] ) holds
S1[D]
proof
let D be Ordinal; :: thesis: ( ( for C being Ordinal st C in D holds
S1[C] ) implies S1[D] )

assume A2: for C being Ordinal st C in D holds
S1[C]
; :: thesis: S1[D]
assume A3: D c= (dom r) /\ (dom y) ; :: thesis: ex s being uSurreal-Sequence st
( dom s = succ D & s,y,r simplest_up_to dom s )

then A4: ( D c= dom y & D c= dom r ) by XBOOLE_1:18;
A5: ( D c= dom y & D c= dom r ) by A3, XBOOLE_1:18;
per cases ( D = {} or ( D is limit_ordinal & D <> {} ) or not D is limit_ordinal ) ;
suppose A6: D = {} ; :: thesis: ex s being uSurreal-Sequence st
( dom s = succ D & s,y,r simplest_up_to dom s )

take s = <%0_No%>; :: thesis: ( dom s = succ D & s,y,r simplest_up_to dom s )
thus A7: dom s = succ D by A6, AFINSQ_1:def 4; :: thesis: s,y,r simplest_up_to dom s
let A be Ordinal; :: according to SURREALC:def 16 :: thesis: ( A in dom s implies s,y,r simplest_on_position A )
assume A8: A in dom s ; :: thesis: s,y,r simplest_on_position A
let sa be Surreal; :: according to SURREALC:def 15 :: thesis: ( sa = s . A implies ( ( 0 = A implies sa = 0_No ) & ( 0 <> A implies ( sa in_meets_terms s,y,r,A & ( for x being uSurreal st x in_meets_terms s,y,r,A & x <> sa holds
born sa in born x ) ) ) ) )

assume sa = s . A ; :: thesis: ( ( 0 = A implies sa = 0_No ) & ( 0 <> A implies ( sa in_meets_terms s,y,r,A & ( for x being uSurreal st x in_meets_terms s,y,r,A & x <> sa holds
born sa in born x ) ) ) )

hence ( ( 0 = A implies sa = 0_No ) & ( 0 <> A implies ( sa in_meets_terms s,y,r,A & ( for x being uSurreal st x in_meets_terms s,y,r,A & x <> sa holds
born sa in born x ) ) ) )
by A8, A6, A7, ORDINAL1:8; :: thesis: verum
end;
suppose A9: ( D is limit_ordinal & D <> {} ) ; :: thesis: ex s being uSurreal-Sequence st
( dom s = succ D & s,y,r simplest_up_to dom s )

defpred S2[ object , object ] means for A being Ordinal st A = $1 holds
( $2 is uSurreal-Sequence & ( for s being uSurreal-Sequence st s = $2 holds
( dom s = succ A & s,y,r simplest_up_to dom s ) ) );
A10: for e being object st e in D holds
ex o being object st S2[e,o]
proof
let e be object ; :: thesis: ( e in D implies ex o being object st S2[e,o] )
assume A11: e in D ; :: thesis: ex o being object st S2[e,o]
reconsider E = e as Ordinal by A11;
consider s being uSurreal-Sequence such that
A12: ( dom s = succ E & s,y,r simplest_up_to dom s ) by A11, ORDINAL1:def 2, A3, A2;
take s ; :: thesis: S2[e,s]
thus S2[e,s] by A12; :: thesis: verum
end;
consider S being Function such that
A13: ( dom S = D & ( for o being object st o in D holds
S2[o,S . o] ) )
from CLASSES1:sch 1(A10);
for o being object st o in rng S holds
o is Function
proof
let o be object ; :: thesis: ( o in rng S implies o is Function )
assume o in rng S ; :: thesis: o is Function
then ex a being object st
( a in dom S & S . a = o )
by FUNCT_1:def 3;
hence o is Function by A13; :: thesis: verum
end;
then S is Function-yielding by FUNCT_1:def 13;
then reconsider S = S as Function-yielding Function ;
deffunc H1( Ordinal) -> set = (S . $1) . $1;
consider s being Sequence such that
A14: ( dom s = D & ( for A being Ordinal st A in D holds
s . A = H1(A) ) )
from ORDINAL2:sch 2();
rng s is uniq-surreal-membered
proof
let a be object ; :: according to SURREALO:def 12 :: thesis: ( not a in rng s or a is set )
assume A15: a in rng s ; :: thesis: a is set
consider x being object such that
A16: ( x in dom s & s . x = a ) by A15, FUNCT_1:def 3;
reconsider x = x as Ordinal by A16;
reconsider Sx = S . x as uSurreal-Sequence by A16, A13, A14;
( x in succ x & succ x = dom Sx ) by A16, A14, A13, ORDINAL1:6;
then Sx . x in rng Sx by FUNCT_1:def 3;
then Sx . x is uSurreal by SURREALO:def 12;
hence a is set by A14, A16; :: thesis: verum
end;
then reconsider s = s as uSurreal-Sequence by Def10;
defpred S3[ Ordinal] means ( $1 in D implies ( S . $1 = s | (succ $1) & s,y,r simplest_on_position $1 ) );
A17: for E being Ordinal holds S3[E]
proof
let E be Ordinal; :: thesis: S3[E]
assume A18: E in D ; :: thesis: ( S . E = s | (succ E) & s,y,r simplest_on_position E )
reconsider SE = S . E as uSurreal-Sequence by A18, A13;
A19: succ E c= D by ORDINAL1:def 2, A18, A9, ORDINAL1:28;
A20: ( dom SE = succ E & SE,y,r simplest_up_to dom SE ) by A18, A13;
A21: dom (s | (succ E)) = succ E by A19, RELAT_1:62, A14;
for o being object st o in succ E holds
(s | (succ E)) . o = SE . o
proof
let o be object ; :: thesis: ( o in succ E implies (s | (succ E)) . o = SE . o )
assume A22: o in succ E ; :: thesis: (s | (succ E)) . o = SE . o
then reconsider o = o as Ordinal ;
A23: (s | (succ E)) . o = s . o by A22, FUNCT_1:49;
per cases ( o in E or o = E ) by A22, ORDINAL1:8;
suppose A24: o in E ; :: thesis: (s | (succ E)) . o = SE . o
A25: o in D by A18, A24, ORDINAL1:10;
reconsider So = S . o as uSurreal-Sequence by A25, A13;
A26: So . o = s . o by A14, A18, A24, ORDINAL1:10;
A27: ( dom So = succ o & So,y,r simplest_up_to dom So ) by A25, A13;
A28: dom So c= dom SE by A27, A20, A22, ORDINAL1:21;
A29: SE,y,r simplest_up_to dom So by A28, A20;
( (So | (succ o)) . o = So . o & (SE | (succ o)) . o = SE . o ) by ORDINAL1:6, FUNCT_1:49;
hence (s | (succ E)) . o = SE . o by A26, A23, A27, A29, A28, Th77; :: thesis: verum
end;
suppose o = E ; :: thesis: (s | (succ E)) . o = SE . o
hence (s | (succ E)) . o = SE . o by A23, A14, A18; :: thesis: verum
end;
end;
end;
then A30: s | (succ E) = SE by A20, A21, FUNCT_1:2;
E in succ E by ORDINAL1:6;
hence ( S . E = s | (succ E) & s,y,r simplest_on_position E ) by A20, A30, Th80; :: thesis: verum
end;
then A31: s,y,r simplest_up_to D ;
defpred S4[ object , object ] means ( $2 is Surreal & ( for A being Ordinal st A = $1 holds
for sa, ya being Surreal st sa = s . (succ A) & ya = y . (succ A) holds
$2 = (sa + ((uReal . (r . (succ A))) * (No_omega^ ya))) + (No_omega^ ya) ) );
A32: for e being object st e in D holds
ex o being object st S4[e,o]
proof
let e be object ; :: thesis: ( e in D implies ex o being object st S4[e,o] )
assume A33: e in D ; :: thesis: ex o being object st S4[e,o]
reconsider E = e as Ordinal by A33;
succ E in D by A33, A9, ORDINAL1:28;
then ( y . (succ E) in rng y & s . (succ E) in rng s ) by A4, A14, FUNCT_1:def 3;
then reconsider ya = y . (succ E), sa = s . (succ E) as Surreal by SURREAL0:def 16;
take o = (sa + ((uReal . (r . (succ E))) * (No_omega^ ya))) + (No_omega^ ya); :: thesis: S4[e,o]
thus S4[e,o] ; :: thesis: verum
end;
consider upp being Function such that
A34: dom upp = D and
A35: for o being object st o in D holds
S4[o,upp . o]
from CLASSES1:sch 1(A32);
A36: rng upp is surreal-membered
proof
let o be object ; :: according to SURREAL0:def 16 :: thesis: ( not o in rng upp or o is surreal )
assume A37: o in rng upp ; :: thesis: o is surreal
ex a being object st
( a in dom upp & upp . a = o )
by A37, FUNCT_1:def 3;
hence o is surreal by A34, A35; :: thesis: verum
end;
A38: for A, B being Ordinal st A in B & B in D holds
for uA, uB being Surreal st uA = upp . A & uB = upp . B holds
uB < uA
proof
let A, B be Ordinal; :: thesis: ( A in B & B in D implies for uA, uB being Surreal st uA = upp . A & uB = upp . B holds
uB < uA )

assume A39: ( A in B & B in D ) ; :: thesis: for uA, uB being Surreal st uA = upp . A & uB = upp . B holds
uB < uA

let uA, uB be Surreal; :: thesis: ( uA = upp . A & uB = upp . B implies uB < uA )
assume A40: ( uA = upp . A & uB = upp . B ) ; :: thesis: uB < uA
succ B in D by A39, A9, ORDINAL1:28;
then ( y . (succ B) in rng y & s . (succ B) in rng s ) by A4, A14, FUNCT_1:def 3;
then reconsider yB = y . (succ B), sB = s . (succ B) as Surreal by SURREAL0:def 16;
A41: A in D by A39, ORDINAL1:10;
then succ A in D by A9, ORDINAL1:28;
then ( y . (succ A) in rng y & s . (succ A) in rng s ) by A4, A14, FUNCT_1:def 3;
then reconsider yA = y . (succ A), sA = s . (succ A) as Surreal by SURREAL0:def 16;
set NA = No_omega^ yA;
set NB = No_omega^ yB;
A42: succ B in D by A39, A9, ORDINAL1:28;
s,y,r simplest_on_position succ B by A31, A39, A9, ORDINAL1:28;
then A43: sB in_meets_terms s,y,r, succ B ;
set n = 2;
A44: ( uA = (sA + ((uReal . (r . (succ A))) * (No_omega^ yA))) + (No_omega^ yA) & uB = (sB + ((uReal . (r . (succ B))) * (No_omega^ yB))) + (No_omega^ yB) ) by A40, A41, A39, A35;
A45: succ A c= B by A39, ORDINAL1:21;
then sB is sA,yA,r . (succ A) -terms by A43, ORDINAL1:22;
then |.(sB - (sA + ((uReal . (r . (succ A))) * (No_omega^ yA)))).| infinitely< No_omega^ yA by Th73;
then |.(sB + (- (sA + ((uReal . (r . (succ A))) * (No_omega^ yA))))).| infinitely< (No_omega^ yA) * (uReal . (1 / 2)) by Th13;
then |.(sB + (- (sA + ((uReal . (r . (succ A))) * (No_omega^ yA))))).| < (No_omega^ yA) * (uReal . (1 / 2)) by Th9;
then sB - (sA + ((uReal . (r . (succ A))) * (No_omega^ yA))) < (No_omega^ yA) * (uReal . (1 / 2)) by Th52;
then A46: sB < ((No_omega^ yA) * (uReal . (1 / 2))) + (sA + ((uReal . (r . (succ A))) * (No_omega^ yA))) by SURREALR:41;
((uReal . (r . (succ B))) * (No_omega^ yB)) + (No_omega^ yB) = ((uReal . (r . (succ B))) * (No_omega^ yB)) + ((uReal . 1) * (No_omega^ yB)) by SURREALN:48;
then A47: ((uReal . (r . (succ B))) * (No_omega^ yB)) + (No_omega^ yB) == ((uReal . (r . (succ B))) + (uReal . 1)) * (No_omega^ yB) by SURREALR:67;
((uReal . (r . (succ B))) + (uReal . 1)) * (No_omega^ yB) == (uReal . (1 + (r . (succ B)))) * (No_omega^ yB) by SURREALR:51, SURREALN:55;
then A48: ((uReal . (r . (succ B))) * (No_omega^ yB)) + (No_omega^ yB) == (uReal . (1 + (r . (succ B)))) * (No_omega^ yB) by A47, SURREALO:4;
yB < yA by Def11, A5, A45, ORDINAL1:22, A42;
then No_omega^ yB infinitely< No_omega^ yA by Lm5;
then ( 0_No <= No_omega^ yB & No_omega^ yB infinitely< (No_omega^ yA) * (uReal . (1 / 2)) ) by Th13, SURREALI:def 8;
then (uReal . (1 + (r . (succ B)))) * (No_omega^ yB) < (No_omega^ yA) * (uReal . (1 / 2)) by Th20;
then A49: ((uReal . (r . (succ B))) * (No_omega^ yB)) + (No_omega^ yB) < (No_omega^ yA) * (uReal . (1 / 2)) by A48, SURREALO:4;
uB = sB + (((uReal . (r . (succ B))) * (No_omega^ yB)) + (No_omega^ yB)) by A44, SURREALR:37;
then A50: uB <= sB + ((No_omega^ yA) * (uReal . (1 / 2))) by A49, SURREALR:44;
sB + ((No_omega^ yA) * (uReal . (1 / 2))) < (((No_omega^ yA) * (uReal . (1 / 2))) + (sA + ((uReal . (r . (succ A))) * (No_omega^ yA)))) + ((No_omega^ yA) * (uReal . (1 / 2))) by A46, SURREALR:44;
then A51: uB < (((No_omega^ yA) * (uReal . (1 / 2))) + (sA + ((uReal . (r . (succ A))) * (No_omega^ yA)))) + ((No_omega^ yA) * (uReal . (1 / 2))) by A50, SURREALO:4;
(1 / 2) + (1 / 2) = 1 ;
then A52: ( (No_omega^ yA) * ((uReal . (1 / 2)) + (uReal . (1 / 2))) == (No_omega^ yA) * 1_No & (No_omega^ yA) * 1_No = No_omega^ yA ) by SURREALR:51, SURREALN:55, SURREALN:48;
(No_omega^ yA) * ((uReal . (1 / 2)) + (uReal . (1 / 2))) == ((No_omega^ yA) * (uReal . (1 / 2))) + ((No_omega^ yA) * (uReal . (1 / 2))) by SURREALR:67;
then A53: No_omega^ yA == ((No_omega^ yA) * (uReal . (1 / 2))) + ((No_omega^ yA) * (uReal . (1 / 2))) by A52, SURREALO:4;
( (((No_omega^ yA) * (uReal . (1 / 2))) + (sA + ((uReal . (r . (succ A))) * (No_omega^ yA)))) + ((No_omega^ yA) * (uReal . (1 / 2))) = (((No_omega^ yA) * (uReal . (1 / 2))) + ((No_omega^ yA) * (uReal . (1 / 2)))) + (sA + ((uReal . (r . (succ A))) * (No_omega^ yA))) & (((No_omega^ yA) * (uReal . (1 / 2))) + ((No_omega^ yA) * (uReal . (1 / 2)))) + (sA + ((uReal . (r . (succ A))) * (No_omega^ yA))) == (No_omega^ yA) + (sA + ((uReal . (r . (succ A))) * (No_omega^ yA))) ) by SURREALR:37, A53, SURREALR:43;
hence uB < uA by A44, A51, SURREALO:4; :: thesis: verum
end;
defpred S5[ object , object ] means ( $2 is Surreal & ( for A being Ordinal st A = $1 holds
for sa, ya being Surreal st sa = s . (succ A) & ya = y . (succ A) holds
$2 = (sa + ((uReal . (r . (succ A))) * (No_omega^ ya))) + (- (No_omega^ ya)) ) );
A54: for e being object st e in D holds
ex o being object st S5[e,o]
proof
let e be object ; :: thesis: ( e in D implies ex o being object st S5[e,o] )
assume A55: e in D ; :: thesis: ex o being object st S5[e,o]
reconsider E = e as Ordinal by A55;
succ E in D by A55, A9, ORDINAL1:28;
then ( y . (succ E) in rng y & s . (succ E) in rng s ) by A4, A14, FUNCT_1:def 3;
then reconsider ya = y . (succ E), sa = s . (succ E) as Surreal by SURREAL0:def 16;
take o = (sa + ((uReal . (r . (succ E))) * (No_omega^ ya))) + (- (No_omega^ ya)); :: thesis: S5[e,o]
thus S5[e,o] ; :: thesis: verum
end;
consider low being Function such that
A56: dom low = D and
A57: for o being object st o in D holds
S5[o,low . o]
from CLASSES1:sch 1(A54);
A58: rng low is surreal-membered
proof
let o be object ; :: according to SURREAL0:def 16 :: thesis: ( not o in rng low or o is surreal )
assume A59: o in rng low ; :: thesis: o is surreal
consider a being object such that
A60: ( a in dom low & low . a = o ) by A59, FUNCT_1:def 3;
thus o is surreal by A60, A56, A57; :: thesis: verum
end;
A61: for A, B being Ordinal st A in B & B in D holds
for lA, lB being Surreal st lA = low . A & lB = low . B holds
lA < lB
proof
let A, B be Ordinal; :: thesis: ( A in B & B in D implies for lA, lB being Surreal st lA = low . A & lB = low . B holds
lA < lB )

assume A62: ( A in B & B in D ) ; :: thesis: for lA, lB being Surreal st lA = low . A & lB = low . B holds
lA < lB

let uA, uB be Surreal; :: thesis: ( uA = low . A & uB = low . B implies uA < uB )
assume A63: ( uA = low . A & uB = low . B ) ; :: thesis: uA < uB
A64: ( succ B in D & D c= dom y ) by A3, XBOOLE_1:18, A62, A9, ORDINAL1:28;
( y . (succ B) in rng y & s . (succ B) in rng s ) by A64, A14, FUNCT_1:def 3;
then reconsider yB = y . (succ B), sB = s . (succ B) as Surreal by SURREAL0:def 16;
A65: A in D by A62, ORDINAL1:10;
then succ A in D by A9, ORDINAL1:28;
then ( y . (succ A) in rng y & s . (succ A) in rng s ) by A4, A14, FUNCT_1:def 3;
then reconsider yA = y . (succ A), sA = s . (succ A) as Surreal by SURREAL0:def 16;
set NA = No_omega^ yA;
set NB = No_omega^ yB;
A66: succ B in D by A62, A9, ORDINAL1:28;
s,y,r simplest_on_position succ B by A31, A62, A9, ORDINAL1:28;
then A67: sB in_meets_terms s,y,r, succ B ;
set n = 2;
A68: ( uA = (sA + ((uReal . (r . (succ A))) * (No_omega^ yA))) + (- (No_omega^ yA)) & uB = (sB + ((uReal . (r . (succ B))) * (No_omega^ yB))) + (- (No_omega^ yB)) ) by A63, A65, A62, A57;
A69: succ A c= B by A62, ORDINAL1:21;
then sB is sA,yA,r . (succ A) -terms by A67, ORDINAL1:22;
then |.(sB - (sA + ((uReal . (r . (succ A))) * (No_omega^ yA)))).| infinitely< No_omega^ yA by Th73;
then |.(sB + (- (sA + ((uReal . (r . (succ A))) * (No_omega^ yA))))).| infinitely< (No_omega^ yA) * (uReal . (1 / 2)) by Th13;
then |.(sB + (- (sA + ((uReal . (r . (succ A))) * (No_omega^ yA))))).| < (No_omega^ yA) * (uReal . (1 / 2)) by Th9;
then - ((No_omega^ yA) * (uReal . (1 / 2))) < sB - (sA + ((uReal . (r . (succ A))) * (No_omega^ yA))) by Th52;
then A70: (- ((No_omega^ yA) * (uReal . (1 / 2)))) + (sA + ((uReal . (r . (succ A))) * (No_omega^ yA))) < sB by SURREALR:42;
(- ((uReal . (r . (succ B))) * (No_omega^ yB))) + (No_omega^ yB) = ((- (uReal . (r . (succ B)))) * (No_omega^ yB)) + ((uReal . 1) * (No_omega^ yB)) by SURREALR:58, SURREALN:48;
then A71: (- ((uReal . (r . (succ B))) * (No_omega^ yB))) + (No_omega^ yB) == ((- (uReal . (r . (succ B)))) + (uReal . 1)) * (No_omega^ yB) by SURREALR:67;
- (uReal . (r . (succ B))) == uReal . (- (r . (succ B))) by SURREALN:56;
then A72: (- (uReal . (r . (succ B)))) + (uReal . 1) == (uReal . (- (r . (succ B)))) + (uReal . 1) by SURREALR:43;
(uReal . (- (r . (succ B)))) + (uReal . 1) == uReal . (1 + (- (r . (succ B)))) by SURREALN:55;
then (- (uReal . (r . (succ B)))) + (uReal . 1) == uReal . (1 + (- (r . (succ B)))) by A72, SURREALO:4;
then ((- (uReal . (r . (succ B)))) + (uReal . 1)) * (No_omega^ yB) == (uReal . (1 + (- (r . (succ B))))) * (No_omega^ yB) by SURREALR:51;
then A73: (- ((uReal . (r . (succ B))) * (No_omega^ yB))) + (No_omega^ yB) == (uReal . (1 + (- (r . (succ B))))) * (No_omega^ yB) by A71, SURREALO:4;
yB < yA by A4, Def11, A69, ORDINAL1:22, A66;
then No_omega^ yB infinitely< No_omega^ yA by Lm5;
then ( 0_No <= No_omega^ yB & No_omega^ yB infinitely< (No_omega^ yA) * (uReal . (1 / 2)) ) by Th13, SURREALI:def 8;
then (uReal . (1 + (- (r . (succ B))))) * (No_omega^ yB) < (No_omega^ yA) * (uReal . (1 / 2)) by Th20;
then (- ((uReal . (r . (succ B))) * (No_omega^ yB))) + (No_omega^ yB) < (No_omega^ yA) * (uReal . (1 / 2)) by A73, SURREALO:4;
then A74: ( - ((No_omega^ yA) * (uReal . (1 / 2))) < - ((- ((uReal . (r . (succ B))) * (No_omega^ yB))) + (No_omega^ yB)) & - ((- ((uReal . (r . (succ B))) * (No_omega^ yB))) + (No_omega^ yB)) = (- (- ((uReal . (r . (succ B))) * (No_omega^ yB)))) + (- (No_omega^ yB)) ) by SURREALR:10, SURREALR:40;
sB + (((uReal . (r . (succ B))) * (No_omega^ yB)) + (- (No_omega^ yB))) = uB by A68, SURREALR:37;
then A75: sB + (- ((No_omega^ yA) * (uReal . (1 / 2)))) < uB by A74, SURREALR:44;
((- ((No_omega^ yA) * (uReal . (1 / 2)))) + (sA + ((uReal . (r . (succ A))) * (No_omega^ yA)))) + (- ((No_omega^ yA) * (uReal . (1 / 2)))) <= sB + (- ((No_omega^ yA) * (uReal . (1 / 2)))) by A70, SURREALR:44;
then A76: ((- ((No_omega^ yA) * (uReal . (1 / 2)))) + (sA + ((uReal . (r . (succ A))) * (No_omega^ yA)))) + (- ((No_omega^ yA) * (uReal . (1 / 2)))) < uB by A75, SURREALO:4;
(1 / 2) + (1 / 2) = 1 ;
then A77: ( (No_omega^ yA) * ((uReal . (1 / 2)) + (uReal . (1 / 2))) == (No_omega^ yA) * 1_No & (No_omega^ yA) * 1_No = No_omega^ yA ) by SURREALN:55, SURREALN:48, SURREALR:51;
(No_omega^ yA) * ((uReal . (1 / 2)) + (uReal . (1 / 2))) == ((No_omega^ yA) * (uReal . (1 / 2))) + ((No_omega^ yA) * (uReal . (1 / 2))) by SURREALR:67;
then No_omega^ yA == ((No_omega^ yA) * (uReal . (1 / 2))) + ((No_omega^ yA) * (uReal . (1 / 2))) by A77, SURREALO:4;
then - (No_omega^ yA) == - (((No_omega^ yA) * (uReal . (1 / 2))) + ((No_omega^ yA) * (uReal . (1 / 2)))) by SURREALR:10;
then A78: - (No_omega^ yA) == (- ((No_omega^ yA) * (uReal . (1 / 2)))) + (- ((No_omega^ yA) * (uReal . (1 / 2)))) by SURREALR:40;
( ((- ((No_omega^ yA) * (uReal . (1 / 2)))) + (sA + ((uReal . (r . (succ A))) * (No_omega^ yA)))) + (- ((No_omega^ yA) * (uReal . (1 / 2)))) = ((- ((No_omega^ yA) * (uReal . (1 / 2)))) + (- ((No_omega^ yA) * (uReal . (1 / 2))))) + (sA + ((uReal . (r . (succ A))) * (No_omega^ yA))) & ((- ((No_omega^ yA) * (uReal . (1 / 2)))) + (- ((No_omega^ yA) * (uReal . (1 / 2))))) + (sA + ((uReal . (r . (succ A))) * (No_omega^ yA))) == (- (No_omega^ yA)) + (sA + ((uReal . (r . (succ A))) * (No_omega^ yA))) ) by SURREALR:37, A78, SURREALR:43;
hence uA < uB by A76, A68, SURREALO:4; :: thesis: verum
end;
A79: for A being Ordinal st A in D holds
for lA, uA being Surreal st lA = low . A & uA = upp . A holds
lA < uA
proof
let A be Ordinal; :: thesis: ( A in D implies for lA, uA being Surreal st lA = low . A & uA = upp . A holds
lA < uA )

assume A80: A in D ; :: thesis: for lA, uA being Surreal st lA = low . A & uA = upp . A holds
lA < uA

let lA, uA be Surreal; :: thesis: ( lA = low . A & uA = upp . A implies lA < uA )
assume A81: ( lA = low . A & uA = upp . A ) ; :: thesis: lA < uA
succ A in D by A80, A9, ORDINAL1:28;
then ( y . (succ A) in rng y & s . (succ A) in rng s ) by A4, A14, FUNCT_1:def 3;
then reconsider yA = y . (succ A), sA = s . (succ A) as Surreal by SURREAL0:def 16;
set NA = No_omega^ yA;
A82: ( lA = (sA + ((uReal . (r . (succ A))) * (No_omega^ yA))) + (- (No_omega^ yA)) & uA = (sA + ((uReal . (r . (succ A))) * (No_omega^ yA))) + (No_omega^ yA) ) by A80, A81, A57, A35;
( - (No_omega^ yA) <= - 0_No & - 0_No = 0_No ) by SURREALI:def 8, SURREALR:10;
then - (No_omega^ yA) < No_omega^ yA by SURREALI:def 8, SURREALO:4;
hence lA < uA by A82, SURREALR:44; :: thesis: verum
end;
A83: rng low << rng upp
proof
let l, u be Surreal; :: according to SURREAL0:def 20 :: thesis: ( not l in rng low or not u in rng upp or not u <= l )
assume A84: ( l in rng low & u in rng upp ) ; :: thesis: not u <= l
consider A being object such that
A85: ( A in dom low & low . A = l ) by A84, FUNCT_1:def 3;
consider B being object such that
A86: ( B in dom upp & upp . B = u ) by A84, FUNCT_1:def 3;
reconsider A = A, B = B as Ordinal by A85, A86, A56, A34;
reconsider lowB = low . B, uppA = upp . A as Surreal by A85, A86, A56, A57, A34, A35;
per cases ( A = B or A in B or B in A ) by ORDINAL1:14;
suppose A = B ; :: thesis: not u <= l
hence not u <= l by A85, A86, A79, A56; :: thesis: verum
end;
suppose A in B ; :: thesis: not u <= l
then ( l < lowB & lowB <= u ) by A61, A85, A86, A34, A79;
hence not u <= l by SURREALO:4; :: thesis: verum
end;
suppose B in A ; :: thesis: not u <= l
then ( l <= uppA & uppA < u ) by A38, A85, A86, A56, A79;
hence not u <= l by SURREALO:4; :: thesis: verum
end;
end;
end;
consider M being Ordinal such that
A87: for o being object st o in (rng low) \/ (rng upp) holds
ex A being Ordinal st
( A in M & o in Day A )
by A36, A58, SURREAL0:47;
[(rng low),(rng upp)] in Day M by A83, A87, SURREAL0:46;
then reconsider rLU = [(rng low),(rng upp)] as Surreal ;
defpred S6[ Surreal] means $1 in_meets_terms s,y,r,D;
rLU in_meets_terms s,y,r,D
proof
let A be Ordinal; :: according to SURREALC:def 14 :: thesis: for sb, yb being Surreal st A in D & sb = s . A & yb = y . A holds
rLU is sb,yb,r . A -terms

let sb, yb be Surreal; :: thesis: ( A in D & sb = s . A & yb = y . A implies rLU is sb,yb,r . A -terms )
assume A88: ( A in D & sb = s . A & yb = y . A ) ; :: thesis: rLU is sb,yb,r . A -terms
reconsider lowA = low . A, uppA = upp . A as Surreal by A88, A57, A35;
A89: succ A in D by A88, A9, ORDINAL1:28;
then ( y . (succ A) in rng y & s . (succ A) in rng s ) by A4, A14, FUNCT_1:def 3;
then reconsider yA = y . (succ A), sA = s . (succ A) as Surreal by SURREAL0:def 16;
set NA = No_omega^ yA;
A90: ( lowA = (sA + ((uReal . (r . (succ A))) * (No_omega^ yA))) + (- (No_omega^ yA)) & uppA = (sA + ((uReal . (r . (succ A))) * (No_omega^ yA))) + (No_omega^ yA) ) by A88, A57, A35;
A91: r . A in rng r by A88, A4, FUNCT_1:def 3;
s,y,r simplest_on_position succ A by A31, A88, A9, ORDINAL1:28;
then A92: sA in_meets_terms s,y,r, succ A ;
sA is sb,yb,r . A -terms by ORDINAL1:6, A88, A92;
then A93: |.(sA - (sb + ((uReal . (r . A)) * (No_omega^ yb)))).| infinitely< No_omega^ yb by Th73;
yA < yb by ORDINAL1:6, A89, A88, Def11, A5;
then A94: No_omega^ yA infinitely< No_omega^ yb by Lm5;
A95: ( lowA in rng low & uppA in rng upp ) by A88, A56, A34, FUNCT_1:def 3;
A96: ( L_ rLU << {rLU} & {rLU} << R_ rLU & rLU in {rLU} ) by SURREALO:11, TARSKI:def 1;
then - rLU < - ((sA + ((uReal . (r . (succ A))) * (No_omega^ yA))) + (- (No_omega^ yA))) by A95, A90, SURREALR:10;
then A97: (- rLU) + (sb + ((uReal . (r . A)) * (No_omega^ yb))) <= (- ((sA + ((uReal . (r . (succ A))) * (No_omega^ yA))) + (- (No_omega^ yA)))) + (sb + ((uReal . (r . A)) * (No_omega^ yb))) by SURREALR:44;
A98: (- rLU) + (sb + ((uReal . (r . A)) * (No_omega^ yb))) = (- rLU) + (- (- (sb + ((uReal . (r . A)) * (No_omega^ yb)))))
.= - (rLU + (- (sb + ((uReal . (r . A)) * (No_omega^ yb))))) by SURREALR:40 ;
A99: (- ((sA + ((uReal . (r . (succ A))) * (No_omega^ yA))) + (- (No_omega^ yA)))) + (sb + ((uReal . (r . A)) * (No_omega^ yb))) = ((- (sA + ((uReal . (r . (succ A))) * (No_omega^ yA)))) + (- (- (No_omega^ yA)))) + (sb + ((uReal . (r . A)) * (No_omega^ yb))) by SURREALR:40
.= (((- sA) + (- ((uReal . (r . (succ A))) * (No_omega^ yA)))) + (No_omega^ yA)) + (sb + ((uReal . (r . A)) * (No_omega^ yb))) by SURREALR:40
.= ((- sA) + ((- ((uReal . (r . (succ A))) * (No_omega^ yA))) + (No_omega^ yA))) + (sb + ((uReal . (r . A)) * (No_omega^ yb))) by SURREALR:37
.= ((- sA) + (- (- (sb + ((uReal . (r . A)) * (No_omega^ yb)))))) + ((- ((uReal . (r . (succ A))) * (No_omega^ yA))) + (No_omega^ yA)) by SURREALR:37
.= (- (sA + (- (sb + ((uReal . (r . A)) * (No_omega^ yb)))))) + ((- ((uReal . (r . (succ A))) * (No_omega^ yA))) + (No_omega^ yA)) by SURREALR:40 ;
A100: 0_No <= No_omega^ yA by SURREALI:def 8;
then A101: No_omega^ yA = |.(No_omega^ yA).| by Def6;
A102: |.((uReal . (r . (succ A))) * (No_omega^ yA)).| infinitely< No_omega^ yb by A94, A100, Th53;
then |.((No_omega^ yA) + ((uReal . (r . (succ A))) * (No_omega^ yA))).| infinitely< No_omega^ yb by A94, Th41, A101;
then A103: |.((sA + (- (sb + ((uReal . (r . A)) * (No_omega^ yb))))) + ((No_omega^ yA) + ((uReal . (r . (succ A))) * (No_omega^ yA)))).| infinitely< No_omega^ yb by A93, Th41;
A104: |.(- (sA + (- (sb + ((uReal . (r . A)) * (No_omega^ yb)))))).| infinitely< No_omega^ yb by A93, Th42;
|.((No_omega^ yA) - ((uReal . (r . (succ A))) * (No_omega^ yA))).| infinitely< No_omega^ yb by A94, Th43, A101, A102;
then A105: |.((- (sA + (- (sb + ((uReal . (r . A)) * (No_omega^ yb)))))) + ((No_omega^ yA) + (- ((uReal . (r . (succ A))) * (No_omega^ yA))))).| infinitely< No_omega^ yb by A104, Th41;
(- (sA + (- (sb + ((uReal . (r . A)) * (No_omega^ yb)))))) + ((No_omega^ yA) + (- ((uReal . (r . (succ A))) * (No_omega^ yA)))) infinitely< No_omega^ yb by Th34, Th11, A105;
then A106: - (rLU + (- (sb + ((uReal . (r . A)) * (No_omega^ yb))))) infinitely< No_omega^ yb by A98, A97, A99, Th11;
A107: rLU + (- (sb + ((uReal . (r . A)) * (No_omega^ yb)))) <= ((sA + ((uReal . (r . (succ A))) * (No_omega^ yA))) + (No_omega^ yA)) + (- (sb + ((uReal . (r . A)) * (No_omega^ yb)))) by A95, A96, A90, SURREALR:44;
A108: ((sA + ((uReal . (r . (succ A))) * (No_omega^ yA))) + (No_omega^ yA)) + (- (sb + ((uReal . (r . A)) * (No_omega^ yb)))) = (sA + (((uReal . (r . (succ A))) * (No_omega^ yA)) + (No_omega^ yA))) + (- (sb + ((uReal . (r . A)) * (No_omega^ yb)))) by SURREALR:37
.= (sA + (- (sb + ((uReal . (r . A)) * (No_omega^ yb))))) + ((No_omega^ yA) + ((uReal . (r . (succ A))) * (No_omega^ yA))) by SURREALR:37 ;
(sA + (- (sb + ((uReal . (r . A)) * (No_omega^ yb))))) + ((No_omega^ yA) + ((uReal . (r . (succ A))) * (No_omega^ yA))) infinitely< No_omega^ yb by Th34, A103, Th11;
then rLU + (- (sb + ((uReal . (r . A)) * (No_omega^ yb)))) infinitely< No_omega^ yb by A108, A107, Th11;
then |.(rLU - (sb + ((uReal . (r . A)) * (No_omega^ yb)))).| infinitely< No_omega^ yb by Def6, A106;
hence rLU is sb,yb,r . A -terms by A91, Th73; :: thesis: verum
end;
then A109: ex x being Surreal st S6[x] ;
A110: for x, y, z being Surreal st x <= y & y <= z & S6[x] & S6[z] holds
S6[y]
by Th81, A3, XBOOLE_1:18;
consider sD being uSurreal such that
A111: S6[sD] and
A112: for x being uSurreal st S6[x] & x <> sD holds
born sD in born x
from SURREALC:sch 1(A109, A110);
take ssD = s ^ <%sD%>; :: thesis: ( dom ssD = succ D & ssD,y,r simplest_up_to dom ssD )
A113: dom <%sD%> = 1 by AFINSQ_1:def 4;
then dom ssD = (dom s) +^ 1 by ORDINAL4:def 1;
hence A114: dom ssD = succ D by A14, ORDINAL2:31; :: thesis: ssD,y,r simplest_up_to dom ssD
let B be Ordinal; :: according to SURREALC:def 16 :: thesis: ( B in dom ssD implies ssD,y,r simplest_on_position B )
assume A115: B in dom ssD ; :: thesis: ssD,y,r simplest_on_position B
A116: dom s = (dom ssD) /\ (dom s) by ORDINAL7:1, A14, A114;
for o being object st o in dom s holds
s . o = ssD . o
by ORDINAL4:def 1;
then A117: ssD | D = s by A116, FUNCT_1:46, A14;
A118: s | D = s by A14;
per cases ( B = D or B in D ) by A114, A115, ORDINAL1:8;
suppose A119: B = D ; :: thesis: ssD,y,r simplest_on_position B
ssD,y,r simplest_on_position D
proof
let sa be Surreal; :: according to SURREALC:def 15 :: thesis: ( sa = ssD . D implies ( ( 0 = D implies sa = 0_No ) & ( 0 <> D implies ( sa in_meets_terms ssD,y,r,D & ( for x being uSurreal st x in_meets_terms ssD,y,r,D & x <> sa holds
born sa in born x ) ) ) ) )

assume A120: sa = ssD . D ; :: thesis: ( ( 0 = D implies sa = 0_No ) & ( 0 <> D implies ( sa in_meets_terms ssD,y,r,D & ( for x being uSurreal st x in_meets_terms ssD,y,r,D & x <> sa holds
born sa in born x ) ) ) )

0 in dom <%sD%> by A113, TARSKI:def 1, CARD_1:49;
then ( ssD . (D +^ 0) = <%sD%> . 0 & <%sD%> . 0 = sD ) by A14, ORDINAL4:def 1;
then A121: sa = sD by A120, ORDINAL2:27;
thus ( 0 = D implies sa = 0_No ) by A9; :: thesis: ( 0 <> D implies ( sa in_meets_terms ssD,y,r,D & ( for x being uSurreal st x in_meets_terms ssD,y,r,D & x <> sa holds
born sa in born x ) ) )

assume 0 <> D ; :: thesis: ( sa in_meets_terms ssD,y,r,D & ( for x being uSurreal st x in_meets_terms ssD,y,r,D & x <> sa holds
born sa in born x ) )

thus sa in_meets_terms ssD,y,r,D by A111, A117, A118, Th75, A121; :: thesis: for x being uSurreal st x in_meets_terms ssD,y,r,D & x <> sa holds
born sa in born x

let x be uSurreal; :: thesis: ( x in_meets_terms ssD,y,r,D & x <> sa implies born sa in born x )
thus ( x in_meets_terms ssD,y,r,D & x <> sa implies born sa in born x ) by A117, A118, Th75, A112, A121; :: thesis: verum
end;
hence ssD,y,r simplest_on_position B by A119; :: thesis: verum
end;
suppose A122: B in D ; :: thesis: ssD,y,r simplest_on_position B
then A123: s | (succ B),y,r simplest_on_position B by A17, Th80;
ssD | (succ B) = s | (succ B) by A122, ORDINAL1:21, A117, RELAT_1:74;
hence ssD,y,r simplest_on_position B by A123, Th80; :: thesis: verum
end;
end;
end;
suppose not D is limit_ordinal ; :: thesis: ex s being uSurreal-Sequence st
( dom s = succ D & s,y,r simplest_up_to dom s )

then consider d being Ordinal such that
A124: D = succ d by ORDINAL1:29;
A125: d in D by A124, ORDINAL1:6;
consider s being uSurreal-Sequence such that
A126: dom s = succ d and
A127: s,y,r simplest_up_to dom s by ORDINAL1:def 2, A125, A2, A3;
( d in dom r & d in dom y ) by A125, XBOOLE_0:def 4, A3;
then A128: ( r . d in rng r & y . d in rng y ) by FUNCT_1:def 3;
then reconsider yd = y . d as Surreal by SURREAL0:def 16;
s . d in rng s by A126, A124, A125, FUNCT_1:def 3;
then reconsider sd = s . d as uSurreal by SURREALO:def 12;
set c = sd + ((uReal . (r . d)) * (No_omega^ yd));
s,y,r simplest_on_position d by A127, ORDINAL1:6, A126;
then A129: ( ( 0 = d implies sd = 0_No ) & ( 0 <> d implies ( sd in_meets_terms s,y,r,d & ( for x being uSurreal st x in_meets_terms s,y,r,d & x <> sd holds
born sd in born x ) ) ) )
;
defpred S2[ Surreal] means $1 in_meets_terms s,y,r,D;
sd + ((uReal . (r . d)) * (No_omega^ yd)) in_meets_terms s,y,r,D
proof
let b be Ordinal; :: according to SURREALC:def 14 :: thesis: for sb, yb being Surreal st b in D & sb = s . b & yb = y . b holds
sd + ((uReal . (r . d)) * (No_omega^ yd)) is sb,yb,r . b -terms

let sb, yb be Surreal; :: thesis: ( b in D & sb = s . b & yb = y . b implies sd + ((uReal . (r . d)) * (No_omega^ yd)) is sb,yb,r . b -terms )
assume A130: ( b in D & sb = s . b & yb = y . b ) ; :: thesis: sd + ((uReal . (r . d)) * (No_omega^ yd)) is sb,yb,r . b -terms
A131: b c= d by A130, A124, ORDINAL1:22;
per cases ( b = d or b <> d ) ;
suppose b = d ; :: thesis: sd + ((uReal . (r . d)) * (No_omega^ yd)) is sb,yb,r . b -terms
hence sd + ((uReal . (r . d)) * (No_omega^ yd)) is sb,yb,r . b -terms by A128, Th69, A130; :: thesis: verum
end;
suppose b <> d ; :: thesis: sd + ((uReal . (r . d)) * (No_omega^ yd)) is sb,yb,r . b -terms
then A132: b in d by ORDINAL1:11, A131, XBOOLE_0:def 8;
A133: sd is sb,yb,r . b -terms by A132, A130, A129;
A134: r . b in rng r by A130, A4, FUNCT_1:def 3;
A135: |.(sd - (sb + ((uReal . (r . b)) * (No_omega^ yb)))).| infinitely< No_omega^ yb by A133, Th73;
A136: No_omega^ yd infinitely< No_omega^ yb by Th25, A130, Def11, A5, A132, A125;
|.((uReal . (r . d)) * (No_omega^ yd)).| infinitely< No_omega^ yb by A128, Th66, A136, Th15;
then A137: |.(sd + (- (sb + ((uReal . (r . b)) * (No_omega^ yb))))).| + |.((uReal . (r . d)) * (No_omega^ yd)).| infinitely< No_omega^ yb by A135, Th18;
(sd + ((uReal . (r . d)) * (No_omega^ yd))) + (- (sb + ((uReal . (r . b)) * (No_omega^ yb)))) = (sd + (- (sb + ((uReal . (r . b)) * (No_omega^ yb))))) + ((uReal . (r . d)) * (No_omega^ yd)) by SURREALR:37;
then |.((sd + ((uReal . (r . d)) * (No_omega^ yd))) - (sb + ((uReal . (r . b)) * (No_omega^ yb)))).| infinitely< No_omega^ yb by Th11, A137, Th37;
hence sd + ((uReal . (r . d)) * (No_omega^ yd)) is sb,yb,r . b -terms by A134, Th73; :: thesis: verum
end;
end;
end;
then A138: ex x being Surreal st S2[x] ;
A139: for x, y, z being Surreal st x <= y & y <= z & S2[x] & S2[z] holds
S2[y]
by Th81, A3, XBOOLE_1:18;
consider sD being uSurreal such that
A140: S2[sD] and
A141: for x being uSurreal st S2[x] & x <> sD holds
born sD in born x
from SURREALC:sch 1(A138, A139);
take ssD = s ^ <%sD%>; :: thesis: ( dom ssD = succ D & ssD,y,r simplest_up_to dom ssD )
A142: dom <%sD%> = 1 by AFINSQ_1:def 4;
then dom ssD = (dom s) +^ 1 by ORDINAL4:def 1;
hence A143: dom ssD = succ D by A126, A124, ORDINAL2:31; :: thesis: ssD,y,r simplest_up_to dom ssD
let B be Ordinal; :: according to SURREALC:def 16 :: thesis: ( B in dom ssD implies ssD,y,r simplest_on_position B )
assume A144: B in dom ssD ; :: thesis: ssD,y,r simplest_on_position B
A145: dom s = (dom ssD) /\ (dom s) by ORDINAL7:1, A126, A124, A143;
for o being object st o in dom s holds
s . o = ssD . o
by ORDINAL4:def 1;
then A146: ssD | D = s by A145, FUNCT_1:46, A126, A124;
A147: s | D = s by A126, A124;
per cases ( B = D or B in D ) by A143, A144, ORDINAL1:8;
suppose A148: B = D ; :: thesis: ssD,y,r simplest_on_position B
ssD,y,r simplest_on_position D
proof
let sa be Surreal; :: according to SURREALC:def 15 :: thesis: ( sa = ssD . D implies ( ( 0 = D implies sa = 0_No ) & ( 0 <> D implies ( sa in_meets_terms ssD,y,r,D & ( for x being uSurreal st x in_meets_terms ssD,y,r,D & x <> sa holds
born sa in born x ) ) ) ) )

assume A149: sa = ssD . D ; :: thesis: ( ( 0 = D implies sa = 0_No ) & ( 0 <> D implies ( sa in_meets_terms ssD,y,r,D & ( for x being uSurreal st x in_meets_terms ssD,y,r,D & x <> sa holds
born sa in born x ) ) ) )

0 in dom <%sD%> by A142, TARSKI:def 1, CARD_1:49;
then ( ssD . (D +^ 0) = <%sD%> . 0 & <%sD%> . 0 = sD ) by A126, A124, ORDINAL4:def 1;
then A150: sa = sD by A149, ORDINAL2:27;
thus ( 0 = D implies sa = 0_No ) by A124; :: thesis: ( 0 <> D implies ( sa in_meets_terms ssD,y,r,D & ( for x being uSurreal st x in_meets_terms ssD,y,r,D & x <> sa holds
born sa in born x ) ) )

assume 0 <> D ; :: thesis: ( sa in_meets_terms ssD,y,r,D & ( for x being uSurreal st x in_meets_terms ssD,y,r,D & x <> sa holds
born sa in born x ) )

thus sa in_meets_terms ssD,y,r,D by A150, A140, A146, A147, Th75; :: thesis: for x being uSurreal st x in_meets_terms ssD,y,r,D & x <> sa holds
born sa in born x

let x be uSurreal; :: thesis: ( x in_meets_terms ssD,y,r,D & x <> sa implies born sa in born x )
assume A151: ( x in_meets_terms ssD,y,r,D & x <> sa ) ; :: thesis: born sa in born x
thus born sa in born x by A141, A150, A151, A146, A147, Th75; :: thesis: verum
end;
hence ssD,y,r simplest_on_position B by A148; :: thesis: verum
end;
suppose A152: B in D ; :: thesis: ssD,y,r simplest_on_position B
then A153: s | (succ B),y,r simplest_on_position B by A126, A127, A124, Th80;
ssD | (succ B) = s | (succ B) by A152, ORDINAL1:21, A146, RELAT_1:74;
hence ssD,y,r simplest_on_position B by A153, Th80; :: thesis: verum
end;
end;
end;
end;
end;
for D being Ordinal holds S1[D] from ORDINAL1:sch 2(A1);
hence ex s being uSurreal-Sequence st
( dom s = succ ((dom r) /\ (dom y)) & s,y,r simplest_up_to dom s )
; :: thesis: verum
end;

definition
let r be non-zero Sequence of REAL ;
let y be strictly_decreasing Surreal-Sequence;
func Partial_Sums (r,y) -> uSurreal-Sequence means :Def17: :: SURREALC:def 17
( dom it = succ ((dom r) /\ (dom y)) & ( for A being Ordinal st A in dom it holds
it,y,r simplest_on_position A ) );
existence
ex b1 being uSurreal-Sequence st
( dom b1 = succ ((dom r) /\ (dom y)) & ( for A being Ordinal st A in dom b1 holds
b1,y,r simplest_on_position A ) )
proof
consider s being uSurreal-Sequence such that
A1: ( dom s = succ ((dom r) /\ (dom y)) & s,y,r simplest_up_to dom s ) by Th82;
take s ; :: thesis: ( dom s = succ ((dom r) /\ (dom y)) & ( for A being Ordinal st A in dom s holds
s,y,r simplest_on_position A ) )

thus dom s = succ ((dom r) /\ (dom y)) by A1; :: thesis: for A being Ordinal st A in dom s holds
s,y,r simplest_on_position A

thus for A being Ordinal st A in dom s holds
s,y,r simplest_on_position A
by A1; :: thesis: verum
end;
uniqueness
for b1, b2 being uSurreal-Sequence st dom b1 = succ ((dom r) /\ (dom y)) & ( for A being Ordinal st A in dom b1 holds
b1,y,r simplest_on_position A ) & dom b2 = succ ((dom r) /\ (dom y)) & ( for A being Ordinal st A in dom b2 holds
b2,y,r simplest_on_position A ) holds
b1 = b2
proof
let P1, P2 be uSurreal-Sequence; :: thesis: ( dom P1 = succ ((dom r) /\ (dom y)) & ( for A being Ordinal st A in dom P1 holds
P1,y,r simplest_on_position A ) & dom P2 = succ ((dom r) /\ (dom y)) & ( for A being Ordinal st A in dom P2 holds
P2,y,r simplest_on_position A ) implies P1 = P2 )

assume that
A2: ( dom P1 = succ ((dom r) /\ (dom y)) & ( for A being Ordinal st A in dom P1 holds
P1,y,r simplest_on_position A ) )
and
A3: ( dom P2 = succ ((dom r) /\ (dom y)) & ( for A being Ordinal st A in dom P2 holds
P2,y,r simplest_on_position A ) )
; :: thesis: P1 = P2
( P1,y,r simplest_up_to dom P1 & P2,y,r simplest_up_to dom P2 ) by A2, A3;
then P1 | (dom P1) = P2 | (dom P2) by A2, A3, Th77;
hence P1 = P2 ; :: thesis: verum
end;
end;

:: deftheorem Def17 defines Partial_Sums SURREALC:def 17 :
for r being non-zero Sequence of REAL
for y being strictly_decreasing Surreal-Sequence
for b3 being uSurreal-Sequence holds
( b3 = Partial_Sums (r,y) iff ( dom b3 = succ ((dom r) /\ (dom y)) & ( for A being Ordinal st A in dom b3 holds
b3,y,r simplest_on_position A ) ) );

definition
let r be non-zero Sequence of REAL ;
let y be strictly_decreasing Surreal-Sequence;
func Sum (r,y) -> uSurreal equals :: SURREALC:def 18
(Partial_Sums (r,y)) . ((dom r) /\ (dom y));
coherence
(Partial_Sums (r,y)) . ((dom r) /\ (dom y)) is uSurreal
proof
set D = (dom r) /\ (dom y);
(dom r) /\ (dom y) in succ ((dom r) /\ (dom y)) by ORDINAL1:6;
then (dom r) /\ (dom y) in dom (Partial_Sums (r,y)) by Def17;
then A1: (Partial_Sums (r,y)) . ((dom r) /\ (dom y)) in rng (Partial_Sums (r,y)) by FUNCT_1:def 3;
rng (Partial_Sums (r,y)) is uniq-surreal-membered ;
hence (Partial_Sums (r,y)) . ((dom r) /\ (dom y)) is uSurreal by A1; :: thesis: verum
end;
end;

:: deftheorem defines Sum SURREALC:def 18 :
for r being non-zero Sequence of REAL
for y being strictly_decreasing Surreal-Sequence holds Sum (r,y) = (Partial_Sums (r,y)) . ((dom r) /\ (dom y));

registration
let s be strictly_decreasing Surreal-Sequence;
let A be Ordinal;
cluster s | A -> strictly_decreasing ;
coherence
s | A is strictly_decreasing
proof
let a, b be Ordinal; :: according to SURREALC:def 11 :: thesis: ( a in b & b in dom (s | A) implies for sa, sb being Surreal st sa = (s | A) . a & sb = (s | A) . b holds
sb < sa )

assume A1: ( a in b & b in dom (s | A) ) ; :: thesis: for sa, sb being Surreal st sa = (s | A) . a & sb = (s | A) . b holds
sb < sa

let sa, sb be Surreal; :: thesis: ( sa = (s | A) . a & sb = (s | A) . b implies sb < sa )
assume A2: ( sa = (s | A) . a & sb = (s | A) . b ) ; :: thesis: sb < sa
A3: ( sa = s . a & sb = s . b ) by A1, ORDINAL1:10, A2, FUNCT_1:47;
( a in b & b in dom s ) by A1, RELAT_1:57;
hence sb < sa by A3, Def11; :: thesis: verum
end;
end;

registration
let R be non-zero Relation;
let X be set ;
cluster R | X -> non-zero ;
coherence
R | X is non-zero
proof
rng (R | X) c= rng R by RELAT_1:70;
hence R | X is non-zero ; :: thesis: verum
end;
end;

theorem Th83: :: SURREALC:83
for x being Surreal
for r being Sequence of REAL
for y, s being Sequence
for A, B being Ordinal st A c= B holds
( x in_meets_terms s,y,r,A iff x in_meets_terms s,y | B,r | B,A )
proof
let x be Surreal; :: thesis: for r being Sequence of REAL
for y, s being Sequence
for A, B being Ordinal st A c= B holds
( x in_meets_terms s,y,r,A iff x in_meets_terms s,y | B,r | B,A )

let r be Sequence of REAL ; :: thesis: for y, s being Sequence
for A, B being Ordinal st A c= B holds
( x in_meets_terms s,y,r,A iff x in_meets_terms s,y | B,r | B,A )

let y, s be Sequence; :: thesis: for A, B being Ordinal st A c= B holds
( x in_meets_terms s,y,r,A iff x in_meets_terms s,y | B,r | B,A )

let alpha, B be Ordinal; :: thesis: ( alpha c= B implies ( x in_meets_terms s,y,r,alpha iff x in_meets_terms s,y | B,r | B,alpha ) )
assume A1: alpha c= B ; :: thesis: ( x in_meets_terms s,y,r,alpha iff x in_meets_terms s,y | B,r | B,alpha )
thus ( x in_meets_terms s,y,r,alpha implies x in_meets_terms s,y | B,r | B,alpha ) :: thesis: ( x in_meets_terms s,y | B,r | B,alpha implies x in_meets_terms s,y,r,alpha )
proof
assume A2: x in_meets_terms s,y,r,alpha ; :: thesis: x in_meets_terms s,y | B,r | B,alpha
let beta be Ordinal; :: according to SURREALC:def 14 :: thesis: for sb, yb being Surreal st beta in alpha & sb = s . beta & yb = (y | B) . beta holds
x is sb,yb,(r | B) . beta -terms

let sb, yb be Surreal; :: thesis: ( beta in alpha & sb = s . beta & yb = (y | B) . beta implies x is sb,yb,(r | B) . beta -terms )
assume A3: ( beta in alpha & sb = s . beta & yb = (y | B) . beta ) ; :: thesis: x is sb,yb,(r | B) . beta -terms
( (r | B) . beta = r . beta & yb = y . beta ) by A1, A3, FUNCT_1:49;
hence x is sb,yb,(r | B) . beta -terms by A2, A3; :: thesis: verum
end;
assume A4: x in_meets_terms s,y | B,r | B,alpha ; :: thesis: x in_meets_terms s,y,r,alpha
let beta be Ordinal; :: according to SURREALC:def 14 :: thesis: for sb, yb being Surreal st beta in alpha & sb = s . beta & yb = y . beta holds
x is sb,yb,r . beta -terms

let sb, yb be Surreal; :: thesis: ( beta in alpha & sb = s . beta & yb = y . beta implies x is sb,yb,r . beta -terms )
assume A5: ( beta in alpha & sb = s . beta & yb = y . beta ) ; :: thesis: x is sb,yb,r . beta -terms
( (r | B) . beta = r . beta & yb = (y | B) . beta ) by A5, A1, FUNCT_1:49;
hence x is sb,yb,r . beta -terms by A4, A5; :: thesis: verum
end;

theorem Th84: :: SURREALC:84
for r being Sequence of REAL
for y, s being Sequence
for A, B being Ordinal st B c= A holds
( s,y | A,r | A simplest_on_position B iff s,y,r simplest_on_position B )
proof
let r be Sequence of REAL ; :: thesis: for y, s being Sequence
for A, B being Ordinal st B c= A holds
( s,y | A,r | A simplest_on_position B iff s,y,r simplest_on_position B )

let y, s be Sequence; :: thesis: for A, B being Ordinal st B c= A holds
( s,y | A,r | A simplest_on_position B iff s,y,r simplest_on_position B )

let A, B be Ordinal; :: thesis: ( B c= A implies ( s,y | A,r | A simplest_on_position B iff s,y,r simplest_on_position B ) )
assume A1: B c= A ; :: thesis: ( s,y | A,r | A simplest_on_position B iff s,y,r simplest_on_position B )
thus ( s,y | A,r | A simplest_on_position B implies s,y,r simplest_on_position B ) :: thesis: ( s,y,r simplest_on_position B implies s,y | A,r | A simplest_on_position B )
proof
assume A2: s,y | A,r | A simplest_on_position B ; :: thesis: s,y,r simplest_on_position B
let sa be Surreal; :: according to SURREALC:def 15 :: thesis: ( sa = s . B implies ( ( 0 = B implies sa = 0_No ) & ( 0 <> B implies ( sa in_meets_terms s,y,r,B & ( for x being uSurreal st x in_meets_terms s,y,r,B & x <> sa holds
born sa in born x ) ) ) ) )

assume A3: sa = s . B ; :: thesis: ( ( 0 = B implies sa = 0_No ) & ( 0 <> B implies ( sa in_meets_terms s,y,r,B & ( for x being uSurreal st x in_meets_terms s,y,r,B & x <> sa holds
born sa in born x ) ) ) )

thus ( 0 = B implies sa = 0_No ) by A3, A2; :: thesis: ( 0 <> B implies ( sa in_meets_terms s,y,r,B & ( for x being uSurreal st x in_meets_terms s,y,r,B & x <> sa holds
born sa in born x ) ) )

assume A4: B <> 0 ; :: thesis: ( sa in_meets_terms s,y,r,B & ( for x being uSurreal st x in_meets_terms s,y,r,B & x <> sa holds
born sa in born x ) )

sa in_meets_terms s,y | A,r | A,B by A3, A2;
hence sa in_meets_terms s,y,r,B by A1, Th83; :: thesis: for x being uSurreal st x in_meets_terms s,y,r,B & x <> sa holds
born sa in born x

let x be uSurreal; :: thesis: ( x in_meets_terms s,y,r,B & x <> sa implies born sa in born x )
assume A5: ( x in_meets_terms s,y,r,B & x <> sa ) ; :: thesis: born sa in born x
then x in_meets_terms s,y | A,r | A,B by A1, Th83;
hence born sa in born x by A2, A3, A4, A5; :: thesis: verum
end;
assume A6: s,y,r simplest_on_position B ; :: thesis: s,y | A,r | A simplest_on_position B
let sa be Surreal; :: according to SURREALC:def 15 :: thesis: ( sa = s . B implies ( ( 0 = B implies sa = 0_No ) & ( 0 <> B implies ( sa in_meets_terms s,y | A,r | A,B & ( for x being uSurreal st x in_meets_terms s,y | A,r | A,B & x <> sa holds
born sa in born x ) ) ) ) )

assume A7: sa = s . B ; :: thesis: ( ( 0 = B implies sa = 0_No ) & ( 0 <> B implies ( sa in_meets_terms s,y | A,r | A,B & ( for x being uSurreal st x in_meets_terms s,y | A,r | A,B & x <> sa holds
born sa in born x ) ) ) )

thus ( 0 = B implies sa = 0_No ) by A7, A6; :: thesis: ( 0 <> B implies ( sa in_meets_terms s,y | A,r | A,B & ( for x being uSurreal st x in_meets_terms s,y | A,r | A,B & x <> sa holds
born sa in born x ) ) )

assume A8: B <> 0 ; :: thesis: ( sa in_meets_terms s,y | A,r | A,B & ( for x being uSurreal st x in_meets_terms s,y | A,r | A,B & x <> sa holds
born sa in born x ) )

sa in_meets_terms s,y,r,B by A7, A6;
hence sa in_meets_terms s,y | A,r | A,B by A1, Th83; :: thesis: for x being uSurreal st x in_meets_terms s,y | A,r | A,B & x <> sa holds
born sa in born x

let x be uSurreal; :: thesis: ( x in_meets_terms s,y | A,r | A,B & x <> sa implies born sa in born x )
assume A9: ( x in_meets_terms s,y | A,r | A,B & x <> sa ) ; :: thesis: born sa in born x
then x in_meets_terms s,y,r,B by A1, Th83;
hence born sa in born x by A6, A7, A8, A9; :: thesis: verum
end;

theorem Th85: :: SURREALC:85
for r being non-zero Sequence of REAL
for y being strictly_decreasing Surreal-Sequence
for A being Ordinal holds (Partial_Sums (r,y)) | (succ A) = Partial_Sums ((r | A),(y | A))
proof
let r be non-zero Sequence of REAL ; :: thesis: for y being strictly_decreasing Surreal-Sequence
for A being Ordinal holds (Partial_Sums (r,y)) | (succ A) = Partial_Sums ((r | A),(y | A))

let y be strictly_decreasing Surreal-Sequence; :: thesis: for A being Ordinal holds (Partial_Sums (r,y)) | (succ A) = Partial_Sums ((r | A),(y | A))
let A be Ordinal; :: thesis: (Partial_Sums (r,y)) | (succ A) = Partial_Sums ((r | A),(y | A))
A1: dom (Partial_Sums (r,y)) = succ ((dom r) /\ (dom y)) by Def17;
then A2: dom ((Partial_Sums (r,y)) | (succ A)) = (succ ((dom r) /\ (dom y))) /\ (succ A) by RELAT_1:61;
( dom (r | A) = (dom r) /\ A & dom (y | A) = (dom y) /\ A ) by RELAT_1:61;
then A3: (dom (r | A)) /\ (dom (y | A)) = ((A /\ (dom r)) /\ (dom y)) /\ A by XBOOLE_1:16
.= (A /\ ((dom r) /\ (dom y))) /\ A by XBOOLE_1:16
.= ((dom r) /\ (dom y)) /\ (A /\ A) by XBOOLE_1:16
.= ((dom r) /\ (dom y)) /\ A ;
A4: (succ ((dom r) /\ (dom y))) /\ (succ A) = succ ((dom (r | A)) /\ (dom (y | A)))
proof
per cases ( (dom r) /\ (dom y) c= A or A in (dom r) /\ (dom y) ) by ORDINAL1:16;
suppose A5: (dom r) /\ (dom y) c= A ; :: thesis: (succ ((dom r) /\ (dom y))) /\ (succ A) = succ ((dom (r | A)) /\ (dom (y | A)))
then A6: ((dom r) /\ (dom y)) /\ A = (dom r) /\ (dom y) by XBOOLE_1:28;
(dom r) /\ (dom y) in succ A by A5, ORDINAL1:22;
hence (succ ((dom r) /\ (dom y))) /\ (succ A) = succ ((dom (r | A)) /\ (dom (y | A))) by A6, A3, XBOOLE_1:28, ORDINAL1:21; :: thesis: verum
end;
suppose A7: A in (dom r) /\ (dom y) ; :: thesis: (succ ((dom r) /\ (dom y))) /\ (succ A) = succ ((dom (r | A)) /\ (dom (y | A)))
then A8: A c= (dom r) /\ (dom y) by ORDINAL1:def 2;
A9: ((dom r) /\ (dom y)) /\ A = A by A7, ORDINAL1:def 2, XBOOLE_1:28;
A in succ ((dom r) /\ (dom y)) by A8, ORDINAL1:22;
hence (succ ((dom r) /\ (dom y))) /\ (succ A) = succ ((dom (r | A)) /\ (dom (y | A))) by A9, A3, XBOOLE_1:28, ORDINAL1:21; :: thesis: verum
end;
end;
end;
(Partial_Sums (r,y)) | (succ A),y | A,r | A simplest_up_to dom ((Partial_Sums (r,y)) | (succ A))
proof
let B be Ordinal; :: according to SURREALC:def 16 :: thesis: ( B in dom ((Partial_Sums (r,y)) | (succ A)) implies (Partial_Sums (r,y)) | (succ A),y | A,r | A simplest_on_position B )
assume A10: B in dom ((Partial_Sums (r,y)) | (succ A)) ; :: thesis: (Partial_Sums (r,y)) | (succ A),y | A,r | A simplest_on_position B
A11: ( succ B c= succ A & B c= A ) by A10, ORDINAL1:21, ORDINAL1:22;
A12: ((Partial_Sums (r,y)) | (succ A)) | (succ B) = (Partial_Sums (r,y)) | (succ B) by RELAT_1:74, A10, ORDINAL1:21;
A13: B in dom (Partial_Sums (r,y)) by A1, A10, A2, XBOOLE_0:def 4;
Partial_Sums (r,y),y,r simplest_on_position B by A13, Def17;
then Partial_Sums (r,y),y | A,r | A simplest_on_position B by A11, Th84;
then (Partial_Sums (r,y)) | (succ B),y | A,r | A simplest_on_position B by Th80;
hence (Partial_Sums (r,y)) | (succ A),y | A,r | A simplest_on_position B by A12, Th80; :: thesis: verum
end;
hence (Partial_Sums (r,y)) | (succ A) = Partial_Sums ((r | A),(y | A)) by A4, A1, RELAT_1:61, Def17; :: thesis: verum
end;

definition
let r be non-zero Sequence of REAL ;
let y be strictly_decreasing Surreal-Sequence;
let alpha be Ordinal;
let x be Surreal;
pred r,y,alpha name_like x means :: SURREALC:def 19
( alpha c= dom r & dom r = dom y & ( for beta being Ordinal st beta in alpha holds
for Pb being Surreal st Pb = (Partial_Sums (r,y)) . beta holds
( not x == Pb & r . beta = omega-r (x - Pb) & y . beta = omega-exp (x - Pb) ) ) );
end;

:: deftheorem defines name_like SURREALC:def 19 :
for r being non-zero Sequence of REAL
for y being strictly_decreasing Surreal-Sequence
for alpha being Ordinal
for x being Surreal holds
( r,y,alpha name_like x iff ( alpha c= dom r & dom r = dom y & ( for beta being Ordinal st beta in alpha holds
for Pb being Surreal st Pb = (Partial_Sums (r,y)) . beta holds
( not x == Pb & r . beta = omega-r (x - Pb) & y . beta = omega-exp (x - Pb) ) ) ) );

theorem Th86: :: SURREALC:86
for x being Surreal
for r being non-zero Sequence of REAL
for y being strictly_decreasing Surreal-Sequence
for alpha, beta being Ordinal st alpha c= beta & r,y,beta name_like x holds
r,y,alpha name_like x by XBOOLE_1:1;

theorem Th87: :: SURREALC:87
for x being Surreal
for r1, r2 being non-zero Sequence of REAL
for y1, y2 being strictly_decreasing Surreal-Sequence
for A being Ordinal st r1,y1,A name_like x & r2,y2,A name_like x holds
( r1 | A = r2 | A & y1 | A = y2 | A )
proof
let x be Surreal; :: thesis: for r1, r2 being non-zero Sequence of REAL
for y1, y2 being strictly_decreasing Surreal-Sequence
for A being Ordinal st r1,y1,A name_like x & r2,y2,A name_like x holds
( r1 | A = r2 | A & y1 | A = y2 | A )

let r1, r2 be non-zero Sequence of REAL ; :: thesis: for y1, y2 being strictly_decreasing Surreal-Sequence
for A being Ordinal st r1,y1,A name_like x & r2,y2,A name_like x holds
( r1 | A = r2 | A & y1 | A = y2 | A )

let y1, y2 be strictly_decreasing Surreal-Sequence; :: thesis: for A being Ordinal st r1,y1,A name_like x & r2,y2,A name_like x holds
( r1 | A = r2 | A & y1 | A = y2 | A )

let A be Ordinal; :: thesis: ( r1,y1,A name_like x & r2,y2,A name_like x implies ( r1 | A = r2 | A & y1 | A = y2 | A ) )
assume that
A1: r1,y1,A name_like x and
A2: r2,y2,A name_like x ; :: thesis: ( r1 | A = r2 | A & y1 | A = y2 | A )
defpred S1[ Ordinal] means ( r1,y1,$1 name_like x & r2,y2,$1 name_like x implies ( r1 | $1 = r2 | $1 & y1 | $1 = y2 | $1 ) );
A3: for D being Ordinal st ( for C being Ordinal st C in D holds
S1[C] ) holds
S1[D]
proof
let D be Ordinal; :: thesis: ( ( for C being Ordinal st C in D holds
S1[C] ) implies S1[D] )

assume A4: for C being Ordinal st C in D holds
S1[C]
; :: thesis: S1[D]
assume A5: ( r1,y1,D name_like x & r2,y2,D name_like x ) ; :: thesis: ( r1 | D = r2 | D & y1 | D = y2 | D )
A6: ( dom (r1 | D) = D & D = dom (r2 | D) & dom (y1 | D) = D & D = dom (y2 | D) ) by A5, RELAT_1:62;
A7: for o being object st o in D holds
( (r1 | D) . o = (r2 | D) . o & (y1 | D) . o = (y2 | D) . o )
proof
let o be object ; :: thesis: ( o in D implies ( (r1 | D) . o = (r2 | D) . o & (y1 | D) . o = (y2 | D) . o ) )
assume A8: o in D ; :: thesis: ( (r1 | D) . o = (r2 | D) . o & (y1 | D) . o = (y2 | D) . o )
then reconsider o = o as Ordinal ;
A9: ( r1 . o = (r1 | D) . o & r2 . o = (r2 | D) . o & y1 . o = (y1 | D) . o & y2 . o = (y2 | D) . o ) by A8, FUNCT_1:49;
per cases ( succ o = D or succ o c< D ) by XBOOLE_0:def 8, A8, ORDINAL1:21;
suppose succ o = D ; :: thesis: ( (r1 | D) . o = (r2 | D) . o & (y1 | D) . o = (y2 | D) . o )
A10: S1[o] by A8, A4;
o c= (dom r1) /\ (dom y1) by A5, A8, ORDINAL1:def 2;
then o in succ ((dom r1) /\ (dom y1)) by ORDINAL1:22;
then o in dom (Partial_Sums (r1,y1)) by Def17;
then (Partial_Sums (r1,y1)) . o in rng (Partial_Sums (r1,y1)) by FUNCT_1:def 3;
then reconsider Po1 = (Partial_Sums (r1,y1)) . o as uSurreal by SURREALO:def 12;
o c= (dom r2) /\ (dom y2) by A5, A8, ORDINAL1:def 2;
then o in succ ((dom r2) /\ (dom y2)) by ORDINAL1:22;
then o in dom (Partial_Sums (r2,y2)) by Def17;
then (Partial_Sums (r2,y2)) . o in rng (Partial_Sums (r2,y2)) by FUNCT_1:def 3;
then reconsider Po2 = (Partial_Sums (r2,y2)) . o as uSurreal by SURREALO:def 12;
A11: Po1 = ((Partial_Sums (r1,y1)) | (succ o)) . o by FUNCT_1:49, ORDINAL1:6
.= (Partial_Sums ((r2 | o),(y2 | o))) . o by Th85, A8, ORDINAL1:def 2, A10, A5, Th86
.= ((Partial_Sums (r2,y2)) | (succ o)) . o by Th85
.= Po2 by ORDINAL1:6, FUNCT_1:49 ;
( r1 . o = omega-r (x - Po1) & y1 . o = omega-exp (x - Po1) & r2 . o = omega-r (x - Po2) & y2 . o = omega-exp (x - Po2) ) by A8, A5;
hence ( (r1 | D) . o = (r2 | D) . o & (y1 | D) . o = (y2 | D) . o ) by A11, A9; :: thesis: verum
end;
suppose succ o c< D ; :: thesis: ( (r1 | D) . o = (r2 | D) . o & (y1 | D) . o = (y2 | D) . o )
then succ o in D by ORDINAL1:11;
then A12: S1[ succ o] by A4;
( (r1 | (succ o)) . o = r1 . o & (r2 | (succ o)) . o = r2 . o & (y1 | (succ o)) . o = y1 . o & (y2 | (succ o)) . o = y2 . o ) by ORDINAL1:6, FUNCT_1:49;
hence ( (r1 | D) . o = (r2 | D) . o & (y1 | D) . o = (y2 | D) . o ) by A9, A12, A8, ORDINAL1:21, A5, Th86; :: thesis: verum
end;
end;
end;
then for o being object st o in D holds
(r1 | D) . o = (r2 | D) . o
;
hence r1 | D = r2 | D by A6, FUNCT_1:2; :: thesis: y1 | D = y2 | D
for o being object st o in D holds
(y1 | D) . o = (y2 | D) . o
by A7;
hence y1 | D = y2 | D by A6, FUNCT_1:2; :: thesis: verum
end;
for D being Ordinal holds S1[D] from ORDINAL1:sch 2(A3);
hence ( r1 | A = r2 | A & y1 | A = y2 | A ) by A1, A2; :: thesis: verum
end;

theorem Th88: :: SURREALC:88
for x being Surreal
for r being non-zero Sequence of REAL
for y being strictly_decreasing Surreal-Sequence
for A being Ordinal st r,y,A name_like x holds
x in_meets_terms Partial_Sums (r,y),y,r,A
proof
let x be Surreal; :: thesis: for r being non-zero Sequence of REAL
for y being strictly_decreasing Surreal-Sequence
for A being Ordinal st r,y,A name_like x holds
x in_meets_terms Partial_Sums (r,y),y,r,A

let r be non-zero Sequence of REAL ; :: thesis: for y being strictly_decreasing Surreal-Sequence
for A being Ordinal st r,y,A name_like x holds
x in_meets_terms Partial_Sums (r,y),y,r,A

let y be strictly_decreasing Surreal-Sequence; :: thesis: for A being Ordinal st r,y,A name_like x holds
x in_meets_terms Partial_Sums (r,y),y,r,A

let A be Ordinal; :: thesis: ( r,y,A name_like x implies x in_meets_terms Partial_Sums (r,y),y,r,A )
assume A1: r,y,A name_like x ; :: thesis: x in_meets_terms Partial_Sums (r,y),y,r,A
set s = Partial_Sums (r,y);
let beta be Ordinal; :: according to SURREALC:def 14 :: thesis: for sb, yb being Surreal st beta in A & sb = (Partial_Sums (r,y)) . beta & yb = y . beta holds
x is sb,yb,r . beta -terms

let sb, yb be Surreal; :: thesis: ( beta in A & sb = (Partial_Sums (r,y)) . beta & yb = y . beta implies x is sb,yb,r . beta -terms )
assume A2: ( beta in A & sb = (Partial_Sums (r,y)) . beta & yb = y . beta ) ; :: thesis: x is sb,yb,r . beta -terms
A3: ( not x == sb & r . beta = omega-r (x - sb) & y . beta = omega-exp (x - sb) ) by A2, A1;
A4: not x - sb == 0_No by A2, A1, SURREALR:47;
then A5: |.((x - sb) - ((No_omega^ yb) * (uReal . (r . beta)))).| infinitely< |.(x - sb).| by A2, A3, Def8;
|.(x + (- sb)).|, No_omega^ yb are_commensurate by A2, A3, A4, Def7;
then A6: |.((x - sb) - ((No_omega^ yb) * (uReal . (r . beta)))).| infinitely< No_omega^ yb by A5, Th16;
A7: (x - sb) - ((No_omega^ yb) * (uReal . (r . beta))) = x + ((- sb) - ((No_omega^ yb) * (uReal . (r . beta)))) by SURREALR:37
.= x - (sb + ((No_omega^ yb) * (uReal . (r . beta)))) by SURREALR:40 ;
r . beta in rng r by A2, A1, FUNCT_1:def 3;
hence x is sb,yb,r . beta -terms by A6, A7, Th73; :: thesis: verum
end;

theorem Th89: :: SURREALC:89
for r being non-zero Sequence of REAL
for y being strictly_decreasing Surreal-Sequence holds Sum (r,y) in_meets_terms Partial_Sums (r,y),y,r,(dom r) /\ (dom y)
proof
let r be non-zero Sequence of REAL ; :: thesis: for y being strictly_decreasing Surreal-Sequence holds Sum (r,y) in_meets_terms Partial_Sums (r,y),y,r,(dom r) /\ (dom y)
let y be strictly_decreasing Surreal-Sequence; :: thesis: Sum (r,y) in_meets_terms Partial_Sums (r,y),y,r,(dom r) /\ (dom y)
per cases ( (dom r) /\ (dom y) = {} or (dom r) /\ (dom y) <> {} ) ;
suppose (dom r) /\ (dom y) = {} ; :: thesis: Sum (r,y) in_meets_terms Partial_Sums (r,y),y,r,(dom r) /\ (dom y)
hence Sum (r,y) in_meets_terms Partial_Sums (r,y),y,r,(dom r) /\ (dom y) ; :: thesis: verum
end;
suppose (dom r) /\ (dom y) <> {} ; :: thesis: Sum (r,y) in_meets_terms Partial_Sums (r,y),y,r,(dom r) /\ (dom y)
(dom r) /\ (dom y) in succ ((dom r) /\ (dom y)) by ORDINAL1:6;
then A1: (dom r) /\ (dom y) in dom (Partial_Sums (r,y)) by Def17;
Partial_Sums (r,y),y,r simplest_on_position (dom r) /\ (dom y) by A1, Def17;
hence Sum (r,y) in_meets_terms Partial_Sums (r,y),y,r,(dom r) /\ (dom y) ; :: thesis: verum
end;
end;
end;

theorem Th90: :: SURREALC:90
for x, z being Surreal
for r being non-zero Sequence of REAL
for y being Sequence
for s being Surreal-Sequence
for A, B being Ordinal st B in A & A c= (dom r) /\ (dom y) & A c= dom s holds
for yb being Surreal st yb = y . B & x in_meets_terms s,y,r,A & z in_meets_terms s,y,r,A holds
|.(x - z).| infinitely< No_omega^ yb
proof
let x, z be Surreal; :: thesis: for r being non-zero Sequence of REAL
for y being Sequence
for s being Surreal-Sequence
for A, B being Ordinal st B in A & A c= (dom r) /\ (dom y) & A c= dom s holds
for yb being Surreal st yb = y . B & x in_meets_terms s,y,r,A & z in_meets_terms s,y,r,A holds
|.(x - z).| infinitely< No_omega^ yb

let r be non-zero Sequence of REAL ; :: thesis: for y being Sequence
for s being Surreal-Sequence
for A, B being Ordinal st B in A & A c= (dom r) /\ (dom y) & A c= dom s holds
for yb being Surreal st yb = y . B & x in_meets_terms s,y,r,A & z in_meets_terms s,y,r,A holds
|.(x - z).| infinitely< No_omega^ yb

let y be Sequence; :: thesis: for s being Surreal-Sequence
for A, B being Ordinal st B in A & A c= (dom r) /\ (dom y) & A c= dom s holds
for yb being Surreal st yb = y . B & x in_meets_terms s,y,r,A & z in_meets_terms s,y,r,A holds
|.(x - z).| infinitely< No_omega^ yb

let s be Surreal-Sequence; :: thesis: for A, B being Ordinal st B in A & A c= (dom r) /\ (dom y) & A c= dom s holds
for yb being Surreal st yb = y . B & x in_meets_terms s,y,r,A & z in_meets_terms s,y,r,A holds
|.(x - z).| infinitely< No_omega^ yb

let A, B be Ordinal; :: thesis: ( B in A & A c= (dom r) /\ (dom y) & A c= dom s implies for yb being Surreal st yb = y . B & x in_meets_terms s,y,r,A & z in_meets_terms s,y,r,A holds
|.(x - z).| infinitely< No_omega^ yb )

assume A1: ( B in A & A c= (dom r) /\ (dom y) & A c= dom s ) ; :: thesis: for yb being Surreal st yb = y . B & x in_meets_terms s,y,r,A & z in_meets_terms s,y,r,A holds
|.(x - z).| infinitely< No_omega^ yb

let yb be Surreal; :: thesis: ( yb = y . B & x in_meets_terms s,y,r,A & z in_meets_terms s,y,r,A implies |.(x - z).| infinitely< No_omega^ yb )
assume that
A2: yb = y . B and
A3: ( x in_meets_terms s,y,r,A & z in_meets_terms s,y,r,A ) ; :: thesis: |.(x - z).| infinitely< No_omega^ yb
s . B in rng s by A1, FUNCT_1:def 3;
then reconsider sB = s . B as Surreal by SURREAL0:def 16;
set S = sB + ((uReal . (r . B)) * (No_omega^ yb));
( x is sB,yb,r . B -terms & z is sB,yb,r . B -terms ) by A1, A2, A3;
then ( |.(x - (sB + ((uReal . (r . B)) * (No_omega^ yb)))).| infinitely< No_omega^ yb & |.(z - (sB + ((uReal . (r . B)) * (No_omega^ yb)))).| infinitely< No_omega^ yb ) by Th73;
then A4: |.((x - (sB + ((uReal . (r . B)) * (No_omega^ yb)))) - (z - (sB + ((uReal . (r . B)) * (No_omega^ yb))))).| infinitely< No_omega^ yb by Th43;
A5: (- (sB + ((uReal . (r . B)) * (No_omega^ yb)))) - (- (sB + ((uReal . (r . B)) * (No_omega^ yb)))) == 0_No by SURREALR:39;
(x + (- (sB + ((uReal . (r . B)) * (No_omega^ yb))))) + (- (z + (- (sB + ((uReal . (r . B)) * (No_omega^ yb)))))) = (x + (- (sB + ((uReal . (r . B)) * (No_omega^ yb))))) + ((- (- (sB + ((uReal . (r . B)) * (No_omega^ yb))))) + (- z)) by SURREALR:40
.= ((x + (- (sB + ((uReal . (r . B)) * (No_omega^ yb))))) + (- (- (sB + ((uReal . (r . B)) * (No_omega^ yb)))))) + (- z) by SURREALR:37
.= (x + ((- (sB + ((uReal . (r . B)) * (No_omega^ yb)))) + (- (- (sB + ((uReal . (r . B)) * (No_omega^ yb))))))) + (- z) by SURREALR:37
.= ((- (sB + ((uReal . (r . B)) * (No_omega^ yb)))) + (- (- (sB + ((uReal . (r . B)) * (No_omega^ yb)))))) + ((- z) + x) by SURREALR:37 ;
then ( (x - (sB + ((uReal . (r . B)) * (No_omega^ yb)))) - (z - (sB + ((uReal . (r . B)) * (No_omega^ yb)))) == (x - z) + 0_No & (x - z) + 0_No = x - z ) by A5, SURREALR:43;
then |.((x - (sB + ((uReal . (r . B)) * (No_omega^ yb)))) + (- (z - (sB + ((uReal . (r . B)) * (No_omega^ yb)))))).| == |.(x - z).| by Th48;
hence |.(x - z).| infinitely< No_omega^ yb by Th11, A4; :: thesis: verum
end;

theorem :: SURREALC:91
for x being Surreal
for r being non-zero Sequence of REAL
for y being strictly_decreasing Surreal-Sequence
for alpha being Ordinal st r,y,alpha name_like x holds
r | alpha,y | alpha,alpha name_like x
proof
let x be Surreal; :: thesis: for r being non-zero Sequence of REAL
for y being strictly_decreasing Surreal-Sequence
for alpha being Ordinal st r,y,alpha name_like x holds
r | alpha,y | alpha,alpha name_like x

let r be non-zero Sequence of REAL ; :: thesis: for y being strictly_decreasing Surreal-Sequence
for alpha being Ordinal st r,y,alpha name_like x holds
r | alpha,y | alpha,alpha name_like x

let y be strictly_decreasing Surreal-Sequence; :: thesis: for alpha being Ordinal st r,y,alpha name_like x holds
r | alpha,y | alpha,alpha name_like x

let A be Ordinal; :: thesis: ( r,y,A name_like x implies r | A,y | A,A name_like x )
assume A1: r,y,A name_like x ; :: thesis: r | A,y | A,A name_like x
A2: ( dom (r | A) = A & dom (y | A) = A ) by A1, RELAT_1:62;
thus ( A c= dom (r | A) & dom (r | A) = dom (y | A) ) by A2; :: according to SURREALC:def 19 :: thesis: for beta being Ordinal st beta in A holds
for Pb being Surreal st Pb = (Partial_Sums ((r | A),(y | A))) . beta holds
( not x == Pb & (r | A) . beta = omega-r (x - Pb) & (y | A) . beta = omega-exp (x - Pb) )

let B be Ordinal; :: thesis: ( B in A implies for Pb being Surreal st Pb = (Partial_Sums ((r | A),(y | A))) . B holds
( not x == Pb & (r | A) . B = omega-r (x - Pb) & (y | A) . B = omega-exp (x - Pb) ) )

assume A3: B in A ; :: thesis: for Pb being Surreal st Pb = (Partial_Sums ((r | A),(y | A))) . B holds
( not x == Pb & (r | A) . B = omega-r (x - Pb) & (y | A) . B = omega-exp (x - Pb) )

let Pb be Surreal; :: thesis: ( Pb = (Partial_Sums ((r | A),(y | A))) . B implies ( not x == Pb & (r | A) . B = omega-r (x - Pb) & (y | A) . B = omega-exp (x - Pb) ) )
assume A4: Pb = (Partial_Sums ((r | A),(y | A))) . B ; :: thesis: ( not x == Pb & (r | A) . B = omega-r (x - Pb) & (y | A) . B = omega-exp (x - Pb) )
A5: Partial_Sums ((r | A),(y | A)) = (Partial_Sums (r,y)) | (succ A) by Th85;
B in succ A by A3, ORDINAL1:8;
then Pb = (Partial_Sums (r,y)) . B by A4, A5, FUNCT_1:49;
then ( not x == Pb & r . B = omega-r (x - Pb) & y . B = omega-exp (x - Pb) ) by A1, A3;
hence ( not x == Pb & (r | A) . B = omega-r (x - Pb) & (y | A) . B = omega-exp (x - Pb) ) by A3, FUNCT_1:49; :: thesis: verum
end;

theorem Th92: :: SURREALC:92
for z being Surreal
for r being non-zero Sequence of REAL
for y being strictly_decreasing Surreal-Sequence st z in_meets_terms Partial_Sums (r,y),y,r,(dom r) /\ (dom y) & not z == Sum (r,y) holds
for A being Ordinal
for yA being Surreal st A in (dom r) /\ (dom y) & yA = y . A holds
omega-exp ((Sum (r,y)) - z) < yA
proof
let z be Surreal; :: thesis: for r being non-zero Sequence of REAL
for y being strictly_decreasing Surreal-Sequence st z in_meets_terms Partial_Sums (r,y),y,r,(dom r) /\ (dom y) & not z == Sum (r,y) holds
for A being Ordinal
for yA being Surreal st A in (dom r) /\ (dom y) & yA = y . A holds
omega-exp ((Sum (r,y)) - z) < yA

let r be non-zero Sequence of REAL ; :: thesis: for y being strictly_decreasing Surreal-Sequence st z in_meets_terms Partial_Sums (r,y),y,r,(dom r) /\ (dom y) & not z == Sum (r,y) holds
for A being Ordinal
for yA being Surreal st A in (dom r) /\ (dom y) & yA = y . A holds
omega-exp ((Sum (r,y)) - z) < yA

let y be strictly_decreasing Surreal-Sequence; :: thesis: ( z in_meets_terms Partial_Sums (r,y),y,r,(dom r) /\ (dom y) & not z == Sum (r,y) implies for A being Ordinal
for yA being Surreal st A in (dom r) /\ (dom y) & yA = y . A holds
omega-exp ((Sum (r,y)) - z) < yA )

set s = Partial_Sums (r,y);
set D = (dom r) /\ (dom y);
assume that
A1: z in_meets_terms Partial_Sums (r,y),y,r,(dom r) /\ (dom y) and
A2: not z == Sum (r,y) ; :: thesis: for A being Ordinal
for yA being Surreal st A in (dom r) /\ (dom y) & yA = y . A holds
omega-exp ((Sum (r,y)) - z) < yA

let A be Ordinal; :: thesis: for yA being Surreal st A in (dom r) /\ (dom y) & yA = y . A holds
omega-exp ((Sum (r,y)) - z) < yA

let yA be Surreal; :: thesis: ( A in (dom r) /\ (dom y) & yA = y . A implies omega-exp ((Sum (r,y)) - z) < yA )
assume A3: ( A in (dom r) /\ (dom y) & yA = y . A ) ; :: thesis: omega-exp ((Sum (r,y)) - z) < yA
A4: not (Sum (r,y)) - z == 0_No by SURREALR:47, A2;
A5: Sum (r,y) in_meets_terms Partial_Sums (r,y),y,r,(dom r) /\ (dom y) by Th89;
dom (Partial_Sums (r,y)) = succ ((dom r) /\ (dom y)) by Def17;
then A6: |.((Sum (r,y)) - z).| infinitely< No_omega^ yA by XBOOLE_1:7, A5, A3, A1, Th90;
|.((Sum (r,y)) + (- z)).|, No_omega^ (omega-exp ((Sum (r,y)) + (- z))) are_commensurate by A4, Def7;
then No_omega^ (omega-exp ((Sum (r,y)) + (- z))) < No_omega^ yA by Th9, A6, Th15;
hence omega-exp ((Sum (r,y)) - z) < yA by Lm5; :: thesis: verum
end;

theorem :: SURREALC:93
for r being non-zero Sequence of REAL
for y being strictly_decreasing Surreal-Sequence
for A being Ordinal st A c= (dom r) /\ (dom y) holds
(Partial_Sums (r,y)) . A = Sum ((r | A),(y | A))
proof
let r be non-zero Sequence of REAL ; :: thesis: for y being strictly_decreasing Surreal-Sequence
for A being Ordinal st A c= (dom r) /\ (dom y) holds
(Partial_Sums (r,y)) . A = Sum ((r | A),(y | A))

let y be strictly_decreasing Surreal-Sequence; :: thesis: for A being Ordinal st A c= (dom r) /\ (dom y) holds
(Partial_Sums (r,y)) . A = Sum ((r | A),(y | A))

let A be Ordinal; :: thesis: ( A c= (dom r) /\ (dom y) implies (Partial_Sums (r,y)) . A = Sum ((r | A),(y | A)) )
assume A1: A c= (dom r) /\ (dom y) ; :: thesis: (Partial_Sums (r,y)) . A = Sum ((r | A),(y | A))
( dom (r | A) = (dom r) /\ A & dom (y | A) = (dom y) /\ A ) by RELAT_1:61;
then A2: (dom (r | A)) /\ (dom (y | A)) = ((A /\ (dom r)) /\ (dom y)) /\ A by XBOOLE_1:16
.= (A /\ ((dom r) /\ (dom y))) /\ A by XBOOLE_1:16
.= ((dom r) /\ (dom y)) /\ (A /\ A) by XBOOLE_1:16
.= A by A1, XBOOLE_1:28 ;
thus (Partial_Sums (r,y)) . A = ((Partial_Sums (r,y)) | (succ A)) . A by ORDINAL1:6, FUNCT_1:49
.= Sum ((r | A),(y | A)) by A2, Th85 ; :: thesis: verum
end;

theorem :: SURREALC:94
for x, z being Surreal
for r being non-zero Sequence of REAL
for y being strictly_decreasing Surreal-Sequence st x in_meets_terms Partial_Sums (r,y),y,r,(dom r) /\ (dom y) & z in_meets_terms Partial_Sums (r,y),y,r,(dom r) /\ (dom y) & not x == z holds
for A being Ordinal
for yA being Surreal st A in (dom r) /\ (dom y) & yA = y . A holds
omega-exp (x - z) < yA
proof
let x, z be Surreal; :: thesis: for r being non-zero Sequence of REAL
for y being strictly_decreasing Surreal-Sequence st x in_meets_terms Partial_Sums (r,y),y,r,(dom r) /\ (dom y) & z in_meets_terms Partial_Sums (r,y),y,r,(dom r) /\ (dom y) & not x == z holds
for A being Ordinal
for yA being Surreal st A in (dom r) /\ (dom y) & yA = y . A holds
omega-exp (x - z) < yA

let r be non-zero Sequence of REAL ; :: thesis: for y being strictly_decreasing Surreal-Sequence st x in_meets_terms Partial_Sums (r,y),y,r,(dom r) /\ (dom y) & z in_meets_terms Partial_Sums (r,y),y,r,(dom r) /\ (dom y) & not x == z holds
for A being Ordinal
for yA being Surreal st A in (dom r) /\ (dom y) & yA = y . A holds
omega-exp (x - z) < yA

let y be strictly_decreasing Surreal-Sequence; :: thesis: ( x in_meets_terms Partial_Sums (r,y),y,r,(dom r) /\ (dom y) & z in_meets_terms Partial_Sums (r,y),y,r,(dom r) /\ (dom y) & not x == z implies for A being Ordinal
for yA being Surreal st A in (dom r) /\ (dom y) & yA = y . A holds
omega-exp (x - z) < yA )

set s = Partial_Sums (r,y);
set D = (dom r) /\ (dom y);
assume that
A1: ( x in_meets_terms Partial_Sums (r,y),y,r,(dom r) /\ (dom y) & z in_meets_terms Partial_Sums (r,y),y,r,(dom r) /\ (dom y) ) and
A2: not x == z ; :: thesis: for A being Ordinal
for yA being Surreal st A in (dom r) /\ (dom y) & yA = y . A holds
omega-exp (x - z) < yA

let A be Ordinal; :: thesis: for yA being Surreal st A in (dom r) /\ (dom y) & yA = y . A holds
omega-exp (x - z) < yA

let yA be Surreal; :: thesis: ( A in (dom r) /\ (dom y) & yA = y . A implies omega-exp (x - z) < yA )
assume A3: ( A in (dom r) /\ (dom y) & yA = y . A ) ; :: thesis: omega-exp (x - z) < yA
A4: not x - z == 0_No by SURREALR:47, A2;
dom (Partial_Sums (r,y)) = succ ((dom r) /\ (dom y)) by Def17;
then A5: |.(x - z).| infinitely< No_omega^ yA by XBOOLE_1:7, A3, A1, Th90;
|.(x - z).|, No_omega^ (omega-exp (x + (- z))) are_commensurate by A4, Def7;
then No_omega^ (omega-exp (x + (- z))) < No_omega^ yA by Th9, A5, Th15;
hence omega-exp (x - z) < yA by Lm5; :: thesis: verum
end;

theorem Th95: :: SURREALC:95
for x being Surreal st ( for r being non-zero Sequence of REAL
for y being strictly_decreasing uSurreal-Sequence st dom r = dom y & r,y, dom r name_like x holds
not Sum (r,y) == x ) holds
for alpha being Ordinal ex r being non-zero Sequence of REAL ex y being strictly_decreasing uSurreal-Sequence st
( dom r = succ alpha & succ alpha = dom y & r,y, succ alpha name_like x )
proof
let x be Surreal; :: thesis: ( ( for r being non-zero Sequence of REAL
for y being strictly_decreasing uSurreal-Sequence st dom r = dom y & r,y, dom r name_like x holds
not Sum (r,y) == x ) implies for alpha being Ordinal ex r being non-zero Sequence of REAL ex y being strictly_decreasing uSurreal-Sequence st
( dom r = succ alpha & succ alpha = dom y & r,y, succ alpha name_like x ) )

assume A1: for r being non-zero Sequence of REAL
for y being strictly_decreasing uSurreal-Sequence st dom r = dom y & r,y, dom r name_like x holds
not Sum (r,y) == x
; :: thesis: for alpha being Ordinal ex r being non-zero Sequence of REAL ex y being strictly_decreasing uSurreal-Sequence st
( dom r = succ alpha & succ alpha = dom y & r,y, succ alpha name_like x )

defpred S1[ Ordinal] means ex r being non-zero Sequence of REAL ex y being strictly_decreasing uSurreal-Sequence st
( dom r = succ $1 & succ $1 = dom y & r,y, succ $1 name_like x );
A2: for D being Ordinal st ( for C being Ordinal st C in D holds
S1[C] ) holds
S1[D]
proof
let D be Ordinal; :: thesis: ( ( for C being Ordinal st C in D holds
S1[C] ) implies S1[D] )

assume A3: for C being Ordinal st C in D holds
S1[C]
; :: thesis: S1[D]
defpred S2[ object , object ] means ( $2 is pair & $2 `1 is non-zero Sequence of REAL & $2 `2 is strictly_decreasing uSurreal-Sequence & ( for A being Ordinal st A = $1 holds
for r being non-zero Sequence of REAL
for y being strictly_decreasing uSurreal-Sequence st r = $2 `1 & y = $2 `2 holds
( dom r = succ A & succ A = dom y & r,y, succ A name_like x ) ) );
A4: for e being object st e in D holds
ex o being object st S2[e,o]
proof
let e be object ; :: thesis: ( e in D implies ex o being object st S2[e,o] )
assume A5: e in D ; :: thesis: ex o being object st S2[e,o]
reconsider E = e as Ordinal by A5;
consider r1 being non-zero Sequence of REAL , y1 being strictly_decreasing uSurreal-Sequence such that
A6: ( dom r1 = succ E & succ E = dom y1 & r1,y1, succ E name_like x ) by A5, A3;
take ry = [r1,y1]; :: thesis: S2[e,ry]
thus ( ry is pair & ry `1 is non-zero Sequence of REAL & ry `2 is strictly_decreasing uSurreal-Sequence ) ; :: thesis: for A being Ordinal st A = e holds
for r being non-zero Sequence of REAL
for y being strictly_decreasing uSurreal-Sequence st r = ry `1 & y = ry `2 holds
( dom r = succ A & succ A = dom y & r,y, succ A name_like x )

let A be Ordinal; :: thesis: ( A = e implies for r being non-zero Sequence of REAL
for y being strictly_decreasing uSurreal-Sequence st r = ry `1 & y = ry `2 holds
( dom r = succ A & succ A = dom y & r,y, succ A name_like x ) )

assume A7: A = e ; :: thesis: for r being non-zero Sequence of REAL
for y being strictly_decreasing uSurreal-Sequence st r = ry `1 & y = ry `2 holds
( dom r = succ A & succ A = dom y & r,y, succ A name_like x )

let r be non-zero Sequence of REAL ; :: thesis: for y being strictly_decreasing uSurreal-Sequence st r = ry `1 & y = ry `2 holds
( dom r = succ A & succ A = dom y & r,y, succ A name_like x )

let y be strictly_decreasing uSurreal-Sequence; :: thesis: ( r = ry `1 & y = ry `2 implies ( dom r = succ A & succ A = dom y & r,y, succ A name_like x ) )
assume A8: ( r = ry `1 & y = ry `2 ) ; :: thesis: ( dom r = succ A & succ A = dom y & r,y, succ A name_like x )
thus ( dom r = succ A & succ A = dom y & r,y, succ A name_like x ) by A7, A6, A8; :: thesis: verum
end;
consider S being Function such that
A9: ( dom S = D & ( for o being object st o in D holds
S2[o,S . o] ) )
from CLASSES1:sch 1(A4);
defpred S3[ object , object ] means for f being Function st f = (S . $1) `1 holds
$2 = f . $1;
A10: for e being object st e in D holds
ex o being object st S3[e,o]
proof
let e be object ; :: thesis: ( e in D implies ex o being object st S3[e,o] )
assume A11: e in D ; :: thesis: ex o being object st S3[e,o]
reconsider e = e as Ordinal by A11;
reconsider SE1 = (S . e) `1 as non-zero Sequence of REAL by A11, A9;
take o = SE1 . e; :: thesis: S3[e,o]
thus S3[e,o] ; :: thesis: verum
end;
consider R being Function such that
A12: ( dom R = D & ( for o being object st o in D holds
S3[o,R . o] ) )
from CLASSES1:sch 1(A10);
reconsider R = R as Sequence by A12, ORDINAL1:def 7;
rng R c= REAL
proof
let y be object ; :: according to TARSKI:def 3 :: thesis: ( not y in rng R or y in REAL )
assume y in rng R ; :: thesis: y in REAL
then consider o being object such that
A13: ( o in D & R . o = y ) by A12, FUNCT_1:def 3;
reconsider o = o as Ordinal by A13;
reconsider SO1 = (S . o) `1 as non-zero Sequence of REAL by A13, A9;
reconsider SO2 = (S . o) `2 as strictly_decreasing Surreal-Sequence by A13, A9;
SO1 . o in REAL by XREAL_0:def 1;
hence y in REAL by A13, A12; :: thesis: verum
end;
then reconsider R = R as Sequence of REAL by RELAT_1:def 19;
not 0 in rng R
proof
assume 0 in rng R ; :: thesis: contradiction
then consider o being object such that
A14: ( o in D & R . o = 0 ) by A12, FUNCT_1:def 3;
reconsider o = o as Ordinal by A14;
reconsider SO1 = (S . o) `1 as non-zero Sequence of REAL by A14, A9;
S2[o,S . o] by A14, A9;
then dom SO1 = succ o ;
then o in dom SO1 by ORDINAL1:6;
then SO1 . o in rng SO1 by FUNCT_1:def 3;
hence contradiction by A14, A12; :: thesis: verum
end;
then reconsider R = R as non-zero Sequence of REAL by ORDINAL1:def 15;
defpred S4[ object , object ] means for f being Function st f = (S . $1) `2 holds
$2 = f . $1;
A15: for e being object st e in D holds
ex o being object st S4[e,o]
proof
let e be object ; :: thesis: ( e in D implies ex o being object st S4[e,o] )
assume A16: e in D ; :: thesis: ex o being object st S4[e,o]
reconsider e = e as Ordinal by A16;
reconsider SE2 = (S . e) `2 as strictly_decreasing uSurreal-Sequence by A16, A9;
take o = SE2 . e; :: thesis: S4[e,o]
thus S4[e,o] ; :: thesis: verum
end;
consider Y being Function such that
A17: ( dom Y = D & ( for o being object st o in D holds
S4[o,Y . o] ) )
from CLASSES1:sch 1(A15);
reconsider Y = Y as Sequence by A17, ORDINAL1:def 7;
rng Y is uniq-surreal-membered
proof
let y be object ; :: according to SURREALO:def 12 :: thesis: ( not y in rng Y or y is set )
assume y in rng Y ; :: thesis: y is set
then consider o being object such that
A18: ( o in D & Y . o = y ) by A17, FUNCT_1:def 3;
reconsider o = o as Ordinal by A18;
reconsider SO2 = (S . o) `2 as strictly_decreasing uSurreal-Sequence by A18, A9;
S2[o,S . o] by A18, A9;
then dom SO2 = succ o ;
then o in dom SO2 by ORDINAL1:6;
then SO2 . o in rng SO2 by FUNCT_1:def 3;
then SO2 . o is uSurreal by SURREALO:def 12;
hence y is set by A18, A17; :: thesis: verum
end;
then reconsider Y = Y as uSurreal-Sequence by Def10;
defpred S5[ Ordinal] means ( $1 in D implies ( Y | (succ $1) is strictly_decreasing & R | (succ $1) = (S . $1) `1 & Y | (succ $1) = (S . $1) `2 ) );
A19: for E being Ordinal st ( for F being Ordinal st F in E holds
S5[F] ) holds
S5[E]
proof
let E be Ordinal; :: thesis: ( ( for F being Ordinal st F in E holds
S5[F] ) implies S5[E] )

assume A20: for F being Ordinal st F in E holds
S5[F]
; :: thesis: S5[E]
set YE = Y | (succ E);
assume A21: E in D ; :: thesis: ( Y | (succ E) is strictly_decreasing & R | (succ E) = (S . E) `1 & Y | (succ E) = (S . E) `2 )
A22: dom (Y | (succ E)) = succ E by A21, ORDINAL1:21, A17, RELAT_1:62;
reconsider r = (S . E) `1 as non-zero Sequence of REAL by A21, A9;
reconsider y = (S . E) `2 as strictly_decreasing uSurreal-Sequence by A21, A9;
set sE = succ E;
S2[E,S . E] by A21, A9;
then A23: ( dom r = succ E & succ E = dom y & r,y, succ E name_like x ) ;
thus Y | (succ E) is strictly_decreasing :: thesis: ( R | (succ E) = (S . E) `1 & Y | (succ E) = (S . E) `2 )
proof
let a, b be Ordinal; :: according to SURREALC:def 11 :: thesis: ( a in b & b in dom (Y | (succ E)) implies for sa, sb being Surreal st sa = (Y | (succ E)) . a & sb = (Y | (succ E)) . b holds
sb < sa )

assume A24: ( a in b & b in dom (Y | (succ E)) ) ; :: thesis: for sa, sb being Surreal st sa = (Y | (succ E)) . a & sb = (Y | (succ E)) . b holds
sb < sa

let sa, sb be Surreal; :: thesis: ( sa = (Y | (succ E)) . a & sb = (Y | (succ E)) . b implies sb < sa )
assume A25: ( sa = (Y | (succ E)) . a & sb = (Y | (succ E)) . b ) ; :: thesis: sb < sa
A26: ( sa = Y . a & sb = Y . b ) by A24, ORDINAL1:10, A25, FUNCT_1:47;
per cases ( b = E or b in E ) by A24, ORDINAL1:8;
suppose A27: b = E ; :: thesis: sb < sa
A28: a in D by A27, A21, A24, ORDINAL1:10;
A29: S2[a,S . a] by A28, A9;
reconsider ra = (S . a) `1 as non-zero Sequence of REAL by A28, A9;
reconsider ya = (S . a) `2 as strictly_decreasing Surreal-Sequence by A28, A9;
A30: ( dom ra = succ a & succ a = dom ya & ra,ya, succ a name_like x ) by A29;
succ a c= E by A27, A24, ORDINAL1:21;
then succ a in succ E by ORDINAL1:22;
then A31: succ a c= succ E by ORDINAL1:def 2;
r,y, succ a name_like x by A23, A31;
then A32: ( r | (succ a) = ra | (succ a) & y | (succ a) = ya | (succ a) ) by A30, Th87;
( R | (succ a) = ra & Y | (succ a) = ya ) by A27, A24, A28, A20;
then ( sa = Y . a & Y . a = ya . a ) by A24, ORDINAL1:6, ORDINAL1:10, A25, FUNCT_1:49;
then A33: sa = y . a by A30, A32, FUNCT_1:49, ORDINAL1:6;
sb = y . b by A26, A27, A17, A21;
hence sb < sa by A24, A33, A23, Def11; :: thesis: verum
end;
suppose A34: b in E ; :: thesis: sb < sa
then A35: S5[b] by A20;
A36: Y | (succ b) is strictly_decreasing by A35, A21, A34, ORDINAL1:10;
succ b c= D by A21, A34, ORDINAL1:10, ORDINAL1:21;
then A37: dom (Y | (succ b)) = succ b by A17, RELAT_1:62;
A38: b in succ b by ORDINAL1:6;
then ( sa = (Y | (succ b)) . a & sb = (Y | (succ b)) . b ) by A26, A37, FUNCT_1:47, A24, ORDINAL1:10;
hence sb < sa by A38, A36, A24, A37; :: thesis: verum
end;
end;
end;
then reconsider YE = Y | (succ E) as strictly_decreasing Surreal-Sequence ;
A39: dom (R | (succ E)) = succ E by A21, A12, ORDINAL1:21, RELAT_1:62;
A40: for o being object st o in succ E holds
( (R | (succ E)) . o = r . o & YE . o = y . o )
proof
let o be object ; :: thesis: ( o in succ E implies ( (R | (succ E)) . o = r . o & YE . o = y . o ) )
assume A41: o in succ E ; :: thesis: ( (R | (succ E)) . o = r . o & YE . o = y . o )
then reconsider o = o as Ordinal ;
A42: ( (R | (succ E)) . o = R . o & YE . o = Y . o ) by A41, FUNCT_1:49;
per cases ( o = E or o in E ) by A41, ORDINAL1:8;
suppose o = E ; :: thesis: ( (R | (succ E)) . o = r . o & YE . o = y . o )
hence ( (R | (succ E)) . o = r . o & YE . o = y . o ) by A42, A21, A12, A17; :: thesis: verum
end;
suppose A43: o in E ; :: thesis: ( (R | (succ E)) . o = r . o & YE . o = y . o )
A44: o in D by A43, A21, ORDINAL1:10;
then A45: S2[o,S . o] by A9;
reconsider ro = (S . o) `1 as non-zero Sequence of REAL by A9, A44;
reconsider yo = (S . o) `2 as strictly_decreasing Surreal-Sequence by A9, A44;
A46: ( dom ro = succ o & succ o = dom yo & ro,yo, succ o name_like x ) by A45;
succ o c= E by A43, ORDINAL1:21;
then succ o in succ E by ORDINAL1:22;
then A47: succ o c= succ E by ORDINAL1:def 2;
r,y, succ o name_like x by A23, A47;
then A48: ( r | (succ o) = ro | (succ o) & y | (succ o) = yo | (succ o) ) by A46, Th87;
o in succ o by ORDINAL1:8;
then ( yo . o = y . o & ro . o = r . o ) by A48, A46, FUNCT_1:49;
hence ( (R | (succ E)) . o = r . o & YE . o = y . o ) by A42, A43, A21, ORDINAL1:10, A12, A17; :: thesis: verum
end;
end;
end;
A49: for o being object st o in succ E holds
(R | (succ E)) . o = r . o
by A40;
for o being object st o in succ E holds
YE . o = y . o
by A40;
hence ( R | (succ E) = (S . E) `1 & Y | (succ E) = (S . E) `2 ) by A49, A23, A22, FUNCT_1:2, A39; :: thesis: verum
end;
A50: for D being Ordinal holds S5[D] from ORDINAL1:sch 2(A19);
Y is strictly_decreasing
proof
let a, b be Ordinal; :: according to SURREALC:def 11 :: thesis: ( a in b & b in dom Y implies for sa, sb being Surreal st sa = Y . a & sb = Y . b holds
sb < sa )

assume A51: ( a in b & b in dom Y ) ; :: thesis: for sa, sb being Surreal st sa = Y . a & sb = Y . b holds
sb < sa

let sa, sb be Surreal; :: thesis: ( sa = Y . a & sb = Y . b implies sb < sa )
assume A52: ( sa = Y . a & sb = Y . b ) ; :: thesis: sb < sa
set B = Y | (succ b);
A53: b in succ b by ORDINAL1:6;
a in succ b by A51, ORDINAL1:8;
then A54: ( sa = (Y | (succ b)) . a & sb = (Y | (succ b)) . b ) by A52, ORDINAL1:6, FUNCT_1:49;
A55: dom (Y | (succ b)) = succ b by RELAT_1:62, A51, ORDINAL1:21;
Y | (succ b) is strictly_decreasing by A50, A51, A17;
hence sb < sa by A55, A51, A53, A54; :: thesis: verum
end;
then reconsider Y = Y as strictly_decreasing Surreal-Sequence ;
A56: R,Y,D name_like x
proof
thus ( D c= dom R & dom R = dom Y ) by A17, A12; :: according to SURREALC:def 19 :: thesis: for beta being Ordinal st beta in D holds
for Pb being Surreal st Pb = (Partial_Sums (R,Y)) . beta holds
( not x == Pb & R . beta = omega-r (x - Pb) & Y . beta = omega-exp (x - Pb) )

let b be Ordinal; :: thesis: ( b in D implies for Pb being Surreal st Pb = (Partial_Sums (R,Y)) . b holds
( not x == Pb & R . b = omega-r (x - Pb) & Y . b = omega-exp (x - Pb) ) )

assume A57: b in D ; :: thesis: for Pb being Surreal st Pb = (Partial_Sums (R,Y)) . b holds
( not x == Pb & R . b = omega-r (x - Pb) & Y . b = omega-exp (x - Pb) )

let Pb be Surreal; :: thesis: ( Pb = (Partial_Sums (R,Y)) . b implies ( not x == Pb & R . b = omega-r (x - Pb) & Y . b = omega-exp (x - Pb) ) )
assume A58: Pb = (Partial_Sums (R,Y)) . b ; :: thesis: ( not x == Pb & R . b = omega-r (x - Pb) & Y . b = omega-exp (x - Pb) )
A59: S2[b,S . b] by A57, A9;
reconsider rb = (S . b) `1 as non-zero Sequence of REAL by A57, A9;
reconsider yb = (S . b) `2 as strictly_decreasing Surreal-Sequence by A57, A9;
set sb = succ b;
A60: ( dom rb = succ b & succ b = dom yb & rb,yb, succ b name_like x ) by A59;
A61: ( Y | (succ b) is strictly_decreasing & R | (succ b) = rb & Y | (succ b) = yb ) by A50, A57;
A62: ( b in succ b & succ b in succ (succ b) ) by ORDINAL1:6;
b in succ (succ b) by ORDINAL1:6, ORDINAL1:8;
then Pb = ((Partial_Sums (R,Y)) | (succ (succ b))) . b by A58, FUNCT_1:49
.= (Partial_Sums (rb,yb)) . b by A61, Th85 ;
then ( not x == Pb & rb . b = omega-r (x - Pb) & yb . b = omega-exp (x - Pb) ) by A62, A60;
hence ( not x == Pb & R . b = omega-r (x - Pb) & Y . b = omega-exp (x - Pb) ) by ORDINAL1:6, A61, FUNCT_1:49; :: thesis: verum
end;
then A63: not Sum (R,Y) == x by A1, A17;
then A64: not x - (Sum (R,Y)) == 0_No by SURREALR:47;
reconsider Rx = omega-r (x + (- (Sum (R,Y)))) as Element of REAL by XREAL_0:def 1;
not 0 in {Rx} ;
then not 0 in rng <%Rx%> by AFINSQ_1:33;
then reconsider RX = <%Rx%> as non-zero Sequence of REAL by ORDINAL1:def 15;
rng (R ^ RX) = (rng R) \/ (rng RX) by ORDINAL4:2;
then reconsider RRX = R ^ RX as non-zero Sequence of REAL by RELAT_1:def 19;
take RRX ; :: thesis: ex y being strictly_decreasing uSurreal-Sequence st
( dom RRX = succ D & succ D = dom y & RRX,y, succ D name_like x )

A65: dom RX = 1 by AFINSQ_1:def 4;
then A66: dom RRX = (dom R) +^ 1 by ORDINAL4:def 1;
then A67: dom RRX = succ D by A12, ORDINAL2:31;
set Yx = omega-exp (x + (- (Sum (R,Y))));
set YX = <%(omega-exp (x + (- (Sum (R,Y)))))%>;
set YYX = Y ^ <%(omega-exp (x + (- (Sum (R,Y)))))%>;
A68: dom <%(omega-exp (x + (- (Sum (R,Y)))))%> = 1 by AFINSQ_1:def 4;
then A69: dom (Y ^ <%(omega-exp (x + (- (Sum (R,Y)))))%>) = (dom Y) +^ 1 by ORDINAL4:def 1;
then A70: dom (Y ^ <%(omega-exp (x + (- (Sum (R,Y)))))%>) = succ D by A17, ORDINAL2:31;
0 in 1 by CARD_1:49, TARSKI:def 1;
then A71: ( Rx = RX . 0 & RX . 0 = RRX . (D +^ 0) & D +^ 0 = D & omega-exp (x + (- (Sum (R,Y)))) = <%(omega-exp (x + (- (Sum (R,Y)))))%> . 0 & <%(omega-exp (x + (- (Sum (R,Y)))))%> . 0 = (Y ^ <%(omega-exp (x + (- (Sum (R,Y)))))%>) . (D +^ 0) ) by A17, A12, A65, A68, ORDINAL4:def 1, ORDINAL2:27;
Y ^ <%(omega-exp (x + (- (Sum (R,Y)))))%> is strictly_decreasing
proof
let a, b be Ordinal; :: according to SURREALC:def 11 :: thesis: ( a in b & b in dom (Y ^ <%(omega-exp (x + (- (Sum (R,Y)))))%>) implies for sa, sb being Surreal st sa = (Y ^ <%(omega-exp (x + (- (Sum (R,Y)))))%>) . a & sb = (Y ^ <%(omega-exp (x + (- (Sum (R,Y)))))%>) . b holds
sb < sa )

assume A72: ( a in b & b in dom (Y ^ <%(omega-exp (x + (- (Sum (R,Y)))))%>) ) ; :: thesis: for sa, sb being Surreal st sa = (Y ^ <%(omega-exp (x + (- (Sum (R,Y)))))%>) . a & sb = (Y ^ <%(omega-exp (x + (- (Sum (R,Y)))))%>) . b holds
sb < sa

let sa, sb be Surreal; :: thesis: ( sa = (Y ^ <%(omega-exp (x + (- (Sum (R,Y)))))%>) . a & sb = (Y ^ <%(omega-exp (x + (- (Sum (R,Y)))))%>) . b implies sb < sa )
assume A73: ( sa = (Y ^ <%(omega-exp (x + (- (Sum (R,Y)))))%>) . a & sb = (Y ^ <%(omega-exp (x + (- (Sum (R,Y)))))%>) . b ) ; :: thesis: sb < sa
per cases ( b in D or b = D ) by A72, A70, ORDINAL1:8;
suppose A74: b in D ; :: thesis: sb < sa
then a in D by A72, ORDINAL1:10;
then ( sa = Y . a & sb = Y . b ) by A73, A74, A17, ORDINAL4:def 1;
hence sb < sa by A72, A74, A17, Def11; :: thesis: verum
end;
suppose A75: b = D ; :: thesis: sb < sa
sa = Y . a by A75, A73, A72, A17, ORDINAL4:def 1;
then A76: omega-exp ((Sum (R,Y)) - x) < sa by A12, A72, A75, A63, Th92, A56, Th88;
omega-exp (x + (- (Sum (R,Y)))) = omega-exp (- (x + (- (Sum (R,Y))))) by A64, Th56
.= omega-exp ((- x) + (- (- (Sum (R,Y))))) by SURREALR:40
.= omega-exp ((- x) + (Sum (R,Y))) ;
hence sb < sa by A71, A75, A76, A73; :: thesis: verum
end;
end;
end;
then reconsider YYX = Y ^ <%(omega-exp (x + (- (Sum (R,Y)))))%> as strictly_decreasing uSurreal-Sequence ;
take YYX ; :: thesis: ( dom RRX = succ D & succ D = dom YYX & RRX,YYX, succ D name_like x )
thus ( dom RRX = succ D & succ D = dom YYX ) by A66, A12, A69, A17, ORDINAL2:31; :: thesis: RRX,YYX, succ D name_like x
thus ( succ D c= dom RRX & dom RRX = dom YYX ) by A66, A12, A68, A17, ORDINAL2:31, ORDINAL4:def 1; :: according to SURREALC:def 19 :: thesis: for beta being Ordinal st beta in succ D holds
for Pb being Surreal st Pb = (Partial_Sums (RRX,YYX)) . beta holds
( not x == Pb & RRX . beta = omega-r (x - Pb) & YYX . beta = omega-exp (x - Pb) )

let b be Ordinal; :: thesis: ( b in succ D implies for Pb being Surreal st Pb = (Partial_Sums (RRX,YYX)) . b holds
( not x == Pb & RRX . b = omega-r (x - Pb) & YYX . b = omega-exp (x - Pb) ) )

assume A77: b in succ D ; :: thesis: for Pb being Surreal st Pb = (Partial_Sums (RRX,YYX)) . b holds
( not x == Pb & RRX . b = omega-r (x - Pb) & YYX . b = omega-exp (x - Pb) )

let Pb be Surreal; :: thesis: ( Pb = (Partial_Sums (RRX,YYX)) . b implies ( not x == Pb & RRX . b = omega-r (x - Pb) & YYX . b = omega-exp (x - Pb) ) )
assume A78: Pb = (Partial_Sums (RRX,YYX)) . b ; :: thesis: ( not x == Pb & RRX . b = omega-r (x - Pb) & YYX . b = omega-exp (x - Pb) )
A79: dom R = (dom RRX) /\ (dom R) by ORDINAL7:1, A67, A12;
for o being object st o in dom R holds
R . o = RRX . o
by ORDINAL4:def 1;
then A80: RRX | D = R by A79, FUNCT_1:46, A12;
A81: dom Y = (dom YYX) /\ (dom Y) by ORDINAL7:1, A70, A17;
A82: for o being object st o in dom Y holds
Y . o = YYX . o
by ORDINAL4:def 1;
A83: Pb = ((Partial_Sums (RRX,YYX)) | (succ D)) . b by A77, A78, FUNCT_1:49
.= (Partial_Sums ((RRX | D),(YYX | D))) . b by Th85
.= (Partial_Sums (R,Y)) . b by A80, A82, A81, FUNCT_1:46, A17 ;
per cases ( b = D or b in D ) by A77, ORDINAL1:8;
suppose b = D ; :: thesis: ( not x == Pb & RRX . b = omega-r (x - Pb) & YYX . b = omega-exp (x - Pb) )
hence ( not x == Pb & RRX . b = omega-r (x - Pb) & YYX . b = omega-exp (x - Pb) ) by A56, A1, A17, A83, A71; :: thesis: verum
end;
suppose A84: b in D ; :: thesis: ( not x == Pb & RRX . b = omega-r (x - Pb) & YYX . b = omega-exp (x - Pb) )
then ( RRX . b = R . b & YYX . b = Y . b ) by A12, A17, ORDINAL4:def 1;
hence ( not x == Pb & RRX . b = omega-r (x - Pb) & YYX . b = omega-exp (x - Pb) ) by A56, A84, A83; :: thesis: verum
end;
end;
end;
for D being Ordinal holds S1[D] from ORDINAL1:sch 2(A2);
hence for alpha being Ordinal ex r being non-zero Sequence of REAL ex y being strictly_decreasing uSurreal-Sequence st
( dom r = succ alpha & succ alpha = dom y & r,y, succ alpha name_like x )
; :: thesis: verum
end;

definition
let s be Surreal-Sequence;
func born s -> Ordinal-Sequence means :Def20: :: SURREALC:def 20
( dom it = dom s & ( for alpha being Ordinal st alpha in dom s holds
for sa being Surreal st sa = s . alpha holds
it . alpha = born sa ) );
existence
ex b1 being Ordinal-Sequence st
( dom b1 = dom s & ( for alpha being Ordinal st alpha in dom s holds
for sa being Surreal st sa = s . alpha holds
b1 . alpha = born sa ) )
proof
defpred S1[ object , object ] means ( $2 is Ordinal & ( for sa being Surreal st sa = s . $1 holds
$2 = born sa ) );
A1: for o being object st o in dom s holds
ex u being object st S1[o,u]
proof
let o be object ; :: thesis: ( o in dom s implies ex u being object st S1[o,u] )
assume o in dom s ; :: thesis: ex u being object st S1[o,u]
then s . o in rng s by FUNCT_1:def 3;
then reconsider so = s . o as Surreal by SURREAL0:def 16;
take born so ; :: thesis: S1[o, born so]
thus S1[o, born so] ; :: thesis: verum
end;
consider b being Function such that
A2: ( dom b = dom s & ( for o being object st o in dom s holds
S1[o,b . o] ) )
from CLASSES1:sch 1(A1);
reconsider b = b as Sequence by A2, ORDINAL1:def 7;
consider M being Ordinal such that
A3: for o being object st o in rng s holds
ex A being Ordinal st
( A in M & o in Day A )
by SURREAL0:47;
rng b c= M
proof
let a be object ; :: according to TARSKI:def 3 :: thesis: ( not a in rng b or a in M )
assume A4: a in rng b ; :: thesis: a in M
consider o being object such that
A5: ( o in dom b & b . o = a ) by A4, FUNCT_1:def 3;
A6: s . o in rng s by A2, A5, FUNCT_1:def 3;
then reconsider so = s . o as Surreal by SURREAL0:def 16;
consider A being Ordinal such that
A7: ( A in M & so in Day A ) by A6, A3;
born so c= A by A7, SURREAL0:def 18;
then born so in M by A7, ORDINAL1:12;
hence a in M by A5, A2; :: thesis: verum
end;
then reconsider b = b as Ordinal-Sequence by ORDINAL2:def 4;
take b ; :: thesis: ( dom b = dom s & ( for alpha being Ordinal st alpha in dom s holds
for sa being Surreal st sa = s . alpha holds
b . alpha = born sa ) )

thus ( dom b = dom s & ( for alpha being Ordinal st alpha in dom s holds
for sa being Surreal st sa = s . alpha holds
b . alpha = born sa ) )
by A2; :: thesis: verum
end;
uniqueness
for b1, b2 being Ordinal-Sequence st dom b1 = dom s & ( for alpha being Ordinal st alpha in dom s holds
for sa being Surreal st sa = s . alpha holds
b1 . alpha = born sa ) & dom b2 = dom s & ( for alpha being Ordinal st alpha in dom s holds
for sa being Surreal st sa = s . alpha holds
b2 . alpha = born sa ) holds
b1 = b2
proof
let b1, b2 be Ordinal-Sequence; :: thesis: ( dom b1 = dom s & ( for alpha being Ordinal st alpha in dom s holds
for sa being Surreal st sa = s . alpha holds
b1 . alpha = born sa ) & dom b2 = dom s & ( for alpha being Ordinal st alpha in dom s holds
for sa being Surreal st sa = s . alpha holds
b2 . alpha = born sa ) implies b1 = b2 )

assume that
A8: ( dom b1 = dom s & ( for alpha being Ordinal st alpha in dom s holds
for sa being Surreal st sa = s . alpha holds
b1 . alpha = born sa ) )
and
A9: ( dom b2 = dom s & ( for alpha being Ordinal st alpha in dom s holds
for sa being Surreal st sa = s . alpha holds
b2 . alpha = born sa ) )
; :: thesis: b1 = b2
for o being object st o in dom s holds
b1 . o = b2 . o
proof
let o be object ; :: thesis: ( o in dom s implies b1 . o = b2 . o )
assume A10: o in dom s ; :: thesis: b1 . o = b2 . o
then s . o in rng s by FUNCT_1:def 3;
then reconsider so = s . o as Surreal by SURREAL0:def 16;
b1 . o = born so by A10, A8;
hence b1 . o = b2 . o by A10, A9; :: thesis: verum
end;
hence b1 = b2 by A8, A9, FUNCT_1:2; :: thesis: verum
end;
end;

:: deftheorem Def20 defines born SURREALC:def 20 :
for s being Surreal-Sequence
for b2 being Ordinal-Sequence holds
( b2 = born s iff ( dom b2 = dom s & ( for alpha being Ordinal st alpha in dom s holds
for sa being Surreal st sa = s . alpha holds
b2 . alpha = born sa ) ) );

theorem Th96: :: SURREALC:96
for r being Sequence of REAL
for y being Surreal-Sequence
for s being uSurreal-Sequence
for A being Ordinal st s,y,r simplest_up_to A & A c= succ (dom y) holds
s | A is one-to-one
proof
let r be Sequence of REAL ; :: thesis: for y being Surreal-Sequence
for s being uSurreal-Sequence
for A being Ordinal st s,y,r simplest_up_to A & A c= succ (dom y) holds
s | A is one-to-one

let y be Surreal-Sequence; :: thesis: for s being uSurreal-Sequence
for A being Ordinal st s,y,r simplest_up_to A & A c= succ (dom y) holds
s | A is one-to-one

let s be uSurreal-Sequence; :: thesis: for A being Ordinal st s,y,r simplest_up_to A & A c= succ (dom y) holds
s | A is one-to-one

let A be Ordinal; :: thesis: ( s,y,r simplest_up_to A & A c= succ (dom y) implies s | A is one-to-one )
assume A1: ( s,y,r simplest_up_to A & A c= succ (dom y) ) ; :: thesis: s | A is one-to-one
A2: for a, b being Ordinal st a in b & b in dom (s | A) holds
(s | A) . a <> (s | A) . b
proof
let a, b be Ordinal; :: thesis: ( a in b & b in dom (s | A) implies (s | A) . a <> (s | A) . b )
assume A3: ( a in b & b in dom (s | A) ) ; :: thesis: (s | A) . a <> (s | A) . b
A4: ( b in A & b in dom s ) by A3, RELAT_1:57;
then a in dom s by A3, ORDINAL1:10;
then ( s . b in rng s & s . a in rng s ) by A4, FUNCT_1:def 3;
then reconsider sb = s . b, sa = s . a as uSurreal by SURREALO:def 12;
A5: ( sa = (s | A) . a & sb = (s | A) . b ) by A3, FUNCT_1:47, ORDINAL1:10;
A6: succ a c= b by A3, ORDINAL1:21;
s,y,r simplest_on_position b by A1, A3;
then sb in_meets_terms s,y,r,b ;
then A7: sb in_meets_terms s,y,r, succ a by A6;
b c= dom y by A1, A4, ORDINAL1:22;
then y . a in rng y by A3, FUNCT_1:def 3;
then reconsider ya = y . a as Surreal by SURREAL0:def 16;
sb is sa,ya,r . a -terms by A7, ORDINAL1:6;
then A8: not sb + (- sa) == 0_No ;
not sb == sa
proof
assume sb == sa ; :: thesis: contradiction
then ( sb + (- sa) == sa - sa & sa - sa == 0_No ) by SURREALR:43, SURREALR:39;
hence contradiction by A8, SURREALO:4; :: thesis: verum
end;
hence (s | A) . a <> (s | A) . b by A5; :: thesis: verum
end;
for x1, x2 being object st x1 in dom (s | A) & x2 in dom (s | A) & (s | A) . x1 = (s | A) . x2 holds
x1 = x2
proof
let x1, x2 be object ; :: thesis: ( x1 in dom (s | A) & x2 in dom (s | A) & (s | A) . x1 = (s | A) . x2 implies x1 = x2 )
assume A9: ( x1 in dom (s | A) & x2 in dom (s | A) & (s | A) . x1 = (s | A) . x2 ) ; :: thesis: x1 = x2
reconsider x1 = x1, x2 = x2 as Ordinal by A9;
( not x1 in x2 & not x2 in x1 ) by A9, A2;
hence x1 = x2 by ORDINAL1:14; :: thesis: verum
end;
hence s | A is one-to-one by FUNCT_1:def 4; :: thesis: verum
end;

registration
let r be non-zero Sequence of REAL ;
let y be strictly_decreasing Surreal-Sequence;
cluster Partial_Sums (r,y) -> one-to-one ;
coherence
Partial_Sums (r,y) is one-to-one
proof
set s = Partial_Sums (r,y);
(dom y) /\ (dom r) in succ (dom y) by XBOOLE_1:17, ORDINAL1:22;
then A1: ( dom (Partial_Sums (r,y)) = succ ((dom y) /\ (dom r)) & succ ((dom y) /\ (dom r)) c= succ (dom y) ) by ORDINAL1:21, Def17;
Partial_Sums (r,y),y,r simplest_up_to dom (Partial_Sums (r,y)) by Def17;
then (Partial_Sums (r,y)) | (dom (Partial_Sums (r,y))) is one-to-one by A1, Th96;
hence Partial_Sums (r,y) is one-to-one ; :: thesis: verum
end;
end;

theorem Th97: :: SURREALC:97
for r being Sequence of REAL
for y being Surreal-Sequence
for s being uSurreal-Sequence
for alpha being Ordinal st s,y,r simplest_up_to alpha & s | alpha is one-to-one holds
(born s) | alpha is increasing
proof
let r be Sequence of REAL ; :: thesis: for y being Surreal-Sequence
for s being uSurreal-Sequence
for alpha being Ordinal st s,y,r simplest_up_to alpha & s | alpha is one-to-one holds
(born s) | alpha is increasing

let y be Surreal-Sequence; :: thesis: for s being uSurreal-Sequence
for alpha being Ordinal st s,y,r simplest_up_to alpha & s | alpha is one-to-one holds
(born s) | alpha is increasing

let s be uSurreal-Sequence; :: thesis: for alpha being Ordinal st s,y,r simplest_up_to alpha & s | alpha is one-to-one holds
(born s) | alpha is increasing

let alpha be Ordinal; :: thesis: ( s,y,r simplest_up_to alpha & s | alpha is one-to-one implies (born s) | alpha is increasing )
assume A1: ( s,y,r simplest_up_to alpha & s | alpha is one-to-one ) ; :: thesis: (born s) | alpha is increasing
for A, B being Ordinal st A in B & B in dom ((born s) | alpha) holds
((born s) | alpha) . A in ((born s) | alpha) . B
proof
set bs = born s;
let A, B be Ordinal; :: thesis: ( A in B & B in dom ((born s) | alpha) implies ((born s) | alpha) . A in ((born s) | alpha) . B )
assume A2: ( A in B & B in dom ((born s) | alpha) ) ; :: thesis: ((born s) | alpha) . A in ((born s) | alpha) . B
A3: ( B in alpha & B in dom (born s) & dom (born s) = dom s ) by Def20, A2, RELAT_1:57;
A4: s,y,r simplest_on_position B by A1, A2;
A5: ( B in dom s & A in dom s ) by A2, A3, ORDINAL1:10;
then ( s . B in rng s & s . A in rng s ) by FUNCT_1:def 3;
then reconsider sB = s . B, sA = s . A as uSurreal by SURREALO:def 12;
A6: A in alpha by A2, ORDINAL1:10;
A7: s,y,r simplest_on_position A by A1, A2, ORDINAL1:10;
A8: A c= B by A2, ORDINAL1:def 2;
sB in_meets_terms s,y,r,B by A4;
then A9: sB in_meets_terms s,y,r,A by A8;
A10: A <> B by A2;
( B in dom (s | alpha) & A in dom (s | alpha) & sA = (s | alpha) . A & sB = (s | alpha) . B ) by RELAT_1:57, A2, A5, A6, FUNCT_1:49;
then A11: sA <> sB by A10, A1, FUNCT_1:def 4;
( ((born s) | alpha) . A = (born s) . A & ((born s) | alpha) . B = (born s) . B ) by A2, ORDINAL1:10, FUNCT_1:49;
then A12: ( ((born s) | alpha) . A = born sA & ((born s) | alpha) . B = born sB ) by Def20, A2, A3, ORDINAL1:10;
per cases ( A = 0 or A <> 0 ) ;
suppose A = 0 ; :: thesis: ((born s) | alpha) . A in ((born s) | alpha) . B
then A13: sA = 0_No by A7;
then A14: born sA = 0 by SURREAL0:37;
A15: {} c= born sB ;
born sB <> 0 by A13, A11, SURREAL0:37;
hence ((born s) | alpha) . A in ((born s) | alpha) . B by A12, A14, ORDINAL1:11, A15, XBOOLE_0:def 8; :: thesis: verum
end;
suppose A <> 0 ; :: thesis: ((born s) | alpha) . A in ((born s) | alpha) . B
hence ((born s) | alpha) . A in ((born s) | alpha) . B by A12, A7, A9, A11; :: thesis: verum
end;
end;
end;
hence (born s) | alpha is increasing by ORDINAL2:def 12; :: thesis: verum
end;

registration
let r be non-zero Sequence of REAL ;
let y be strictly_decreasing Surreal-Sequence;
cluster born (Partial_Sums (r,y)) -> increasing ;
coherence
born (Partial_Sums (r,y)) is increasing
proof
set s = Partial_Sums (r,y);
dom (Partial_Sums (r,y)) = dom (born (Partial_Sums (r,y))) by Def20;
then A1: (born (Partial_Sums (r,y))) | (dom (Partial_Sums (r,y))) = born (Partial_Sums (r,y)) ;
( Partial_Sums (r,y),y,r simplest_up_to dom (Partial_Sums (r,y)) & (Partial_Sums (r,y)) | (dom (Partial_Sums (r,y))) is one-to-one ) by Def17;
hence born (Partial_Sums (r,y)) is increasing by A1, Th97; :: thesis: verum
end;
end;

theorem Th98: :: SURREALC:98
for x being Surreal
for r being non-zero Sequence of REAL
for y being strictly_decreasing Surreal-Sequence
for s being uSurreal-Sequence
for A being Ordinal st A c= dom r & x in_meets_terms s,y,r,A & s,y,r simplest_up_to succ A holds
rng (born (s | (succ A))) c= succ (born_eq x)
proof
let x be Surreal; :: thesis: for r being non-zero Sequence of REAL
for y being strictly_decreasing Surreal-Sequence
for s being uSurreal-Sequence
for A being Ordinal st A c= dom r & x in_meets_terms s,y,r,A & s,y,r simplest_up_to succ A holds
rng (born (s | (succ A))) c= succ (born_eq x)

let r be non-zero Sequence of REAL ; :: thesis: for y being strictly_decreasing Surreal-Sequence
for s being uSurreal-Sequence
for A being Ordinal st A c= dom r & x in_meets_terms s,y,r,A & s,y,r simplest_up_to succ A holds
rng (born (s | (succ A))) c= succ (born_eq x)

let y be strictly_decreasing Surreal-Sequence; :: thesis: for s being uSurreal-Sequence
for A being Ordinal st A c= dom r & x in_meets_terms s,y,r,A & s,y,r simplest_up_to succ A holds
rng (born (s | (succ A))) c= succ (born_eq x)

let s be uSurreal-Sequence; :: thesis: for A being Ordinal st A c= dom r & x in_meets_terms s,y,r,A & s,y,r simplest_up_to succ A holds
rng (born (s | (succ A))) c= succ (born_eq x)

let A be Ordinal; :: thesis: ( A c= dom r & x in_meets_terms s,y,r,A & s,y,r simplest_up_to succ A implies rng (born (s | (succ A))) c= succ (born_eq x) )
assume A1: ( A c= dom r & x in_meets_terms s,y,r,A & s,y,r simplest_up_to succ A ) ; :: thesis: rng (born (s | (succ A))) c= succ (born_eq x)
let o be object ; :: according to TARSKI:def 3 :: thesis: ( not o in rng (born (s | (succ A))) or o in succ (born_eq x) )
assume A2: o in rng (born (s | (succ A))) ; :: thesis: o in succ (born_eq x)
consider a being object such that
A3: ( a in dom (born (s | (succ A))) & (born (s | (succ A))) . a = o ) by A2, FUNCT_1:def 3;
reconsider a = a as Ordinal by A3;
A4: a in dom (s | (succ A)) by A3, Def20;
then ( a in dom s & a in succ A ) by RELAT_1:57;
then s . a in rng s by FUNCT_1:def 3;
then reconsider sa = s . a as Surreal by SURREAL0:def 16;
sa = (s | (succ A)) . a by A4, FUNCT_1:47;
then A5: o = born sa by A3, A4, Def20;
A6: a c= A by A4, ORDINAL1:22;
then A7: x in_meets_terms s,y,r,a by A1;
Unique_No x == x by SURREALO:def 10;
then A8: Unique_No x in_meets_terms s,y,r,a by A7, A1, A6, XBOOLE_1:1, Th81;
A9: s,y,r simplest_on_position a by A1, A4;
A10: ( born (Unique_No x) = born_eq (Unique_No x) & born_eq (Unique_No x) = born_eq x ) by SURREALO:33, SURREALO:48, SURREALO:def 10;
per cases ( a = 0 or ( a <> 0 & Unique_No x = sa ) or ( a <> 0 & Unique_No x <> sa ) ) ;
suppose a = 0 ; :: thesis: o in succ (born_eq x)
then sa = 0_No by A9;
then ( born sa = 0 & 0 c= born_eq x ) by SURREAL0:37;
hence o in succ (born_eq x) by A5, ORDINAL1:22; :: thesis: verum
end;
suppose ( a <> 0 & Unique_No x = sa ) ; :: thesis: o in succ (born_eq x)
hence o in succ (born_eq x) by A10, ORDINAL1:8, A5; :: thesis: verum
end;
suppose ( a <> 0 & Unique_No x <> sa ) ; :: thesis: o in succ (born_eq x)
then born sa in born (Unique_No x) by A8, A9;
hence o in succ (born_eq x) by A5, A10, ORDINAL1:8; :: thesis: verum
end;
end;
end;

theorem Th99: :: SURREALC:99
for r being non-zero Sequence of REAL
for y being strictly_decreasing Surreal-Sequence holds (dom r) /\ (dom y) c= born (Sum (r,y))
proof
let r be non-zero Sequence of REAL ; :: thesis: for y being strictly_decreasing Surreal-Sequence holds (dom r) /\ (dom y) c= born (Sum (r,y))
let y be strictly_decreasing Surreal-Sequence; :: thesis: (dom r) /\ (dom y) c= born (Sum (r,y))
set s = Partial_Sums (r,y);
A1: dom (Partial_Sums (r,y)) = succ ((dom r) /\ (dom y)) by Def17;
( Sum (r,y) in_meets_terms Partial_Sums (r,y),y,r,(dom r) /\ (dom y) & Partial_Sums (r,y),y,r simplest_up_to dom (Partial_Sums (r,y)) ) by Def17, Th89;
then A2: rng (born ((Partial_Sums (r,y)) | (dom (Partial_Sums (r,y))))) c= succ (born_eq (Sum (r,y))) by XBOOLE_1:17, Th98, A1;
A3: born_eq (Sum (r,y)) = born (Sum (r,y)) by SURREALO:48;
succ ((dom r) /\ (dom y)) c= succ (born (Sum (r,y)))
proof
let o be Ordinal; :: according to ORDINAL1:def 5 :: thesis: ( not o in succ ((dom r) /\ (dom y)) or o in succ (born (Sum (r,y))) )
assume A4: o in succ ((dom r) /\ (dom y)) ; :: thesis: o in succ (born (Sum (r,y)))
A5: o in dom (Partial_Sums (r,y)) by A4, Def17;
then (Partial_Sums (r,y)) . o in rng (Partial_Sums (r,y)) by FUNCT_1:def 3;
then reconsider so = (Partial_Sums (r,y)) . o as uSurreal by SURREALO:def 12;
A6: dom (born (Partial_Sums (r,y))) = dom (Partial_Sums (r,y)) by Def20;
A7: born so = (born (Partial_Sums (r,y))) . o by A5, Def20;
then A8: born so in rng (born (Partial_Sums (r,y))) by A6, A5, FUNCT_1:def 3;
o c= (born (Partial_Sums (r,y))) . o by A5, A6, ORDINAL4:10;
hence o in succ (born (Sum (r,y))) by A7, A8, A2, A3, ORDINAL1:12; :: thesis: verum
end;
then (dom r) /\ (dom y) in succ (born (Sum (r,y))) by ORDINAL1:21;
hence (dom r) /\ (dom y) c= born (Sum (r,y)) by ORDINAL1:22; :: thesis: verum
end;

theorem :: SURREALC:100
for x being Surreal ex r being non-zero Sequence of REAL ex y being strictly_decreasing uSurreal-Sequence st
( dom r = dom y & dom y c= born_eq x & Sum (r,y) == x )
proof
let x be Surreal; :: thesis: ex r being non-zero Sequence of REAL ex y being strictly_decreasing uSurreal-Sequence st
( dom r = dom y & dom y c= born_eq x & Sum (r,y) == x )

ex r being non-zero Sequence of REAL ex y being strictly_decreasing uSurreal-Sequence st
( dom r = dom y & r,y, dom r name_like x & Sum (r,y) == x )
proof
assume A1: for r being non-zero Sequence of REAL
for y being strictly_decreasing uSurreal-Sequence st dom r = dom y & r,y, dom r name_like x holds
not Sum (r,y) == x
; :: thesis: contradiction
set b = card (bool (succ (born_eq x)));
consider r being non-zero Sequence of REAL , y being strictly_decreasing uSurreal-Sequence such that
A2: ( dom r = succ (card (bool (succ (born_eq x)))) & succ (card (bool (succ (born_eq x)))) = dom y & r,y, succ (card (bool (succ (born_eq x)))) name_like x ) by A1, Th95;
set s = Partial_Sums (r,y);
A3: dom (Partial_Sums (r,y)) = succ ((succ (card (bool (succ (born_eq x))))) /\ (succ (card (bool (succ (born_eq x)))))) by A2, Def17
.= succ (succ (card (bool (succ (born_eq x))))) ;
Partial_Sums (r,y),y,r simplest_up_to dom (Partial_Sums (r,y)) by Def17;
then Partial_Sums (r,y),y,r simplest_up_to succ ((succ (card (bool (succ (born_eq x))))) /\ (succ (card (bool (succ (born_eq x)))))) by A2, Def17;
then rng (born ((Partial_Sums (r,y)) | (succ (succ (card (bool (succ (born_eq x)))))))) c= succ (born_eq x) by A2, Th88, Th98;
then A4: card (rng (born (Partial_Sums (r,y)))) c= card (succ (born_eq x)) by A3, CARD_1:11;
born (Partial_Sums (r,y)) is one-to-one by CARD_5:11;
then A5: card (rng (born (Partial_Sums (r,y)))) = card (dom (born (Partial_Sums (r,y)))) by CARD_1:5, WELLORD2:def 4
.= card (succ (succ (card (bool (succ (born_eq x)))))) by A3, Def20 ;
A6: card (succ (succ (card (bool (succ (born_eq x)))))) in card (bool (succ (born_eq x))) by A4, A5, CARD_1:14, ORDINAL1:12;
card (bool (succ (born_eq x))) in succ (succ (card (bool (succ (born_eq x))))) by ORDINAL1:6, ORDINAL1:8;
then card (bool (succ (born_eq x))) c= succ (succ (card (bool (succ (born_eq x))))) by ORDINAL1:def 2;
then ( card (bool (succ (born_eq x))) = card (card (bool (succ (born_eq x)))) & card (card (bool (succ (born_eq x)))) in card (bool (succ (born_eq x))) ) by A6, ORDINAL1:12, CARD_1:11;
hence contradiction ; :: thesis: verum
end;
then consider r being non-zero Sequence of REAL , y being strictly_decreasing uSurreal-Sequence such that
A7: ( dom r = dom y & r,y, dom r name_like x & Sum (r,y) == x ) ;
take r ; :: thesis: ex y being strictly_decreasing uSurreal-Sequence st
( dom r = dom y & dom y c= born_eq x & Sum (r,y) == x )

take y ; :: thesis: ( dom r = dom y & dom y c= born_eq x & Sum (r,y) == x )
( born (Sum (r,y)) = born_eq (Sum (r,y)) & born_eq (Sum (r,y)) = born_eq x ) by A7, SURREALO:33, SURREALO:48;
hence ( dom r = dom y & dom y c= born_eq x & Sum (r,y) == x ) by A7, Th99; :: thesis: verum
end;

theorem Th101: :: SURREALC:101
for r being non-zero Sequence of REAL
for y being strictly_decreasing uSurreal-Sequence st dom r = dom y holds
r,y, dom r name_like Sum (r,y)
proof
let r be non-zero Sequence of REAL ; :: thesis: for y being strictly_decreasing uSurreal-Sequence st dom r = dom y holds
r,y, dom r name_like Sum (r,y)

let y be strictly_decreasing uSurreal-Sequence; :: thesis: ( dom r = dom y implies r,y, dom r name_like Sum (r,y) )
assume A1: dom r = dom y ; :: thesis: r,y, dom r name_like Sum (r,y)
thus ( dom r c= dom r & dom r = dom y ) by A1; :: according to SURREALC:def 19 :: thesis: for beta being Ordinal st beta in dom r holds
for Pb being Surreal st Pb = (Partial_Sums (r,y)) . beta holds
( not Sum (r,y) == Pb & r . beta = omega-r ((Sum (r,y)) - Pb) & y . beta = omega-exp ((Sum (r,y)) - Pb) )

set P = Partial_Sums (r,y);
set s = Sum (r,y);
let beta be Ordinal; :: thesis: ( beta in dom r implies for Pb being Surreal st Pb = (Partial_Sums (r,y)) . beta holds
( not Sum (r,y) == Pb & r . beta = omega-r ((Sum (r,y)) - Pb) & y . beta = omega-exp ((Sum (r,y)) - Pb) ) )

assume A2: beta in dom r ; :: thesis: for Pb being Surreal st Pb = (Partial_Sums (r,y)) . beta holds
( not Sum (r,y) == Pb & r . beta = omega-r ((Sum (r,y)) - Pb) & y . beta = omega-exp ((Sum (r,y)) - Pb) )

let Pb be Surreal; :: thesis: ( Pb = (Partial_Sums (r,y)) . beta implies ( not Sum (r,y) == Pb & r . beta = omega-r ((Sum (r,y)) - Pb) & y . beta = omega-exp ((Sum (r,y)) - Pb) ) )
assume A3: Pb = (Partial_Sums (r,y)) . beta ; :: thesis: ( not Sum (r,y) == Pb & r . beta = omega-r ((Sum (r,y)) - Pb) & y . beta = omega-exp ((Sum (r,y)) - Pb) )
A4: dom (Partial_Sums (r,y)) = succ ((dom r) /\ (dom r)) by A1, Def17;
y . beta in rng y by A1, A2, FUNCT_1:def 3;
then reconsider yb = y . beta as uSurreal by SURREALO:def 12;
Partial_Sums (r,y),y,r simplest_on_position dom r by A4, Def17, ORDINAL1:6;
then Sum (r,y) in_meets_terms Partial_Sums (r,y),y,r, dom r by A1;
then A5: Sum (r,y) is Pb,yb,r . beta -terms by A2, A3;
then A6: ( not (Sum (r,y)) + (- Pb) == 0_No & omega-exp ((Sum (r,y)) + (- Pb)) == yb & omega-r ((Sum (r,y)) + (- Pb)) = r . beta ) ;
not Sum (r,y) == Pb
proof
assume Sum (r,y) == Pb ; :: thesis: contradiction
then ( (Sum (r,y)) + (- Pb) == Pb - Pb & Pb - Pb == 0_No ) by SURREALR:43, SURREALR:39;
hence contradiction by A6, SURREALO:4; :: thesis: verum
end;
hence ( not Sum (r,y) == Pb & r . beta = omega-r ((Sum (r,y)) - Pb) & y . beta = omega-exp ((Sum (r,y)) - Pb) ) by A5, SURREALO:50; :: thesis: verum
end;

theorem :: SURREALC:102
for r1, r2 being non-zero Sequence of REAL
for y1, y2 being strictly_decreasing uSurreal-Sequence st dom r1 = dom y1 & dom r2 = dom y2 & Sum (r1,y1) == Sum (r2,y2) holds
( r1 = r2 & y1 = y2 )
proof
let r1, r2 be non-zero Sequence of REAL ; :: thesis: for y1, y2 being strictly_decreasing uSurreal-Sequence st dom r1 = dom y1 & dom r2 = dom y2 & Sum (r1,y1) == Sum (r2,y2) holds
( r1 = r2 & y1 = y2 )

let y1, y2 be strictly_decreasing uSurreal-Sequence; :: thesis: ( dom r1 = dom y1 & dom r2 = dom y2 & Sum (r1,y1) == Sum (r2,y2) implies ( r1 = r2 & y1 = y2 ) )
assume A1: ( dom r1 = dom y1 & dom r2 = dom y2 & Sum (r1,y1) == Sum (r2,y2) ) ; :: thesis: ( r1 = r2 & y1 = y2 )
A2: Sum (r1,y1) = Sum (r2,y2) by A1, SURREALO:50;
A3: r1,y1, dom r1 name_like Sum (r1,y1) by Th101, A1;
A4: r2,y2, dom r2 name_like Sum (r2,y2) by Th101, A1;
per cases ( dom r1 in dom r2 or dom r1 = dom r2 or dom r2 in dom r1 ) by ORDINAL1:14;
suppose A5: dom r1 in dom r2 ; :: thesis: ( r1 = r2 & y1 = y2 )
then A6: dom r1 c= dom r2 by ORDINAL1:def 2;
r2,y2, dom r1 name_like Sum (r2,y2) by A4, A6;
then A7: ( r1 | (dom r1) = r2 | (dom r1) & y1 | (dom r1) = y2 | (dom r1) ) by A3, A2, Th87;
set s = Partial_Sums (r2,y2);
(Partial_Sums (r2,y2)) . (dom r1) = ((Partial_Sums (r2,y2)) | (succ (dom r1))) . (dom r1) by FUNCT_1:49, ORDINAL1:6
.= (Partial_Sums ((r2 | (dom r1)),(y2 | (dom r1)))) . (dom r1) by Th85
.= Sum (r1,y1) by A1, A7 ;
hence ( r1 = r2 & y1 = y2 ) by A1, A4, A5; :: thesis: verum
end;
suppose A8: dom r1 = dom r2 ; :: thesis: ( r1 = r2 & y1 = y2 )
r2,y2, dom r1 name_like Sum (r2,y2) by Th101, A1, A8;
then ( r1 = r1 | (dom r1) & r1 | (dom r1) = r2 | (dom r1) & r2 | (dom r1) = r2 & y1 = y1 | (dom r1) & y1 | (dom r1) = y2 | (dom r1) & y2 | (dom r1) = y2 ) by A8, A3, A2, Th87;
hence ( r1 = r2 & y1 = y2 ) ; :: thesis: verum
end;
suppose A9: dom r2 in dom r1 ; :: thesis: ( r1 = r2 & y1 = y2 )
then A10: dom r2 c= dom r1 by ORDINAL1:def 2;
r1,y1, dom r2 name_like Sum (r1,y1) by A10, A3;
then A11: ( r1 | (dom r2) = r2 | (dom r2) & y1 | (dom r2) = y2 | (dom r2) ) by A4, A2, Th87;
set s = Partial_Sums (r1,y1);
(Partial_Sums (r1,y1)) . (dom r2) = ((Partial_Sums (r1,y1)) | (succ (dom r2))) . (dom r2) by ORDINAL1:6, FUNCT_1:49
.= (Partial_Sums ((r1 | (dom r2)),(y1 | (dom r2)))) . (dom r2) by Th85
.= Sum (r2,y2) by A1, A11 ;
hence ( r1 = r2 & y1 = y2 ) by A1, A3, A9; :: thesis: verum
end;
end;
end;