A1:
uInt . 0 = 0_No
by Def1;
defpred S1[ Nat] means for n, m being Nat st n + m = $1 holds
(uInt . n) + (uInt . (- m)) == uInt . (n - m);
A2:
S1[ 0 ]
A3:
for k being Nat st S1[k] holds
S1[k + 1]
proof
let k be
Nat;
( S1[k] implies S1[k + 1] )
assume A4:
S1[
k]
;
S1[k + 1]
let n,
m be
Nat;
( n + m = k + 1 implies (uInt . n) + (uInt . (- m)) == uInt . (n - m) )
assume A5:
n + m = k + 1
;
(uInt . n) + (uInt . (- m)) == uInt . (n - m)
per cases
( n = 0 or m = 0 or ( n <> 0 & m <> 0 ) )
;
suppose
(
n <> 0 &
m <> 0 )
;
(uInt . n) + (uInt . (- m)) == uInt . (n - m)then reconsider n1 =
n - 1,
m1 =
m - 1 as
Nat by NAT_1:20;
A6:
(
uInt . (n1 + 1) = [{(uInt . n1)},{}] &
uInt . (- (m1 + 1)) = [{},{(uInt . (- m1))}] )
by Def1;
then A7:
(
{(uInt . n)} ++ (L_ (uInt . (- m))) = {} &
{} = (R_ (uInt . n)) ++ {(uInt . (- m))} )
by SURREALR:27;
n1 + m = k
by A5;
then A8:
(uInt . n1) + (uInt . (- m)) == uInt . (n1 - m)
by A4;
(L_ (uInt . n)) ++ {(uInt . (- m))} = {((uInt . n1) + (uInt . (- m)))}
by SURREALR:36, A6;
then A9:
(L_ (uInt . n)) ++ {(uInt . (- m))} <==> {(uInt . ((n - m) - 1))}
by A8, SURREALO:32;
n + m1 = k
by A5;
then A10:
(uInt . n) + (uInt . (- m1)) == uInt . (n - m1)
by A4;
{(uInt . n)} ++ (R_ (uInt . (- m))) = {((uInt . n) + (uInt . (- m1)))}
by A6, SURREALR:36;
then A11:
{(uInt . n)} ++ (R_ (uInt . (- m))) <==> {(uInt . ((n - m) + 1))}
by A10, SURREALO:32;
reconsider ss =
[{(uInt . ((n - m) - 1))},{(uInt . ((n - m) + 1))}] as
Surreal by Th10;
A12:
ss == uInt . (n - m)
by Th10;
(uInt . n) + (uInt . (- m)) =
[(((L_ (uInt . n)) ++ {(uInt . (- m))}) \/ {}),({} \/ ({(uInt . n)} ++ (R_ (uInt . (- m)))))]
by A7, SURREALR:28
.=
[((L_ (uInt . n)) ++ {(uInt . (- m))}),({(uInt . n)} ++ (R_ (uInt . (- m))))]
;
then
(uInt . n) + (uInt . (- m)) == ss
by A9, A11, SURREALO:29;
hence
(uInt . n) + (uInt . (- m)) == uInt . (n - m)
by A12, SURREALO:4;
verum end; end;
end;
A13:
for k being Nat holds S1[k]
from NAT_1:sch 2(A2, A3);
let i, j be Integer; (uInt . i) + (uInt . j) == uInt . (i + j)
i in INT
by INT_1:def 2;
then consider k being Nat such that
A14:
( i = k or i = - k )
by INT_1:def 1;
j in INT
by INT_1:def 2;
then consider n being Nat such that
A15:
( j = n or j = - n )
by INT_1:def 1;