:: ORDINAL3 semantic presentation
begin
theorem :: ORDINAL3:1
for X being set holds X c= succ X by XBOOLE_1:7;
theorem :: ORDINAL3:2
for X, Y being set st succ X c= Y holds
X c= Y
proof
let X, Y be set ; ::_thesis: ( succ X c= Y implies X c= Y )
X c= succ X by XBOOLE_1:7;
hence ( succ X c= Y implies X c= Y ) by XBOOLE_1:1; ::_thesis: verum
end;
theorem :: ORDINAL3:3
for A, B being Ordinal holds
( A in B iff succ A in succ B )
proof
let A, B be Ordinal; ::_thesis: ( A in B iff succ A in succ B )
( A in B iff succ A c= B ) by ORDINAL1:21;
hence ( A in B iff succ A in succ B ) by ORDINAL1:22; ::_thesis: verum
end;
theorem :: ORDINAL3:4
for A being Ordinal
for X being set st X c= A holds
union X is Ordinal
proof
let A be Ordinal; ::_thesis: for X being set st X c= A holds
union X is Ordinal
let X be set ; ::_thesis: ( X c= A implies union X is Ordinal )
assume X c= A ; ::_thesis: union X is Ordinal
then for x being set st x in X holds
x is Ordinal ;
hence union X is Ordinal by ORDINAL1:23; ::_thesis: verum
end;
theorem Th5: :: ORDINAL3:5
for X being set holds union (On X) is Ordinal
proof
let X be set ; ::_thesis: union (On X) is Ordinal
for x being set st x in On X holds
x is Ordinal by ORDINAL1:def_9;
hence union (On X) is Ordinal by ORDINAL1:23; ::_thesis: verum
end;
theorem Th6: :: ORDINAL3:6
for A being Ordinal
for X being set st X c= A holds
On X = X
proof
let A be Ordinal; ::_thesis: for X being set st X c= A holds
On X = X
let X be set ; ::_thesis: ( X c= A implies On X = X )
defpred S1[ set ] means ( $1 in X & $1 is Ordinal );
assume X c= A ; ::_thesis: On X = X
then A1: for x being set holds
( x in X iff S1[x] ) ;
A2: for x being set holds
( x in On X iff S1[x] ) by ORDINAL1:def_9;
thus On X = X from XBOOLE_0:sch_2(A2, A1); ::_thesis: verum
end;
theorem Th7: :: ORDINAL3:7
for A being Ordinal holds On {A} = {A}
proof
let A be Ordinal; ::_thesis: On {A} = {A}
{A} c= succ A by XBOOLE_1:7;
hence On {A} = {A} by Th6; ::_thesis: verum
end;
theorem Th8: :: ORDINAL3:8
for A being Ordinal st A <> {} holds
{} in A
proof
let A be Ordinal; ::_thesis: ( A <> {} implies {} in A )
A1: {} c= A by XBOOLE_1:2;
assume A <> {} ; ::_thesis: {} in A
then {} c< A by A1, XBOOLE_0:def_8;
hence {} in A by ORDINAL1:11; ::_thesis: verum
end;
theorem :: ORDINAL3:9
for A being Ordinal holds inf A = {}
proof
let A be Ordinal; ::_thesis: inf A = {}
A1: inf A = meet A by ORDINAL2:8;
then ( A <> {} implies inf A = {} ) by Th8, SETFAM_1:4;
hence inf A = {} by A1, SETFAM_1:def_1; ::_thesis: verum
end;
theorem :: ORDINAL3:10
for A being Ordinal holds inf {A} = A
proof
let A be Ordinal; ::_thesis: inf {A} = A
thus inf {A} = meet {A} by Th7
.= A by SETFAM_1:10 ; ::_thesis: verum
end;
theorem :: ORDINAL3:11
for A being Ordinal
for X being set st X c= A holds
meet X is Ordinal
proof
let A be Ordinal; ::_thesis: for X being set st X c= A holds
meet X is Ordinal
let X be set ; ::_thesis: ( X c= A implies meet X is Ordinal )
assume X c= A ; ::_thesis: meet X is Ordinal
then inf X = meet X by Th6;
hence meet X is Ordinal ; ::_thesis: verum
end;
registration
let A, B be Ordinal;
clusterA \/ B -> ordinal ;
coherence
A \/ B is ordinal
proof
( A c= B or B c= A ) ;
hence A \/ B is ordinal by XBOOLE_1:12; ::_thesis: verum
end;
clusterA /\ B -> ordinal ;
coherence
A /\ B is ordinal
proof
( A c= B or B c= A ) ;
hence A /\ B is ordinal by XBOOLE_1:28; ::_thesis: verum
end;
end;
theorem :: ORDINAL3:12
for A, B being Ordinal holds
( A \/ B = A or A \/ B = B )
proof
let A, B be Ordinal; ::_thesis: ( A \/ B = A or A \/ B = B )
( A c= B or B c= A ) ;
hence ( A \/ B = A or A \/ B = B ) by XBOOLE_1:12; ::_thesis: verum
end;
theorem :: ORDINAL3:13
for A, B being Ordinal holds
( A /\ B = A or A /\ B = B )
proof
let A, B be Ordinal; ::_thesis: ( A /\ B = A or A /\ B = B )
( A c= B or B c= A ) ;
hence ( A /\ B = A or A /\ B = B ) by XBOOLE_1:28; ::_thesis: verum
end;
Lm1: 1 = succ {}
;
theorem Th14: :: ORDINAL3:14
for A being Ordinal st A in 1 holds
A = {}
proof
let A be Ordinal; ::_thesis: ( A in 1 implies A = {} )
assume A in 1 ; ::_thesis: A = {}
hence ( A c= {} & {} c= A ) by Lm1, ORDINAL1:22, XBOOLE_1:2; :: according to XBOOLE_0:def_10 ::_thesis: verum
end;
theorem :: ORDINAL3:15
1 = {{}} by Lm1;
theorem Th16: :: ORDINAL3:16
for A being Ordinal holds
( not A c= 1 or A = {} or A = 1 )
proof
let A be Ordinal; ::_thesis: ( not A c= 1 or A = {} or A = 1 )
assume that
A1: A c= 1 and
A2: A <> {} and
A3: A <> 1 ; ::_thesis: contradiction
A c< 1 by A1, A3, XBOOLE_0:def_8;
hence contradiction by A2, Th14, ORDINAL1:11; ::_thesis: verum
end;
theorem :: ORDINAL3:17
for A, B, C, D being Ordinal st ( A c= B or A in B ) & C in D holds
A +^ C in B +^ D
proof
let A, B, C, D be Ordinal; ::_thesis: ( ( A c= B or A in B ) & C in D implies A +^ C in B +^ D )
assume that
A1: ( A c= B or A in B ) and
A2: C in D ; ::_thesis: A +^ C in B +^ D
A3: B +^ C in B +^ D by A2, ORDINAL2:32;
A c= B by A1, ORDINAL1:def_2;
hence A +^ C in B +^ D by A3, ORDINAL1:12, ORDINAL2:34; ::_thesis: verum
end;
theorem :: ORDINAL3:18
for A, B, C, D being Ordinal st A c= B & C c= D holds
A +^ C c= B +^ D
proof
let A, B, C, D be Ordinal; ::_thesis: ( A c= B & C c= D implies A +^ C c= B +^ D )
assume that
A1: A c= B and
A2: C c= D ; ::_thesis: A +^ C c= B +^ D
A3: B +^ C c= B +^ D by A2, ORDINAL2:33;
A +^ C c= B +^ C by A1, ORDINAL2:34;
hence A +^ C c= B +^ D by A3, XBOOLE_1:1; ::_thesis: verum
end;
theorem Th19: :: ORDINAL3:19
for A, B, C, D being Ordinal st A in B & ( ( C c= D & D <> {} ) or C in D ) holds
A *^ C in B *^ D
proof
let A, B, C, D be Ordinal; ::_thesis: ( A in B & ( ( C c= D & D <> {} ) or C in D ) implies A *^ C in B *^ D )
assume that
A1: A in B and
A2: ( ( C c= D & D <> {} ) or C in D ) ; ::_thesis: A *^ C in B *^ D
A3: C c= D by A2, ORDINAL1:def_2;
A *^ D in B *^ D by A1, A2, ORDINAL2:40;
hence A *^ C in B *^ D by A3, ORDINAL1:12, ORDINAL2:42; ::_thesis: verum
end;
theorem :: ORDINAL3:20
for A, B, C, D being Ordinal st A c= B & C c= D holds
A *^ C c= B *^ D
proof
let A, B, C, D be Ordinal; ::_thesis: ( A c= B & C c= D implies A *^ C c= B *^ D )
assume that
A1: A c= B and
A2: C c= D ; ::_thesis: A *^ C c= B *^ D
A3: B *^ C c= B *^ D by A2, ORDINAL2:42;
A *^ C c= B *^ C by A1, ORDINAL2:41;
hence A *^ C c= B *^ D by A3, XBOOLE_1:1; ::_thesis: verum
end;
theorem Th21: :: ORDINAL3:21
for B, C, D being Ordinal st B +^ C = B +^ D holds
C = D
proof
let B, C, D be Ordinal; ::_thesis: ( B +^ C = B +^ D implies C = D )
assume that
A1: B +^ C = B +^ D and
A2: C <> D ; ::_thesis: contradiction
( C in D or D in C ) by A2, ORDINAL1:14;
then B +^ C in B +^ C by A1, ORDINAL2:32;
hence contradiction ; ::_thesis: verum
end;
theorem Th22: :: ORDINAL3:22
for B, C, D being Ordinal st B +^ C in B +^ D holds
C in D
proof
let B, C, D be Ordinal; ::_thesis: ( B +^ C in B +^ D implies C in D )
assume that
A1: B +^ C in B +^ D and
A2: not C in D ; ::_thesis: contradiction
D c= C by A2, ORDINAL1:16;
hence contradiction by A1, ORDINAL1:5, ORDINAL2:33; ::_thesis: verum
end;
theorem Th23: :: ORDINAL3:23
for B, C, D being Ordinal st B +^ C c= B +^ D holds
C c= D
proof
let B, C, D be Ordinal; ::_thesis: ( B +^ C c= B +^ D implies C c= D )
assume A1: B +^ C c= B +^ D ; ::_thesis: C c= D
( ( B +^ C c= B +^ D & B +^ C <> B +^ D ) iff B +^ C c< B +^ D ) by XBOOLE_0:def_8;
then ( C = D or C in D ) by A1, Th21, Th22, ORDINAL1:11;
hence C c= D by ORDINAL1:def_2; ::_thesis: verum
end;
theorem Th24: :: ORDINAL3:24
for A, B being Ordinal holds
( A c= A +^ B & B c= A +^ B )
proof
let A, B be Ordinal; ::_thesis: ( A c= A +^ B & B c= A +^ B )
A1: {} +^ B c= A +^ B by ORDINAL2:34, XBOOLE_1:2;
A +^ {} c= A +^ B by ORDINAL2:33, XBOOLE_1:2;
hence ( A c= A +^ B & B c= A +^ B ) by A1, ORDINAL2:27, ORDINAL2:30; ::_thesis: verum
end;
theorem :: ORDINAL3:25
for A, B, C being Ordinal st A in B holds
( A in B +^ C & A in C +^ B )
proof
let A, B, C be Ordinal; ::_thesis: ( A in B implies ( A in B +^ C & A in C +^ B ) )
assume A1: A in B ; ::_thesis: ( A in B +^ C & A in C +^ B )
A2: B c= C +^ B by Th24;
B c= B +^ C by Th24;
hence ( A in B +^ C & A in C +^ B ) by A1, A2; ::_thesis: verum
end;
theorem Th26: :: ORDINAL3:26
for A, B being Ordinal st A +^ B = {} holds
( A = {} & B = {} )
proof
let A, B be Ordinal; ::_thesis: ( A +^ B = {} implies ( A = {} & B = {} ) )
assume A1: A +^ B = {} ; ::_thesis: ( A = {} & B = {} )
then A2: B c= {} by Th24;
A c= {} by A1, Th24;
hence ( A = {} & B = {} ) by A2, XBOOLE_1:3; ::_thesis: verum
end;
theorem Th27: :: ORDINAL3:27
for A, B being Ordinal st A c= B holds
ex C being Ordinal st B = A +^ C
proof
let A, B be Ordinal; ::_thesis: ( A c= B implies ex C being Ordinal st B = A +^ C )
defpred S1[ Ordinal] means ( A c= $1 implies ex C being Ordinal st $1 = A +^ C );
A1: for B being Ordinal st S1[B] holds
S1[ succ B]
proof
let B be Ordinal; ::_thesis: ( S1[B] implies S1[ succ B] )
assume that
A2: ( A c= B implies ex C being Ordinal st B = A +^ C ) and
A3: A c= succ B ; ::_thesis: ex C being Ordinal st succ B = A +^ C
A4: now__::_thesis:_(_A_<>_succ_B_implies_ex_C_being_Ordinal_st_succ_B_=_A_+^_C_)
assume A <> succ B ; ::_thesis: ex C being Ordinal st succ B = A +^ C
then A c< succ B by A3, XBOOLE_0:def_8;
then A in succ B by ORDINAL1:11;
then consider C being Ordinal such that
A5: B = A +^ C by A2, ORDINAL1:22;
succ B = A +^ (succ C) by A5, ORDINAL2:28;
hence ex C being Ordinal st succ B = A +^ C ; ::_thesis: verum
end;
( A = succ B implies succ B = A +^ {} ) by ORDINAL2:27;
hence ex C being Ordinal st succ B = A +^ C by A4; ::_thesis: verum
end;
A6: for B being Ordinal st B <> {} & B is limit_ordinal & ( for C being Ordinal st C in B holds
S1[C] ) holds
S1[B]
proof
deffunc H1( Ordinal) -> set = A +^ $1;
let B be Ordinal; ::_thesis: ( B <> {} & B is limit_ordinal & ( for C being Ordinal st C in B holds
S1[C] ) implies S1[B] )
assume that
B <> {} and
A7: B is limit_ordinal and
for C being Ordinal st C in B & A c= C holds
ex D being Ordinal st C = A +^ D and
A8: A c= B ; ::_thesis: ex C being Ordinal st B = A +^ C
defpred S2[ Ordinal] means B c= A +^ $1;
A9: B = {} +^ B by ORDINAL2:30;
{} +^ B c= A +^ B by ORDINAL2:34, XBOOLE_1:2;
then A10: ex C being Ordinal st S2[C] by A9;
consider C being Ordinal such that
A11: ( S2[C] & ( for D being Ordinal st S2[D] holds
C c= D ) ) from ORDINAL1:sch_1(A10);
consider L being Ordinal-Sequence such that
A12: ( dom L = C & ( for D being Ordinal st D in C holds
L . D = H1(D) ) ) from ORDINAL2:sch_3();
A13: now__::_thesis:_(_C_<>_{}_implies_ex_C_being_Ordinal_st_B_=_A_+^_C_)
for D being Ordinal st D in rng L holds
D in B
proof
let D be Ordinal; ::_thesis: ( D in rng L implies D in B )
assume D in rng L ; ::_thesis: D in B
then consider y being set such that
A14: y in dom L and
A15: D = L . y by FUNCT_1:def_3;
reconsider y = y as Ordinal by A14;
A16: not C c= y by A12, A14, ORDINAL1:5;
L . y = A +^ y by A12, A14;
hence D in B by A11, A15, A16, ORDINAL1:16; ::_thesis: verum
end;
then A17: sup (rng L) c= B by ORDINAL2:20;
A18: C is limit_ordinal
proof
assume not C is limit_ordinal ; ::_thesis: contradiction
then consider D being Ordinal such that
A19: C = succ D by ORDINAL1:29;
not C c= D by A19, ORDINAL1:5, ORDINAL1:6;
then A +^ D in B by A11, ORDINAL1:16;
then A20: succ (A +^ D) c= B by ORDINAL1:21;
succ (A +^ D) = A +^ (succ D) by ORDINAL2:28;
then B = succ (A +^ D) by A11, A19, A20, XBOOLE_0:def_10;
hence contradiction by A7, ORDINAL1:29; ::_thesis: verum
end;
assume C <> {} ; ::_thesis: ex C being Ordinal st B = A +^ C
then A +^ C = sup L by A12, A18, ORDINAL2:29
.= sup (rng L) ;
then B = A +^ C by A11, A17, XBOOLE_0:def_10;
hence ex C being Ordinal st B = A +^ C ; ::_thesis: verum
end;
now__::_thesis:_(_C_=_{}_implies_B_=_A_+^_{}_)
assume C = {} ; ::_thesis: B = A +^ {}
then A +^ C = A by ORDINAL2:27;
hence B = A by A8, A11, XBOOLE_0:def_10
.= A +^ {} by ORDINAL2:27 ;
::_thesis: verum
end;
hence ex C being Ordinal st B = A +^ C by A13; ::_thesis: verum
end;
A21: S1[ {} ]
proof
assume A c= {} ; ::_thesis: ex C being Ordinal st {} = A +^ C
then A = {} by XBOOLE_1:3;
then {} = A +^ {} by ORDINAL2:30;
hence ex C being Ordinal st {} = A +^ C ; ::_thesis: verum
end;
for B being Ordinal holds S1[B] from ORDINAL2:sch_1(A21, A1, A6);
hence ( A c= B implies ex C being Ordinal st B = A +^ C ) ; ::_thesis: verum
end;
theorem Th28: :: ORDINAL3:28
for A, B being Ordinal st A in B holds
ex C being Ordinal st
( B = A +^ C & C <> {} )
proof
let A, B be Ordinal; ::_thesis: ( A in B implies ex C being Ordinal st
( B = A +^ C & C <> {} ) )
assume A1: A in B ; ::_thesis: ex C being Ordinal st
( B = A +^ C & C <> {} )
then A c= B by ORDINAL1:def_2;
then consider C being Ordinal such that
A2: B = A +^ C by Th27;
take C ; ::_thesis: ( B = A +^ C & C <> {} )
thus B = A +^ C by A2; ::_thesis: C <> {}
assume C = {} ; ::_thesis: contradiction
then B = A by A2, ORDINAL2:27;
hence contradiction by A1; ::_thesis: verum
end;
theorem Th29: :: ORDINAL3:29
for A, B being Ordinal st A <> {} & A is limit_ordinal holds
B +^ A is limit_ordinal
proof
let A, B be Ordinal; ::_thesis: ( A <> {} & A is limit_ordinal implies B +^ A is limit_ordinal )
assume that
A1: A <> {} and
A2: A is limit_ordinal ; ::_thesis: B +^ A is limit_ordinal
{} c= A by XBOOLE_1:2;
then A3: {} c< A by A1, XBOOLE_0:def_8;
deffunc H1( Ordinal) -> set = B +^ $1;
consider L being Ordinal-Sequence such that
A4: ( dom L = A & ( for C being Ordinal st C in A holds
L . C = H1(C) ) ) from ORDINAL2:sch_3();
A5: B +^ A = sup L by A1, A2, A4, ORDINAL2:29
.= sup (rng L) ;
for C being Ordinal st C in B +^ A holds
succ C in B +^ A
proof
let C be Ordinal; ::_thesis: ( C in B +^ A implies succ C in B +^ A )
assume A6: C in B +^ A ; ::_thesis: succ C in B +^ A
A7: now__::_thesis:_(_not_C_in_B_implies_succ_C_in_B_+^_A_)
assume not C in B ; ::_thesis: succ C in B +^ A
then consider D being Ordinal such that
A8: C = B +^ D by Th27, ORDINAL1:16;
now__::_thesis:_D_in_A
assume not D in A ; ::_thesis: contradiction
then B +^ A c= B +^ D by ORDINAL1:16, ORDINAL2:33;
then C in C by A6, A8;
hence contradiction ; ::_thesis: verum
end;
then A9: succ D in A by A2, ORDINAL1:28;
then L . (succ D) = B +^ (succ D) by A4
.= succ (B +^ D) by ORDINAL2:28 ;
then succ C in rng L by A4, A8, A9, FUNCT_1:def_3;
hence succ C in B +^ A by A5, ORDINAL2:19; ::_thesis: verum
end;
now__::_thesis:_(_C_in_B_implies_succ_C_in_B_+^_A_)
assume C in B ; ::_thesis: succ C in B +^ A
then A10: succ C c= B by ORDINAL1:21;
A11: (succ C) +^ {} = succ C by ORDINAL2:27;
B +^ {} in B +^ A by A3, ORDINAL1:11, ORDINAL2:32;
hence succ C in B +^ A by A10, A11, ORDINAL1:12, ORDINAL2:34; ::_thesis: verum
end;
hence succ C in B +^ A by A7; ::_thesis: verum
end;
hence B +^ A is limit_ordinal by ORDINAL1:28; ::_thesis: verum
end;
theorem Th30: :: ORDINAL3:30
for A, B, C being Ordinal holds (A +^ B) +^ C = A +^ (B +^ C)
proof
let A, B, C be Ordinal; ::_thesis: (A +^ B) +^ C = A +^ (B +^ C)
defpred S1[ Ordinal] means (A +^ B) +^ $1 = A +^ (B +^ $1);
A1: for C being Ordinal st S1[C] holds
S1[ succ C]
proof
let C be Ordinal; ::_thesis: ( S1[C] implies S1[ succ C] )
assume A2: (A +^ B) +^ C = A +^ (B +^ C) ; ::_thesis: S1[ succ C]
thus (A +^ B) +^ (succ C) = succ ((A +^ B) +^ C) by ORDINAL2:28
.= A +^ (succ (B +^ C)) by A2, ORDINAL2:28
.= A +^ (B +^ (succ C)) by ORDINAL2:28 ; ::_thesis: verum
end;
A3: for C being Ordinal st C <> {} & C is limit_ordinal & ( for D being Ordinal st D in C holds
S1[D] ) holds
S1[C]
proof
deffunc H1( Ordinal) -> set = (A +^ B) +^ $1;
let C be Ordinal; ::_thesis: ( C <> {} & C is limit_ordinal & ( for D being Ordinal st D in C holds
S1[D] ) implies S1[C] )
assume that
A4: C <> {} and
A5: C is limit_ordinal and
A6: for D being Ordinal st D in C holds
S1[D] ; ::_thesis: S1[C]
consider L being Ordinal-Sequence such that
A7: ( dom L = C & ( for D being Ordinal st D in C holds
L . D = H1(D) ) ) from ORDINAL2:sch_3();
deffunc H2( Ordinal) -> set = A +^ $1;
consider L1 being Ordinal-Sequence such that
A8: ( dom L1 = B +^ C & ( for D being Ordinal st D in B +^ C holds
L1 . D = H2(D) ) ) from ORDINAL2:sch_3();
A9: rng L c= rng L1
proof
let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in rng L or x in rng L1 )
assume x in rng L ; ::_thesis: x in rng L1
then consider y being set such that
A10: y in dom L and
A11: x = L . y by FUNCT_1:def_3;
reconsider y = y as Ordinal by A10;
A12: B +^ y in B +^ C by A7, A10, ORDINAL2:32;
L . y = (A +^ B) +^ y by A7, A10;
then A13: L . y = A +^ (B +^ y) by A6, A7, A10;
L1 . (B +^ y) = A +^ (B +^ y) by A7, A8, A10, ORDINAL2:32;
hence x in rng L1 by A8, A11, A13, A12, FUNCT_1:def_3; ::_thesis: verum
end;
A14: B +^ C <> {} by A4, Th26;
B +^ C is limit_ordinal by A4, A5, Th29;
then A15: A +^ (B +^ C) = sup L1 by A8, A14, ORDINAL2:29
.= sup (rng L1) ;
(A +^ B) +^ C = sup L by A4, A5, A7, ORDINAL2:29
.= sup (rng L) ;
hence (A +^ B) +^ C c= A +^ (B +^ C) by A15, A9, ORDINAL2:22; :: according to XBOOLE_0:def_10 ::_thesis: A +^ (B +^ C) c= (A +^ B) +^ C
let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in A +^ (B +^ C) or x in (A +^ B) +^ C )
assume A16: x in A +^ (B +^ C) ; ::_thesis: x in (A +^ B) +^ C
then reconsider x9 = x as Ordinal ;
A17: now__::_thesis:_(_not_x_in_A_+^_B_implies_x_in_(A_+^_B)_+^_C_)
A18: A c= A +^ B by Th24;
assume A19: not x in A +^ B ; ::_thesis: x in (A +^ B) +^ C
then A +^ B c= x9 by ORDINAL1:16;
then consider E being Ordinal such that
A20: x9 = A +^ E by A18, Th27, XBOOLE_1:1;
B c= E by A19, A20, ORDINAL1:16, ORDINAL2:32;
then consider F being Ordinal such that
A21: E = B +^ F by Th27;
A22: now__::_thesis:_F_in_C
assume not F in C ; ::_thesis: contradiction
then B +^ C c= B +^ F by ORDINAL1:16, ORDINAL2:33;
then A +^ (B +^ C) c= A +^ (B +^ F) by ORDINAL2:33;
then x9 in x9 by A16, A20, A21;
hence contradiction ; ::_thesis: verum
end;
then x = (A +^ B) +^ F by A6, A20, A21;
hence x in (A +^ B) +^ C by A22, ORDINAL2:32; ::_thesis: verum
end;
A23: (A +^ B) +^ {} = A +^ B by ORDINAL2:27;
(A +^ B) +^ {} c= (A +^ B) +^ C by ORDINAL2:33, XBOOLE_1:2;
hence x in (A +^ B) +^ C by A23, A17; ::_thesis: verum
end;
(A +^ B) +^ {} = A +^ B by ORDINAL2:27
.= A +^ (B +^ {}) by ORDINAL2:27 ;
then A24: S1[ {} ] ;
for C being Ordinal holds S1[C] from ORDINAL2:sch_1(A24, A1, A3);
hence (A +^ B) +^ C = A +^ (B +^ C) ; ::_thesis: verum
end;
theorem :: ORDINAL3:31
for A, B being Ordinal holds
( not A *^ B = {} or A = {} or B = {} )
proof
let A, B be Ordinal; ::_thesis: ( not A *^ B = {} or A = {} or B = {} )
assume that
A1: A *^ B = {} and
A2: A <> {} and
A3: B <> {} ; ::_thesis: contradiction
{} c= A by XBOOLE_1:2;
then {} c< A by A2, XBOOLE_0:def_8;
hence contradiction by A1, A3, ORDINAL1:11, ORDINAL2:40; ::_thesis: verum
end;
theorem :: ORDINAL3:32
for A, B, C being Ordinal st A in B & C <> {} holds
( A in B *^ C & A in C *^ B )
proof
let A, B, C be Ordinal; ::_thesis: ( A in B & C <> {} implies ( A in B *^ C & A in C *^ B ) )
assume that
A1: A in B and
A2: C <> {} ; ::_thesis: ( A in B *^ C & A in C *^ B )
{} c= C by XBOOLE_1:2;
then {} c< C by A2, XBOOLE_0:def_8;
then {} in C by ORDINAL1:11;
then A3: 1 c= C by Lm1, ORDINAL1:21;
then A4: 1 *^ B c= C *^ B by ORDINAL2:41;
A5: 1 *^ B = B by ORDINAL2:39;
A6: B *^ 1 = B by ORDINAL2:39;
B *^ 1 c= B *^ C by A3, ORDINAL2:42;
hence ( A in B *^ C & A in C *^ B ) by A1, A4, A6, A5; ::_thesis: verum
end;
theorem Th33: :: ORDINAL3:33
for B, A, C being Ordinal st B *^ A = C *^ A & A <> {} holds
B = C
proof
let B, A, C be Ordinal; ::_thesis: ( B *^ A = C *^ A & A <> {} implies B = C )
assume that
A1: B *^ A = C *^ A and
A2: A <> {} and
A3: B <> C ; ::_thesis: contradiction
( B in C or C in B ) by A3, ORDINAL1:14;
then B *^ A in B *^ A by A1, A2, ORDINAL2:40;
hence contradiction ; ::_thesis: verum
end;
theorem Th34: :: ORDINAL3:34
for B, A, C being Ordinal st B *^ A in C *^ A holds
B in C
proof
let B, A, C be Ordinal; ::_thesis: ( B *^ A in C *^ A implies B in C )
assume that
A1: B *^ A in C *^ A and
A2: not B in C ; ::_thesis: contradiction
C c= B by A2, ORDINAL1:16;
hence contradiction by A1, ORDINAL1:5, ORDINAL2:41; ::_thesis: verum
end;
theorem Th35: :: ORDINAL3:35
for B, A, C being Ordinal st B *^ A c= C *^ A & A <> {} holds
B c= C
proof
let B, A, C be Ordinal; ::_thesis: ( B *^ A c= C *^ A & A <> {} implies B c= C )
assume A1: B *^ A c= C *^ A ; ::_thesis: ( not A <> {} or B c= C )
( ( B *^ A c= C *^ A & B *^ A <> C *^ A ) iff B *^ A c< C *^ A ) by XBOOLE_0:def_8;
then not ( A <> {} & not B = C & not B in C ) by A1, Th33, Th34, ORDINAL1:11;
hence ( not A <> {} or B c= C ) by ORDINAL1:def_2; ::_thesis: verum
end;
theorem Th36: :: ORDINAL3:36
for B, A being Ordinal st B <> {} holds
( A c= A *^ B & A c= B *^ A )
proof
let B, A be Ordinal; ::_thesis: ( B <> {} implies ( A c= A *^ B & A c= B *^ A ) )
assume B <> {} ; ::_thesis: ( A c= A *^ B & A c= B *^ A )
then {} in B by Th8;
then A1: 1 c= B by Lm1, ORDINAL1:21;
then A2: A *^ 1 c= A *^ B by ORDINAL2:42;
1 *^ A c= B *^ A by A1, ORDINAL2:41;
hence ( A c= A *^ B & A c= B *^ A ) by A2, ORDINAL2:39; ::_thesis: verum
end;
theorem :: ORDINAL3:37
for A, B being Ordinal st A *^ B = 1 holds
( A = 1 & B = 1 )
proof
let A, B be Ordinal; ::_thesis: ( A *^ B = 1 implies ( A = 1 & B = 1 ) )
assume A1: A *^ B = 1 ; ::_thesis: ( A = 1 & B = 1 )
then A2: B <> {} by ORDINAL2:38;
{} c= B by XBOOLE_1:2;
then {} c< B by A2, XBOOLE_0:def_8;
then {} in B by ORDINAL1:11;
then A3: 1 c= B by Lm1, ORDINAL1:21;
A4: now__::_thesis:_not_1_in_A
A5: B = 1 *^ B by ORDINAL2:39;
assume 1 in A ; ::_thesis: contradiction
hence contradiction by A1, A2, A3, A5, ORDINAL1:5, ORDINAL2:40; ::_thesis: verum
end;
now__::_thesis:_not_A_in_1
assume A in 1 ; ::_thesis: contradiction
then A c= {} by Lm1, ORDINAL1:22;
then A = {} by XBOOLE_1:3;
hence contradiction by A1, ORDINAL2:35; ::_thesis: verum
end;
hence A = 1 by A4, ORDINAL1:14; ::_thesis: B = 1
hence B = 1 by A1, ORDINAL2:39; ::_thesis: verum
end;
theorem Th38: :: ORDINAL3:38
for A, B, C being Ordinal holds
( not A in B +^ C or A in B or ex D being Ordinal st
( D in C & A = B +^ D ) )
proof
let A, B, C be Ordinal; ::_thesis: ( not A in B +^ C or A in B or ex D being Ordinal st
( D in C & A = B +^ D ) )
assume that
A1: A in B +^ C and
A2: not A in B ; ::_thesis: ex D being Ordinal st
( D in C & A = B +^ D )
consider D being Ordinal such that
A3: A = B +^ D by A2, Th27, ORDINAL1:16;
take D ; ::_thesis: ( D in C & A = B +^ D )
assume ( not D in C or not A = B +^ D ) ; ::_thesis: contradiction
then C c= D by A3, ORDINAL1:16;
hence contradiction by A1, A3, ORDINAL1:5, ORDINAL2:33; ::_thesis: verum
end;
definition
let C be Ordinal;
let fi be Ordinal-Sequence;
funcC +^ fi -> Ordinal-Sequence means :Def1: :: ORDINAL3:def 1
( dom it = dom fi & ( for A being Ordinal st A in dom fi holds
it . A = C +^ (fi . A) ) );
existence
ex b1 being Ordinal-Sequence st
( dom b1 = dom fi & ( for A being Ordinal st A in dom fi holds
b1 . A = C +^ (fi . A) ) )
proof
deffunc H1( Ordinal) -> set = C +^ (fi . $1);
thus ex F being Ordinal-Sequence st
( dom F = dom fi & ( for A being Ordinal st A in dom fi holds
F . A = H1(A) ) ) from ORDINAL2:sch_3(); ::_thesis: verum
end;
uniqueness
for b1, b2 being Ordinal-Sequence st dom b1 = dom fi & ( for A being Ordinal st A in dom fi holds
b1 . A = C +^ (fi . A) ) & dom b2 = dom fi & ( for A being Ordinal st A in dom fi holds
b2 . A = C +^ (fi . A) ) holds
b1 = b2
proof
let f1, f2 be Ordinal-Sequence; ::_thesis: ( dom f1 = dom fi & ( for A being Ordinal st A in dom fi holds
f1 . A = C +^ (fi . A) ) & dom f2 = dom fi & ( for A being Ordinal st A in dom fi holds
f2 . A = C +^ (fi . A) ) implies f1 = f2 )
assume that
A1: dom f1 = dom fi and
A2: for A being Ordinal st A in dom fi holds
f1 . A = C +^ (fi . A) and
A3: dom f2 = dom fi and
A4: for A being Ordinal st A in dom fi holds
f2 . A = C +^ (fi . A) ; ::_thesis: f1 = f2
now__::_thesis:_for_x_being_set_st_x_in_dom_fi_holds_
f1_._x_=_f2_._x
let x be set ; ::_thesis: ( x in dom fi implies f1 . x = f2 . x )
assume A5: x in dom fi ; ::_thesis: f1 . x = f2 . x
then reconsider A = x as Ordinal ;
thus f1 . x = C +^ (fi . A) by A2, A5
.= f2 . x by A4, A5 ; ::_thesis: verum
end;
hence f1 = f2 by A1, A3, FUNCT_1:2; ::_thesis: verum
end;
funcfi +^ C -> Ordinal-Sequence means :: ORDINAL3:def 2
( dom it = dom fi & ( for A being Ordinal st A in dom fi holds
it . A = (fi . A) +^ C ) );
existence
ex b1 being Ordinal-Sequence st
( dom b1 = dom fi & ( for A being Ordinal st A in dom fi holds
b1 . A = (fi . A) +^ C ) )
proof
deffunc H1( Ordinal) -> set = (fi . $1) +^ C;
thus ex F being Ordinal-Sequence st
( dom F = dom fi & ( for A being Ordinal st A in dom fi holds
F . A = H1(A) ) ) from ORDINAL2:sch_3(); ::_thesis: verum
end;
uniqueness
for b1, b2 being Ordinal-Sequence st dom b1 = dom fi & ( for A being Ordinal st A in dom fi holds
b1 . A = (fi . A) +^ C ) & dom b2 = dom fi & ( for A being Ordinal st A in dom fi holds
b2 . A = (fi . A) +^ C ) holds
b1 = b2
proof
let f1, f2 be Ordinal-Sequence; ::_thesis: ( dom f1 = dom fi & ( for A being Ordinal st A in dom fi holds
f1 . A = (fi . A) +^ C ) & dom f2 = dom fi & ( for A being Ordinal st A in dom fi holds
f2 . A = (fi . A) +^ C ) implies f1 = f2 )
assume that
A6: dom f1 = dom fi and
A7: for A being Ordinal st A in dom fi holds
f1 . A = (fi . A) +^ C and
A8: dom f2 = dom fi and
A9: for A being Ordinal st A in dom fi holds
f2 . A = (fi . A) +^ C ; ::_thesis: f1 = f2
now__::_thesis:_for_x_being_set_st_x_in_dom_fi_holds_
f1_._x_=_f2_._x
let x be set ; ::_thesis: ( x in dom fi implies f1 . x = f2 . x )
assume A10: x in dom fi ; ::_thesis: f1 . x = f2 . x
then reconsider A = x as Ordinal ;
thus f1 . x = (fi . A) +^ C by A7, A10
.= f2 . x by A9, A10 ; ::_thesis: verum
end;
hence f1 = f2 by A6, A8, FUNCT_1:2; ::_thesis: verum
end;
funcC *^ fi -> Ordinal-Sequence means :: ORDINAL3:def 3
( dom it = dom fi & ( for A being Ordinal st A in dom fi holds
it . A = C *^ (fi . A) ) );
existence
ex b1 being Ordinal-Sequence st
( dom b1 = dom fi & ( for A being Ordinal st A in dom fi holds
b1 . A = C *^ (fi . A) ) )
proof
deffunc H1( Ordinal) -> set = C *^ (fi . $1);
thus ex F being Ordinal-Sequence st
( dom F = dom fi & ( for A being Ordinal st A in dom fi holds
F . A = H1(A) ) ) from ORDINAL2:sch_3(); ::_thesis: verum
end;
uniqueness
for b1, b2 being Ordinal-Sequence st dom b1 = dom fi & ( for A being Ordinal st A in dom fi holds
b1 . A = C *^ (fi . A) ) & dom b2 = dom fi & ( for A being Ordinal st A in dom fi holds
b2 . A = C *^ (fi . A) ) holds
b1 = b2
proof
let f1, f2 be Ordinal-Sequence; ::_thesis: ( dom f1 = dom fi & ( for A being Ordinal st A in dom fi holds
f1 . A = C *^ (fi . A) ) & dom f2 = dom fi & ( for A being Ordinal st A in dom fi holds
f2 . A = C *^ (fi . A) ) implies f1 = f2 )
assume that
A11: dom f1 = dom fi and
A12: for A being Ordinal st A in dom fi holds
f1 . A = C *^ (fi . A) and
A13: dom f2 = dom fi and
A14: for A being Ordinal st A in dom fi holds
f2 . A = C *^ (fi . A) ; ::_thesis: f1 = f2
now__::_thesis:_for_x_being_set_st_x_in_dom_fi_holds_
f1_._x_=_f2_._x
let x be set ; ::_thesis: ( x in dom fi implies f1 . x = f2 . x )
assume A15: x in dom fi ; ::_thesis: f1 . x = f2 . x
then reconsider A = x as Ordinal ;
thus f1 . x = C *^ (fi . A) by A12, A15
.= f2 . x by A14, A15 ; ::_thesis: verum
end;
hence f1 = f2 by A11, A13, FUNCT_1:2; ::_thesis: verum
end;
funcfi *^ C -> Ordinal-Sequence means :Def4: :: ORDINAL3:def 4
( dom it = dom fi & ( for A being Ordinal st A in dom fi holds
it . A = (fi . A) *^ C ) );
existence
ex b1 being Ordinal-Sequence st
( dom b1 = dom fi & ( for A being Ordinal st A in dom fi holds
b1 . A = (fi . A) *^ C ) )
proof
deffunc H1( Ordinal) -> set = (fi . $1) *^ C;
thus ex F being Ordinal-Sequence st
( dom F = dom fi & ( for A being Ordinal st A in dom fi holds
F . A = H1(A) ) ) from ORDINAL2:sch_3(); ::_thesis: verum
end;
uniqueness
for b1, b2 being Ordinal-Sequence st dom b1 = dom fi & ( for A being Ordinal st A in dom fi holds
b1 . A = (fi . A) *^ C ) & dom b2 = dom fi & ( for A being Ordinal st A in dom fi holds
b2 . A = (fi . A) *^ C ) holds
b1 = b2
proof
let f1, f2 be Ordinal-Sequence; ::_thesis: ( dom f1 = dom fi & ( for A being Ordinal st A in dom fi holds
f1 . A = (fi . A) *^ C ) & dom f2 = dom fi & ( for A being Ordinal st A in dom fi holds
f2 . A = (fi . A) *^ C ) implies f1 = f2 )
assume that
A16: dom f1 = dom fi and
A17: for A being Ordinal st A in dom fi holds
f1 . A = (fi . A) *^ C and
A18: dom f2 = dom fi and
A19: for A being Ordinal st A in dom fi holds
f2 . A = (fi . A) *^ C ; ::_thesis: f1 = f2
now__::_thesis:_for_x_being_set_st_x_in_dom_fi_holds_
f1_._x_=_f2_._x
let x be set ; ::_thesis: ( x in dom fi implies f1 . x = f2 . x )
assume A20: x in dom fi ; ::_thesis: f1 . x = f2 . x
then reconsider A = x as Ordinal ;
thus f1 . x = (fi . A) *^ C by A17, A20
.= f2 . x by A19, A20 ; ::_thesis: verum
end;
hence f1 = f2 by A16, A18, FUNCT_1:2; ::_thesis: verum
end;
end;
:: deftheorem Def1 defines +^ ORDINAL3:def_1_:_
for C being Ordinal
for fi, b3 being Ordinal-Sequence holds
( b3 = C +^ fi iff ( dom b3 = dom fi & ( for A being Ordinal st A in dom fi holds
b3 . A = C +^ (fi . A) ) ) );
:: deftheorem defines +^ ORDINAL3:def_2_:_
for C being Ordinal
for fi, b3 being Ordinal-Sequence holds
( b3 = fi +^ C iff ( dom b3 = dom fi & ( for A being Ordinal st A in dom fi holds
b3 . A = (fi . A) +^ C ) ) );
:: deftheorem defines *^ ORDINAL3:def_3_:_
for C being Ordinal
for fi, b3 being Ordinal-Sequence holds
( b3 = C *^ fi iff ( dom b3 = dom fi & ( for A being Ordinal st A in dom fi holds
b3 . A = C *^ (fi . A) ) ) );
:: deftheorem Def4 defines *^ ORDINAL3:def_4_:_
for C being Ordinal
for fi, b3 being Ordinal-Sequence holds
( b3 = fi *^ C iff ( dom b3 = dom fi & ( for A being Ordinal st A in dom fi holds
b3 . A = (fi . A) *^ C ) ) );
theorem Th39: :: ORDINAL3:39
for fi, psi being Ordinal-Sequence
for C being Ordinal st {} <> dom fi & dom fi = dom psi & ( for A, B being Ordinal st A in dom fi & B = fi . A holds
psi . A = C +^ B ) holds
sup psi = C +^ (sup fi)
proof
let fi, psi be Ordinal-Sequence; ::_thesis: for C being Ordinal st {} <> dom fi & dom fi = dom psi & ( for A, B being Ordinal st A in dom fi & B = fi . A holds
psi . A = C +^ B ) holds
sup psi = C +^ (sup fi)
let C be Ordinal; ::_thesis: ( {} <> dom fi & dom fi = dom psi & ( for A, B being Ordinal st A in dom fi & B = fi . A holds
psi . A = C +^ B ) implies sup psi = C +^ (sup fi) )
assume that
A1: {} <> dom fi and
A2: dom fi = dom psi and
A3: for A, B being Ordinal st A in dom fi & B = fi . A holds
psi . A = C +^ B ; ::_thesis: sup psi = C +^ (sup fi)
set z = the Element of dom fi;
reconsider z9 = fi . the Element of dom fi as Ordinal ;
A4: C +^ (sup (rng fi)) c= sup (rng psi)
proof
let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in C +^ (sup (rng fi)) or x in sup (rng psi) )
assume A5: x in C +^ (sup (rng fi)) ; ::_thesis: x in sup (rng psi)
then reconsider A = x as Ordinal ;
A6: now__::_thesis:_(_ex_B_being_Ordinal_st_
(_B_in_sup_(rng_fi)_&_A_=_C_+^_B_)_implies_A_in_sup_(rng_psi)_)
given B being Ordinal such that A7: B in sup (rng fi) and
A8: A = C +^ B ; ::_thesis: A in sup (rng psi)
consider D being Ordinal such that
A9: D in rng fi and
A10: B c= D by A7, ORDINAL2:21;
consider x being set such that
A11: x in dom fi and
A12: D = fi . x by A9, FUNCT_1:def_3;
reconsider x = x as Ordinal by A11;
psi . x = C +^ D by A3, A11, A12;
then C +^ D in rng psi by A2, A11, FUNCT_1:def_3;
then C +^ D in sup (rng psi) by ORDINAL2:19;
hence A in sup (rng psi) by A8, A10, ORDINAL1:12, ORDINAL2:33; ::_thesis: verum
end;
now__::_thesis:_(_A_in_C_implies_A_in_sup_(rng_psi)_)
C +^ z9 = psi . the Element of dom fi by A1, A3;
then C +^ z9 in rng psi by A1, A2, FUNCT_1:def_3;
then A13: C +^ z9 in sup (rng psi) by ORDINAL2:19;
assume A14: A in C ; ::_thesis: A in sup (rng psi)
C c= C +^ z9 by Th24;
then A c= C +^ z9 by A14, ORDINAL1:def_2;
hence A in sup (rng psi) by A13, ORDINAL1:12; ::_thesis: verum
end;
hence x in sup (rng psi) by A5, A6, Th38; ::_thesis: verum
end;
sup (rng psi) c= C +^ (sup (rng fi))
proof
let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in sup (rng psi) or x in C +^ (sup (rng fi)) )
assume A15: x in sup (rng psi) ; ::_thesis: x in C +^ (sup (rng fi))
then reconsider A = x as Ordinal ;
consider B being Ordinal such that
A16: B in rng psi and
A17: A c= B by A15, ORDINAL2:21;
consider y being set such that
A18: y in dom psi and
A19: B = psi . y by A16, FUNCT_1:def_3;
reconsider y = y as Ordinal by A18;
reconsider y9 = fi . y as Ordinal ;
y9 in rng fi by A2, A18, FUNCT_1:def_3;
then A20: y9 in sup (rng fi) by ORDINAL2:19;
B = C +^ y9 by A2, A3, A18, A19;
then B in C +^ (sup (rng fi)) by A20, ORDINAL2:32;
hence x in C +^ (sup (rng fi)) by A17, ORDINAL1:12; ::_thesis: verum
end;
hence sup psi = C +^ (sup fi) by A4, XBOOLE_0:def_10; ::_thesis: verum
end;
theorem Th40: :: ORDINAL3:40
for A, B being Ordinal st A is limit_ordinal holds
A *^ B is limit_ordinal
proof
let A, B be Ordinal; ::_thesis: ( A is limit_ordinal implies A *^ B is limit_ordinal )
A1: now__::_thesis:_(_A_<>_{}_&_A_is_limit_ordinal_&_A_is_limit_ordinal_implies_A_*^_B_is_limit_ordinal_)
deffunc H1( Ordinal) -> set = $1 *^ B;
assume that
A2: A <> {} and
A3: A is limit_ordinal ; ::_thesis: ( A is limit_ordinal implies A *^ B is limit_ordinal )
consider fi being Ordinal-Sequence such that
A4: ( dom fi = A & ( for C being Ordinal st C in A holds
fi . C = H1(C) ) ) from ORDINAL2:sch_3();
A5: A *^ B = union (sup fi) by A2, A3, A4, ORDINAL2:37
.= union (sup (rng fi)) ;
for C being Ordinal st C in A *^ B holds
succ C in A *^ B
proof
let C be Ordinal; ::_thesis: ( C in A *^ B implies succ C in A *^ B )
assume A6: C in A *^ B ; ::_thesis: succ C in A *^ B
then consider X being set such that
A7: C in X and
A8: X in sup (rng fi) by A5, TARSKI:def_4;
reconsider X = X as Ordinal by A8;
consider D being Ordinal such that
A9: D in rng fi and
A10: X c= D by A8, ORDINAL2:21;
consider x being set such that
A11: x in dom fi and
A12: D = fi . x by A9, FUNCT_1:def_3;
succ C c= D by A7, A10, ORDINAL1:21;
then A13: succ C in succ D by ORDINAL1:22;
reconsider x = x as Ordinal by A11;
A14: succ x in dom fi by A3, A4, A11, ORDINAL1:28;
then fi . (succ x) = (succ x) *^ B by A4
.= (x *^ B) +^ B by ORDINAL2:36 ;
then (x *^ B) +^ B in rng fi by A14, FUNCT_1:def_3;
then A15: (x *^ B) +^ B in sup (rng fi) by ORDINAL2:19;
A16: (x *^ B) +^ (succ {}) = succ ((x *^ B) +^ {}) by ORDINAL2:28;
B <> {} by A6, ORDINAL2:38;
then {} in B by Th8;
then A17: succ {} c= B by ORDINAL1:21;
A18: (x *^ B) +^ {} = x *^ B by ORDINAL2:27;
x *^ B = fi . x by A4, A11;
then succ D in sup (rng fi) by A12, A17, A16, A18, A15, ORDINAL1:12, ORDINAL2:33;
hence succ C in A *^ B by A5, A13, TARSKI:def_4; ::_thesis: verum
end;
hence ( A is limit_ordinal implies A *^ B is limit_ordinal ) by ORDINAL1:28; ::_thesis: verum
end;
assume A is limit_ordinal ; ::_thesis: A *^ B is limit_ordinal
hence A *^ B is limit_ordinal by A1, ORDINAL2:35; ::_thesis: verum
end;
theorem Th41: :: ORDINAL3:41
for A, B, C being Ordinal st A in B *^ C & B is limit_ordinal holds
ex D being Ordinal st
( D in B & A in D *^ C )
proof
let A, B, C be Ordinal; ::_thesis: ( A in B *^ C & B is limit_ordinal implies ex D being Ordinal st
( D in B & A in D *^ C ) )
assume that
A1: A in B *^ C and
A2: B is limit_ordinal ; ::_thesis: ex D being Ordinal st
( D in B & A in D *^ C )
deffunc H1( Ordinal) -> set = $1 *^ C;
consider fi being Ordinal-Sequence such that
A3: ( dom fi = B & ( for D being Ordinal st D in B holds
fi . D = H1(D) ) ) from ORDINAL2:sch_3();
B <> {} by A1, ORDINAL2:35;
then B *^ C = union (sup fi) by A2, A3, ORDINAL2:37
.= union (sup (rng fi)) ;
then consider X being set such that
A4: A in X and
A5: X in sup (rng fi) by A1, TARSKI:def_4;
reconsider X = X as Ordinal by A5;
consider D being Ordinal such that
A6: D in rng fi and
A7: X c= D by A5, ORDINAL2:21;
consider x being set such that
A8: x in dom fi and
A9: D = fi . x by A6, FUNCT_1:def_3;
reconsider x = x as Ordinal by A8;
take E = succ x; ::_thesis: ( E in B & A in E *^ C )
thus E in B by A2, A3, A8, ORDINAL1:28; ::_thesis: A in E *^ C
A10: D +^ {} = D by ORDINAL2:27;
A11: C <> {} by A1, ORDINAL2:38;
E *^ C = (x *^ C) +^ C by ORDINAL2:36
.= D +^ C by A3, A8, A9 ;
then D in E *^ C by A11, A10, Th8, ORDINAL2:32;
hence A in E *^ C by A4, A7, ORDINAL1:10; ::_thesis: verum
end;
theorem Th42: :: ORDINAL3:42
for fi, psi being Ordinal-Sequence
for C being Ordinal st dom fi = dom psi & C <> {} & sup fi is limit_ordinal & ( for A, B being Ordinal st A in dom fi & B = fi . A holds
psi . A = B *^ C ) holds
sup psi = (sup fi) *^ C
proof
let fi, psi be Ordinal-Sequence; ::_thesis: for C being Ordinal st dom fi = dom psi & C <> {} & sup fi is limit_ordinal & ( for A, B being Ordinal st A in dom fi & B = fi . A holds
psi . A = B *^ C ) holds
sup psi = (sup fi) *^ C
let C be Ordinal; ::_thesis: ( dom fi = dom psi & C <> {} & sup fi is limit_ordinal & ( for A, B being Ordinal st A in dom fi & B = fi . A holds
psi . A = B *^ C ) implies sup psi = (sup fi) *^ C )
assume that
A1: dom fi = dom psi and
A2: C <> {} and
A3: sup fi is limit_ordinal and
A4: for A, B being Ordinal st A in dom fi & B = fi . A holds
psi . A = B *^ C ; ::_thesis: sup psi = (sup fi) *^ C
A5: (sup (rng fi)) *^ C c= sup (rng psi)
proof
let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in (sup (rng fi)) *^ C or x in sup (rng psi) )
assume A6: x in (sup (rng fi)) *^ C ; ::_thesis: x in sup (rng psi)
then reconsider A = x as Ordinal ;
consider B being Ordinal such that
A7: B in sup (rng fi) and
A8: A in B *^ C by A3, A6, Th41;
consider D being Ordinal such that
A9: D in rng fi and
A10: B c= D by A7, ORDINAL2:21;
consider y being set such that
A11: y in dom fi and
A12: D = fi . y by A9, FUNCT_1:def_3;
reconsider y = y as Ordinal by A11;
reconsider y9 = psi . y as Ordinal ;
A13: y9 in rng psi by A1, A11, FUNCT_1:def_3;
y9 = D *^ C by A4, A11, A12;
then A14: D *^ C in sup (rng psi) by A13, ORDINAL2:19;
B *^ C c= D *^ C by A10, ORDINAL2:41;
hence x in sup (rng psi) by A8, A14, ORDINAL1:10; ::_thesis: verum
end;
sup (rng psi) c= (sup (rng fi)) *^ C
proof
let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in sup (rng psi) or x in (sup (rng fi)) *^ C )
assume A15: x in sup (rng psi) ; ::_thesis: x in (sup (rng fi)) *^ C
then reconsider A = x as Ordinal ;
consider B being Ordinal such that
A16: B in rng psi and
A17: A c= B by A15, ORDINAL2:21;
consider y being set such that
A18: y in dom psi and
A19: B = psi . y by A16, FUNCT_1:def_3;
reconsider y = y as Ordinal by A18;
reconsider y9 = fi . y as Ordinal ;
y9 in rng fi by A1, A18, FUNCT_1:def_3;
then A20: y9 in sup (rng fi) by ORDINAL2:19;
B = y9 *^ C by A1, A4, A18, A19;
then B in (sup (rng fi)) *^ C by A2, A20, ORDINAL2:40;
hence x in (sup (rng fi)) *^ C by A17, ORDINAL1:12; ::_thesis: verum
end;
hence sup psi = (sup fi) *^ C by A5, XBOOLE_0:def_10; ::_thesis: verum
end;
theorem Th43: :: ORDINAL3:43
for fi being Ordinal-Sequence
for C being Ordinal st {} <> dom fi holds
sup (C +^ fi) = C +^ (sup fi)
proof
let fi be Ordinal-Sequence; ::_thesis: for C being Ordinal st {} <> dom fi holds
sup (C +^ fi) = C +^ (sup fi)
let C be Ordinal; ::_thesis: ( {} <> dom fi implies sup (C +^ fi) = C +^ (sup fi) )
A1: for A, B being Ordinal st A in dom fi & B = fi . A holds
(C +^ fi) . A = C +^ B by Def1;
dom (C +^ fi) = dom fi by Def1;
hence ( {} <> dom fi implies sup (C +^ fi) = C +^ (sup fi) ) by A1, Th39; ::_thesis: verum
end;
theorem Th44: :: ORDINAL3:44
for fi being Ordinal-Sequence
for C being Ordinal st {} <> dom fi & C <> {} & sup fi is limit_ordinal holds
sup (fi *^ C) = (sup fi) *^ C
proof
let fi be Ordinal-Sequence; ::_thesis: for C being Ordinal st {} <> dom fi & C <> {} & sup fi is limit_ordinal holds
sup (fi *^ C) = (sup fi) *^ C
let C be Ordinal; ::_thesis: ( {} <> dom fi & C <> {} & sup fi is limit_ordinal implies sup (fi *^ C) = (sup fi) *^ C )
A1: for A, B being Ordinal st A in dom fi & B = fi . A holds
(fi *^ C) . A = B *^ C by Def4;
dom (fi *^ C) = dom fi by Def4;
hence ( {} <> dom fi & C <> {} & sup fi is limit_ordinal implies sup (fi *^ C) = (sup fi) *^ C ) by A1, Th42; ::_thesis: verum
end;
theorem Th45: :: ORDINAL3:45
for B, A being Ordinal st B <> {} holds
union (A +^ B) = A +^ (union B)
proof
let B, A be Ordinal; ::_thesis: ( B <> {} implies union (A +^ B) = A +^ (union B) )
assume A1: B <> {} ; ::_thesis: union (A +^ B) = A +^ (union B)
A2: now__::_thesis:_(_(_for_C_being_Ordinal_holds_not_B_=_succ_C_)_implies_union_(A_+^_B)_=_A_+^_(union_B)_)
assume for C being Ordinal holds not B = succ C ; ::_thesis: union (A +^ B) = A +^ (union B)
then A3: B is limit_ordinal by ORDINAL1:29;
then A +^ B is limit_ordinal by A1, Th29;
then union (A +^ B) = A +^ B by ORDINAL1:def_6;
hence union (A +^ B) = A +^ (union B) by A3, ORDINAL1:def_6; ::_thesis: verum
end;
now__::_thesis:_(_ex_C_being_Ordinal_st_B_=_succ_C_implies_union_(A_+^_B)_=_A_+^_(union_B)_)
given C being Ordinal such that A4: B = succ C ; ::_thesis: union (A +^ B) = A +^ (union B)
thus union (A +^ B) = union (succ (A +^ C)) by A4, ORDINAL2:28
.= A +^ C by ORDINAL2:2
.= A +^ (union B) by A4, ORDINAL2:2 ; ::_thesis: verum
end;
hence union (A +^ B) = A +^ (union B) by A2; ::_thesis: verum
end;
theorem Th46: :: ORDINAL3:46
for A, B, C being Ordinal holds (A +^ B) *^ C = (A *^ C) +^ (B *^ C)
proof
let A, B, C be Ordinal; ::_thesis: (A +^ B) *^ C = (A *^ C) +^ (B *^ C)
defpred S1[ Ordinal] means (A +^ $1) *^ C = (A *^ C) +^ ($1 *^ C);
A1: for B being Ordinal st S1[B] holds
S1[ succ B]
proof
let B be Ordinal; ::_thesis: ( S1[B] implies S1[ succ B] )
assume A2: (A +^ B) *^ C = (A *^ C) +^ (B *^ C) ; ::_thesis: S1[ succ B]
thus (A +^ (succ B)) *^ C = (succ (A +^ B)) *^ C by ORDINAL2:28
.= ((A *^ C) +^ (B *^ C)) +^ C by A2, ORDINAL2:36
.= (A *^ C) +^ ((B *^ C) +^ C) by Th30
.= (A *^ C) +^ ((succ B) *^ C) by ORDINAL2:36 ; ::_thesis: verum
end;
A3: for B being Ordinal st B <> {} & B is limit_ordinal & ( for D being Ordinal st D in B holds
S1[D] ) holds
S1[B]
proof
deffunc H1( Ordinal) -> set = A +^ $1;
let B be Ordinal; ::_thesis: ( B <> {} & B is limit_ordinal & ( for D being Ordinal st D in B holds
S1[D] ) implies S1[B] )
assume that
A4: B <> {} and
A5: B is limit_ordinal and
A6: for D being Ordinal st D in B holds
S1[D] ; ::_thesis: S1[B]
consider fi being Ordinal-Sequence such that
A7: ( dom fi = B & ( for D being Ordinal st D in B holds
fi . D = H1(D) ) ) from ORDINAL2:sch_3();
A +^ B is limit_ordinal by A4, A5, Th29;
then A8: (A +^ B) *^ C is limit_ordinal by Th40;
A9: dom (fi *^ C) = dom fi by Def4;
A10: now__::_thesis:_(_C_=_{}_implies_S1[B]_)
assume A11: C = {} ; ::_thesis: S1[B]
then A12: A *^ C = {} by ORDINAL2:38;
A13: B *^ C = {} by A11, ORDINAL2:38;
(A +^ B) *^ C = {} by A11, ORDINAL2:38;
hence S1[B] by A12, A13, ORDINAL2:27; ::_thesis: verum
end;
deffunc H2( Ordinal) -> set = $1 *^ C;
consider psi being Ordinal-Sequence such that
A14: ( dom psi = B & ( for D being Ordinal st D in B holds
psi . D = H2(D) ) ) from ORDINAL2:sch_3();
A15: now__::_thesis:_for_x_being_set_st_x_in_B_holds_
(fi_*^_C)_._x_=_((A_*^_C)_+^_psi)_._x
let x be set ; ::_thesis: ( x in B implies (fi *^ C) . x = ((A *^ C) +^ psi) . x )
assume A16: x in B ; ::_thesis: (fi *^ C) . x = ((A *^ C) +^ psi) . x
then reconsider k = x as Ordinal ;
reconsider m = fi . k, n = psi . k as Ordinal ;
thus (fi *^ C) . x = m *^ C by A7, A16, Def4
.= (A +^ k) *^ C by A7, A16
.= (A *^ C) +^ (k *^ C) by A6, A16
.= (A *^ C) +^ n by A14, A16
.= ((A *^ C) +^ psi) . x by A14, A16, Def1 ; ::_thesis: verum
end;
reconsider k = psi . {} as Ordinal ;
{} in B by A4, Th8;
then k in rng psi by A14, FUNCT_1:def_3;
then A17: k in sup (rng psi) by ORDINAL2:19;
dom ((A *^ C) +^ psi) = dom psi by Def1;
then A18: fi *^ C = (A *^ C) +^ psi by A7, A14, A9, A15, FUNCT_1:2;
A19: A +^ B = sup fi by A4, A5, A7, ORDINAL2:29;
now__::_thesis:_(_C_<>_{}_implies_(A_+^_B)_*^_C_=_(A_*^_C)_+^_(B_*^_C)_)
assume C <> {} ; ::_thesis: (A +^ B) *^ C = (A *^ C) +^ (B *^ C)
then (A +^ B) *^ C = sup (fi *^ C) by A4, A5, A7, A19, Th29, Th44
.= (A *^ C) +^ (sup psi) by A4, A14, A18, Th43 ;
hence (A +^ B) *^ C = union ((A *^ C) +^ (sup psi)) by A8, ORDINAL1:def_6
.= (A *^ C) +^ (union (sup psi)) by A17, Th45
.= (A *^ C) +^ (B *^ C) by A4, A5, A14, ORDINAL2:37 ;
::_thesis: verum
end;
hence S1[B] by A10; ::_thesis: verum
end;
(A +^ {}) *^ C = A *^ C by ORDINAL2:27
.= (A *^ C) +^ {} by ORDINAL2:27
.= (A *^ C) +^ ({} *^ C) by ORDINAL2:35 ;
then A20: S1[ {} ] ;
for B being Ordinal holds S1[B] from ORDINAL2:sch_1(A20, A1, A3);
hence (A +^ B) *^ C = (A *^ C) +^ (B *^ C) ; ::_thesis: verum
end;
theorem Th47: :: ORDINAL3:47
for A, B being Ordinal st A <> {} holds
ex C, D being Ordinal st
( B = (C *^ A) +^ D & D in A )
proof
let A, B be Ordinal; ::_thesis: ( A <> {} implies ex C, D being Ordinal st
( B = (C *^ A) +^ D & D in A ) )
defpred S1[ Ordinal] means ex C, D being Ordinal st
( $1 = (C *^ A) +^ D & D in A );
assume A1: A <> {} ; ::_thesis: ex C, D being Ordinal st
( B = (C *^ A) +^ D & D in A )
A2: for B being Ordinal st B <> {} & B is limit_ordinal & ( for A being Ordinal st A in B holds
S1[A] ) holds
S1[B]
proof
{} in A by A1, Th8;
then A3: succ {} c= A by ORDINAL1:21;
let B be Ordinal; ::_thesis: ( B <> {} & B is limit_ordinal & ( for A being Ordinal st A in B holds
S1[A] ) implies S1[B] )
assume that
B <> {} and
A4: B is limit_ordinal and
for A being Ordinal st A in B holds
S1[A] ; ::_thesis: S1[B]
defpred S2[ Ordinal] means ( $1 in B & B in $1 *^ A );
B *^ 1 = B by ORDINAL2:39;
then A5: B c= B *^ A by A3, ORDINAL2:42;
A6: now__::_thesis:_(_B_<>_B_*^_A_implies_S1[B]_)
assume B <> B *^ A ; ::_thesis: S1[B]
then B c< B *^ A by A5, XBOOLE_0:def_8;
then B in B *^ A by ORDINAL1:11;
then A7: ex C being Ordinal st S2[C] by A4, Th41;
consider C being Ordinal such that
A8: S2[C] and
A9: for C1 being Ordinal st S2[C1] holds
C c= C1 from ORDINAL1:sch_1(A7);
now__::_thesis:_not_C_is_limit_ordinal
assume C is limit_ordinal ; ::_thesis: contradiction
then consider C1 being Ordinal such that
A10: C1 in C and
A11: B in C1 *^ A by A8, Th41;
C1 in B by A8, A10, ORDINAL1:10;
hence contradiction by A9, A10, A11, ORDINAL1:5; ::_thesis: verum
end;
then consider C1 being Ordinal such that
A12: C = succ C1 by ORDINAL1:29;
A13: C1 in C by A12, ORDINAL1:6;
then C1 in B by A8, ORDINAL1:10;
then not B in C1 *^ A by A9, A13, ORDINAL1:5;
then consider D being Ordinal such that
A14: B = (C1 *^ A) +^ D by Th27, ORDINAL1:16;
thus S1[B] ::_thesis: verum
proof
take C1 ; ::_thesis: ex D being Ordinal st
( B = (C1 *^ A) +^ D & D in A )
take D ; ::_thesis: ( B = (C1 *^ A) +^ D & D in A )
thus B = (C1 *^ A) +^ D by A14; ::_thesis: D in A
(C1 *^ A) +^ D in (C1 *^ A) +^ A by A8, A12, A14, ORDINAL2:36;
hence D in A by Th22; ::_thesis: verum
end;
end;
( B = B *^ A implies ( B = (B *^ A) +^ {} & {} in A ) ) by A1, Th8, ORDINAL2:27;
hence S1[B] by A6; ::_thesis: verum
end;
A15: for B being Ordinal st S1[B] holds
S1[ succ B]
proof
let B be Ordinal; ::_thesis: ( S1[B] implies S1[ succ B] )
given C, D being Ordinal such that A16: B = (C *^ A) +^ D and
A17: D in A ; ::_thesis: S1[ succ B]
A18: now__::_thesis:_(_not_succ_D_in_A_implies_ex_C1_being_set_ex_D1_being_set_st_
(_(C1_*^_A)_+^_D1_=_succ_B_&_D1_in_A_)_)
assume not succ D in A ; ::_thesis: ex C1 being set ex D1 being set st
( (C1 *^ A) +^ D1 = succ B & D1 in A )
then A19: A c= succ D by ORDINAL1:16;
take C1 = succ C; ::_thesis: ex D1 being set st
( (C1 *^ A) +^ D1 = succ B & D1 in A )
take D1 = {} ; ::_thesis: ( (C1 *^ A) +^ D1 = succ B & D1 in A )
succ D c= A by A17, ORDINAL1:21;
then A20: A = succ D by A19, XBOOLE_0:def_10;
thus (C1 *^ A) +^ D1 = C1 *^ A by ORDINAL2:27
.= (C *^ A) +^ A by ORDINAL2:36
.= succ B by A16, A20, ORDINAL2:28 ; ::_thesis: D1 in A
thus D1 in A by A1, Th8; ::_thesis: verum
end;
now__::_thesis:_(_succ_D_in_A_implies_ex_C1_being_Ordinal_ex_D1_being_set_st_
(_(C1_*^_A)_+^_D1_=_succ_B_&_D1_in_A_)_)
assume A21: succ D in A ; ::_thesis: ex C1 being Ordinal ex D1 being set st
( (C1 *^ A) +^ D1 = succ B & D1 in A )
take C1 = C; ::_thesis: ex D1 being set st
( (C1 *^ A) +^ D1 = succ B & D1 in A )
take D1 = succ D; ::_thesis: ( (C1 *^ A) +^ D1 = succ B & D1 in A )
thus (C1 *^ A) +^ D1 = succ B by A16, ORDINAL2:28; ::_thesis: D1 in A
thus D1 in A by A21; ::_thesis: verum
end;
hence S1[ succ B] by A18; ::_thesis: verum
end;
A22: S1[ {} ]
proof
take C = {} ; ::_thesis: ex D being Ordinal st
( {} = (C *^ A) +^ D & D in A )
take D = {} ; ::_thesis: ( {} = (C *^ A) +^ D & D in A )
thus {} = {} +^ {} by ORDINAL2:27
.= (C *^ A) +^ D by ORDINAL2:35 ; ::_thesis: D in A
thus D in A by A1, Th8; ::_thesis: verum
end;
for B being Ordinal holds S1[B] from ORDINAL2:sch_1(A22, A15, A2);
hence ex C, D being Ordinal st
( B = (C *^ A) +^ D & D in A ) ; ::_thesis: verum
end;
theorem Th48: :: ORDINAL3:48
for A, C1, D1, C2, D2 being Ordinal st (C1 *^ A) +^ D1 = (C2 *^ A) +^ D2 & D1 in A & D2 in A holds
( C1 = C2 & D1 = D2 )
proof
let A be Ordinal; ::_thesis: for C1, D1, C2, D2 being Ordinal st (C1 *^ A) +^ D1 = (C2 *^ A) +^ D2 & D1 in A & D2 in A holds
( C1 = C2 & D1 = D2 )
let C1, D1, C2, D2 be Ordinal; ::_thesis: ( (C1 *^ A) +^ D1 = (C2 *^ A) +^ D2 & D1 in A & D2 in A implies ( C1 = C2 & D1 = D2 ) )
assume that
A1: (C1 *^ A) +^ D1 = (C2 *^ A) +^ D2 and
A2: D1 in A and
A3: D2 in A ; ::_thesis: ( C1 = C2 & D1 = D2 )
set B = (C1 *^ A) +^ D1;
A4: now__::_thesis:_not_C2_in_C1
assume C2 in C1 ; ::_thesis: contradiction
then consider C being Ordinal such that
A5: C1 = C2 +^ C and
A6: C <> {} by Th28;
(C1 *^ A) +^ D1 = ((C2 *^ A) +^ (C *^ A)) +^ D1 by A5, Th46
.= (C2 *^ A) +^ ((C *^ A) +^ D1) by Th30 ;
then A7: D2 = (C *^ A) +^ D1 by A1, Th21;
A8: C *^ A c= (C *^ A) +^ D1 by Th24;
A c= C *^ A by A6, Th36;
hence contradiction by A3, A7, A8, ORDINAL1:5; ::_thesis: verum
end;
now__::_thesis:_not_C1_in_C2
assume C1 in C2 ; ::_thesis: contradiction
then consider C being Ordinal such that
A9: C2 = C1 +^ C and
A10: C <> {} by Th28;
(C1 *^ A) +^ D1 = ((C1 *^ A) +^ (C *^ A)) +^ D2 by A1, A9, Th46
.= (C1 *^ A) +^ ((C *^ A) +^ D2) by Th30 ;
then A11: D1 = (C *^ A) +^ D2 by Th21;
A12: C *^ A c= (C *^ A) +^ D2 by Th24;
A c= C *^ A by A10, Th36;
hence contradiction by A2, A11, A12, ORDINAL1:5; ::_thesis: verum
end;
hence C1 = C2 by A4, ORDINAL1:14; ::_thesis: D1 = D2
hence D1 = D2 by A1, Th21; ::_thesis: verum
end;
theorem Th49: :: ORDINAL3:49
for B, A being Ordinal st 1 in B & A <> {} & A is limit_ordinal holds
for fi being Ordinal-Sequence st dom fi = A & ( for C being Ordinal st C in A holds
fi . C = C *^ B ) holds
A *^ B = sup fi
proof
let B, A be Ordinal; ::_thesis: ( 1 in B & A <> {} & A is limit_ordinal implies for fi being Ordinal-Sequence st dom fi = A & ( for C being Ordinal st C in A holds
fi . C = C *^ B ) holds
A *^ B = sup fi )
assume that
A1: 1 in B and
A2: A <> {} and
A3: A is limit_ordinal ; ::_thesis: for fi being Ordinal-Sequence st dom fi = A & ( for C being Ordinal st C in A holds
fi . C = C *^ B ) holds
A *^ B = sup fi
let fi be Ordinal-Sequence; ::_thesis: ( dom fi = A & ( for C being Ordinal st C in A holds
fi . C = C *^ B ) implies A *^ B = sup fi )
assume that
A4: dom fi = A and
A5: for C being Ordinal st C in A holds
fi . C = C *^ B ; ::_thesis: A *^ B = sup fi
now__::_thesis:_for_C_being_Ordinal_holds_not_sup_fi_=_succ_C
given C being Ordinal such that A6: sup fi = succ C ; ::_thesis: contradiction
consider D being Ordinal such that
A7: D in rng fi and
A8: C c= D by A6, ORDINAL1:6, ORDINAL2:21;
D in sup fi by A7, ORDINAL2:19;
then A9: succ D c= succ C by A6, ORDINAL1:21;
succ C c= succ D by A8, ORDINAL2:1;
then succ C = succ D by A9, XBOOLE_0:def_10;
then C = D by ORDINAL1:7;
then consider x being set such that
A10: x in dom fi and
A11: C = fi . x by A7, FUNCT_1:def_3;
reconsider x = x as Ordinal by A10;
A12: C = x *^ B by A4, A5, A10, A11;
C +^ 1 in C +^ B by A1, ORDINAL2:32;
then A13: sup fi in C +^ B by A6, ORDINAL2:31;
A14: (succ x) *^ B = (x *^ B) +^ B by ORDINAL2:36;
A15: succ x in dom fi by A3, A4, A10, ORDINAL1:28;
then fi . (succ x) = (succ x) *^ B by A4, A5;
then C +^ B in rng fi by A15, A12, A14, FUNCT_1:def_3;
hence contradiction by A13, ORDINAL2:19; ::_thesis: verum
end;
then A16: sup fi is limit_ordinal by ORDINAL1:29;
A *^ B = union (sup fi) by A2, A3, A4, A5, ORDINAL2:37;
hence A *^ B = sup fi by A16, ORDINAL1:def_6; ::_thesis: verum
end;
theorem :: ORDINAL3:50
for A, B, C being Ordinal holds (A *^ B) *^ C = A *^ (B *^ C)
proof
let A, B, C be Ordinal; ::_thesis: (A *^ B) *^ C = A *^ (B *^ C)
defpred S1[ Ordinal] means ($1 *^ B) *^ C = $1 *^ (B *^ C);
A1: {} *^ C = {} by ORDINAL2:35;
A2: for A being Ordinal st S1[A] holds
S1[ succ A]
proof
let A be Ordinal; ::_thesis: ( S1[A] implies S1[ succ A] )
assume A3: (A *^ B) *^ C = A *^ (B *^ C) ; ::_thesis: S1[ succ A]
thus ((succ A) *^ B) *^ C = ((A *^ B) +^ B) *^ C by ORDINAL2:36
.= (A *^ (B *^ C)) +^ (B *^ C) by A3, Th46
.= (A *^ (B *^ C)) +^ (1 *^ (B *^ C)) by ORDINAL2:39
.= (A +^ 1) *^ (B *^ C) by Th46
.= (succ A) *^ (B *^ C) by ORDINAL2:31 ; ::_thesis: verum
end;
A4: for A being Ordinal st A <> {} & A is limit_ordinal & ( for D being Ordinal st D in A holds
S1[D] ) holds
S1[A]
proof
let A be Ordinal; ::_thesis: ( A <> {} & A is limit_ordinal & ( for D being Ordinal st D in A holds
S1[D] ) implies S1[A] )
assume that
A5: A <> {} and
A6: A is limit_ordinal and
A7: for D being Ordinal st D in A holds
(D *^ B) *^ C = D *^ (B *^ C) ; ::_thesis: S1[A]
A8: now__::_thesis:_(_1_in_B_&_1_in_C_implies_S1[A]_)
deffunc H1( Ordinal) -> set = $1 *^ B;
assume that
A9: 1 in B and
A10: 1 in C ; ::_thesis: S1[A]
consider fi being Ordinal-Sequence such that
A11: ( dom fi = A & ( for D being Ordinal st D in A holds
fi . D = H1(D) ) ) from ORDINAL2:sch_3();
A12: ( dom (fi *^ C) = A & ( for D being Ordinal st D in A holds
(fi *^ C) . D = D *^ (B *^ C) ) )
proof
thus dom (fi *^ C) = A by A11, Def4; ::_thesis: for D being Ordinal st D in A holds
(fi *^ C) . D = D *^ (B *^ C)
let D be Ordinal; ::_thesis: ( D in A implies (fi *^ C) . D = D *^ (B *^ C) )
assume A13: D in A ; ::_thesis: (fi *^ C) . D = D *^ (B *^ C)
then A14: fi . D = D *^ B by A11;
(fi *^ C) . D = (fi . D) *^ C by A11, A13, Def4;
hence (fi *^ C) . D = D *^ (B *^ C) by A7, A13, A14; ::_thesis: verum
end;
1 = 1 *^ 1 by ORDINAL2:39;
then 1 in B *^ C by A9, A10, Th19;
then A15: A *^ (B *^ C) = sup (fi *^ C) by A5, A6, A12, Th49;
A *^ B = sup fi by A5, A6, A9, A11, Th49;
hence S1[A] by A5, A6, A10, A11, A15, Th40, Th44; ::_thesis: verum
end;
now__::_thesis:_(_(_not_1_in_B_or_not_1_in_C_)_implies_S1[A]_)
assume ( not 1 in B or not 1 in C ) ; ::_thesis: S1[A]
then A16: ( B = {} or B = 1 or C = {} or C = 1 ) by Th16, ORDINAL1:16;
A17: {} *^ C = {} by ORDINAL2:35;
A18: (A *^ B) *^ 1 = A *^ B by ORDINAL2:39;
A19: (A *^ B) *^ {} = {} by ORDINAL2:38;
A20: A *^ 1 = A by ORDINAL2:39;
A *^ {} = {} by ORDINAL2:38;
hence S1[A] by A16, A17, A20, A19, A18, ORDINAL2:38, ORDINAL2:39; ::_thesis: verum
end;
hence S1[A] by A8; ::_thesis: verum
end;
{} *^ B = {} by ORDINAL2:35;
then A21: S1[ {} ] by A1, ORDINAL2:35;
for A being Ordinal holds S1[A] from ORDINAL2:sch_1(A21, A2, A4);
hence (A *^ B) *^ C = A *^ (B *^ C) ; ::_thesis: verum
end;
definition
let A, B be Ordinal;
funcA -^ B -> Ordinal means :Def5: :: ORDINAL3:def 5
A = B +^ it if B c= A
otherwise it = {} ;
existence
( ( B c= A implies ex b1 being Ordinal st A = B +^ b1 ) & ( not B c= A implies ex b1 being Ordinal st b1 = {} ) ) by Th27;
uniqueness
for b1, b2 being Ordinal holds
( ( B c= A & A = B +^ b1 & A = B +^ b2 implies b1 = b2 ) & ( not B c= A & b1 = {} & b2 = {} implies b1 = b2 ) ) by Th21;
consistency
for b1 being Ordinal holds verum ;
funcA div^ B -> Ordinal means :Def6: :: ORDINAL3:def 6
ex C being Ordinal st
( A = (it *^ B) +^ C & C in B ) if B <> {}
otherwise it = {} ;
consistency
for b1 being Ordinal holds verum ;
existence
( ( B <> {} implies ex b1, C being Ordinal st
( A = (b1 *^ B) +^ C & C in B ) ) & ( not B <> {} implies ex b1 being Ordinal st b1 = {} ) ) by Th47;
uniqueness
for b1, b2 being Ordinal holds
( ( B <> {} & ex C being Ordinal st
( A = (b1 *^ B) +^ C & C in B ) & ex C being Ordinal st
( A = (b2 *^ B) +^ C & C in B ) implies b1 = b2 ) & ( not B <> {} & b1 = {} & b2 = {} implies b1 = b2 ) ) by Th48;
end;
:: deftheorem Def5 defines -^ ORDINAL3:def_5_:_
for A, B, b3 being Ordinal holds
( ( B c= A implies ( b3 = A -^ B iff A = B +^ b3 ) ) & ( not B c= A implies ( b3 = A -^ B iff b3 = {} ) ) );
:: deftheorem Def6 defines div^ ORDINAL3:def_6_:_
for A, B, b3 being Ordinal holds
( ( B <> {} implies ( b3 = A div^ B iff ex C being Ordinal st
( A = (b3 *^ B) +^ C & C in B ) ) ) & ( not B <> {} implies ( b3 = A div^ B iff b3 = {} ) ) );
definition
let A, B be Ordinal;
funcA mod^ B -> Ordinal equals :: ORDINAL3:def 7
A -^ ((A div^ B) *^ B);
correctness
coherence
A -^ ((A div^ B) *^ B) is Ordinal;
;
end;
:: deftheorem defines mod^ ORDINAL3:def_7_:_
for A, B being Ordinal holds A mod^ B = A -^ ((A div^ B) *^ B);
theorem :: ORDINAL3:51
for A, B being Ordinal st A in B holds
B = A +^ (B -^ A)
proof
let A, B be Ordinal; ::_thesis: ( A in B implies B = A +^ (B -^ A) )
assume A in B ; ::_thesis: B = A +^ (B -^ A)
then A c= B by ORDINAL1:def_2;
hence B = A +^ (B -^ A) by Def5; ::_thesis: verum
end;
theorem Th52: :: ORDINAL3:52
for A, B being Ordinal holds (A +^ B) -^ A = B
proof
let A, B be Ordinal; ::_thesis: (A +^ B) -^ A = B
A c= A +^ B by Th24;
hence (A +^ B) -^ A = B by Def5; ::_thesis: verum
end;
theorem Th53: :: ORDINAL3:53
for A, B, C being Ordinal st A in B & ( C c= A or C in A ) holds
A -^ C in B -^ C
proof
let A, B, C be Ordinal; ::_thesis: ( A in B & ( C c= A or C in A ) implies A -^ C in B -^ C )
assume that
A1: A in B and
A2: ( C c= A or C in A ) ; ::_thesis: A -^ C in B -^ C
A c= B by A1, ORDINAL1:def_2;
then C c= B by A2, ORDINAL1:def_2, XBOOLE_1:1;
then A3: B = C +^ (B -^ C) by Def5;
C c= A by A2, ORDINAL1:def_2;
then A = C +^ (A -^ C) by Def5;
hence A -^ C in B -^ C by A1, A3, Th22; ::_thesis: verum
end;
theorem Th54: :: ORDINAL3:54
for A being Ordinal holds A -^ A = {}
proof
let A be Ordinal; ::_thesis: A -^ A = {}
A +^ {} = A by ORDINAL2:27;
hence A -^ A = {} by Def5; ::_thesis: verum
end;
theorem :: ORDINAL3:55
for A, B being Ordinal st A in B holds
( B -^ A <> {} & {} in B -^ A )
proof
let A, B be Ordinal; ::_thesis: ( A in B implies ( B -^ A <> {} & {} in B -^ A ) )
assume A in B ; ::_thesis: ( B -^ A <> {} & {} in B -^ A )
then A -^ A in B -^ A by Th53;
hence ( B -^ A <> {} & {} in B -^ A ) by Th54; ::_thesis: verum
end;
theorem Th56: :: ORDINAL3:56
for A being Ordinal holds
( A -^ {} = A & {} -^ A = {} )
proof
let A be Ordinal; ::_thesis: ( A -^ {} = A & {} -^ A = {} )
A1: {} +^ A = A by ORDINAL2:30;
{} c= A by XBOOLE_1:2;
hence A -^ {} = A by A1, Def5; ::_thesis: {} -^ A = {}
( not A c= {} or A c= {} ) ;
then ( {} -^ A = {} or A = {} ) by Def5, XBOOLE_1:3;
hence {} -^ A = {} by A1, Def5; ::_thesis: verum
end;
theorem :: ORDINAL3:57
for A, B, C being Ordinal holds A -^ (B +^ C) = (A -^ B) -^ C
proof
let A, B, C be Ordinal; ::_thesis: A -^ (B +^ C) = (A -^ B) -^ C
now__::_thesis:_A_-^_(B_+^_C)_=_(A_-^_B)_-^_C
percases ( B +^ C c= A or not B +^ C c= A ) ;
suppose B +^ C c= A ; ::_thesis: A -^ (B +^ C) = (A -^ B) -^ C
then A = (B +^ C) +^ (A -^ (B +^ C)) by Def5;
then A = B +^ (C +^ (A -^ (B +^ C))) by Th30;
then C +^ (A -^ (B +^ C)) = A -^ B by Th52;
hence A -^ (B +^ C) = (A -^ B) -^ C by Th52; ::_thesis: verum
end;
supposeA1: not B +^ C c= A ; ::_thesis: A -^ (B +^ C) = (A -^ B) -^ C
A2: now__::_thesis:_(_A_=_B_+^_(A_-^_B)_implies_(A_-^_B)_-^_C_=_{}_)
assume A = B +^ (A -^ B) ; ::_thesis: (A -^ B) -^ C = {}
then not C c= A -^ B by A1, ORDINAL2:33;
hence (A -^ B) -^ C = {} by Def5; ::_thesis: verum
end;
( B c= A or not B c= A ) ;
then A3: ( A = B +^ (A -^ B) or A -^ B = {} ) by Def5;
A -^ (B +^ C) = {} by A1, Def5;
hence A -^ (B +^ C) = (A -^ B) -^ C by A3, A2, Th56; ::_thesis: verum
end;
end;
end;
hence A -^ (B +^ C) = (A -^ B) -^ C ; ::_thesis: verum
end;
theorem :: ORDINAL3:58
for A, B, C being Ordinal st A c= B holds
C -^ B c= C -^ A
proof
let A, B, C be Ordinal; ::_thesis: ( A c= B implies C -^ B c= C -^ A )
assume A1: A c= B ; ::_thesis: C -^ B c= C -^ A
then A2: B = A +^ (B -^ A) by Def5;
A3: now__::_thesis:_(_B_c=_C_implies_C_-^_B_c=_C_-^_A_)
assume A4: B c= C ; ::_thesis: C -^ B c= C -^ A
then A5: C = B +^ (C -^ B) by Def5;
A c= C by A1, A4, XBOOLE_1:1;
then B +^ (C -^ B) = A +^ (C -^ A) by A5, Def5;
then A +^ ((B -^ A) +^ (C -^ B)) = A +^ (C -^ A) by A2, Th30;
then (B -^ A) +^ (C -^ B) = C -^ A by Th21;
hence C -^ B c= C -^ A by Th24; ::_thesis: verum
end;
now__::_thesis:_(_not_B_c=_C_implies_C_-^_B_c=_C_-^_A_)
assume not B c= C ; ::_thesis: C -^ B c= C -^ A
then C -^ B = {} by Def5;
hence C -^ B c= C -^ A by XBOOLE_1:2; ::_thesis: verum
end;
hence C -^ B c= C -^ A by A3; ::_thesis: verum
end;
theorem :: ORDINAL3:59
for A, B, C being Ordinal st A c= B holds
A -^ C c= B -^ C
proof
let A, B, C be Ordinal; ::_thesis: ( A c= B implies A -^ C c= B -^ C )
assume A1: A c= B ; ::_thesis: A -^ C c= B -^ C
A2: now__::_thesis:_(_C_c=_A_implies_A_-^_C_c=_B_-^_C_)
assume A3: C c= A ; ::_thesis: A -^ C c= B -^ C
then A4: A = C +^ (A -^ C) by Def5;
C c= B by A1, A3, XBOOLE_1:1;
then C +^ (A -^ C) c= C +^ (B -^ C) by A1, A4, Def5;
hence A -^ C c= B -^ C by Th23; ::_thesis: verum
end;
now__::_thesis:_(_not_C_c=_A_implies_A_-^_C_c=_B_-^_C_)
assume not C c= A ; ::_thesis: A -^ C c= B -^ C
then A -^ C = {} by Def5;
hence A -^ C c= B -^ C by XBOOLE_1:2; ::_thesis: verum
end;
hence A -^ C c= B -^ C by A2; ::_thesis: verum
end;
theorem :: ORDINAL3:60
for C, A, B being Ordinal st C <> {} & A in B +^ C holds
A -^ B in C
proof
let C, A, B be Ordinal; ::_thesis: ( C <> {} & A in B +^ C implies A -^ B in C )
assume A1: C <> {} ; ::_thesis: ( not A in B +^ C or A -^ B in C )
A2: (B +^ C) -^ B = C by Th52;
( not B c= A implies A -^ B = {} ) by Def5;
hence ( not A in B +^ C or A -^ B in C ) by A1, A2, Th8, Th53; ::_thesis: verum
end;
theorem :: ORDINAL3:61
for A, B, C being Ordinal st A +^ B in C holds
B in C -^ A
proof
let A, B, C be Ordinal; ::_thesis: ( A +^ B in C implies B in C -^ A )
A1: (A +^ B) -^ A = B by Th52;
A c= A +^ B by Th24;
hence ( A +^ B in C implies B in C -^ A ) by A1, Th53; ::_thesis: verum
end;
theorem :: ORDINAL3:62
for A, B being Ordinal holds A c= B +^ (A -^ B)
proof
let A, B be Ordinal; ::_thesis: A c= B +^ (A -^ B)
now__::_thesis:_A_c=_B_+^_(A_-^_B)
percases ( B c= A or not B c= A ) ;
suppose B c= A ; ::_thesis: A c= B +^ (A -^ B)
hence A c= B +^ (A -^ B) by Def5; ::_thesis: verum
end;
supposeA1: not B c= A ; ::_thesis: A c= B +^ (A -^ B)
then A -^ B = {} by Def5;
hence A c= B +^ (A -^ B) by A1, ORDINAL2:27; ::_thesis: verum
end;
end;
end;
hence A c= B +^ (A -^ B) ; ::_thesis: verum
end;
theorem :: ORDINAL3:63
for A, C, B being Ordinal holds (A *^ C) -^ (B *^ C) = (A -^ B) *^ C
proof
let A, C, B be Ordinal; ::_thesis: (A *^ C) -^ (B *^ C) = (A -^ B) *^ C
A1: now__::_thesis:_(_not_B_c=_A_implies_(A_*^_C)_-^_(B_*^_C)_=_(A_-^_B)_*^_C_)
assume A2: not B c= A ; ::_thesis: (A *^ C) -^ (B *^ C) = (A -^ B) *^ C
then A3: ( not B *^ C c= A *^ C or C = {} ) by Th35;
A4: {} *^ C = {} by ORDINAL2:35;
A5: A *^ {} = {} by ORDINAL2:38;
A -^ B = {} by A2, Def5;
hence (A *^ C) -^ (B *^ C) = (A -^ B) *^ C by A3, A5, A4, Def5, Th56; ::_thesis: verum
end;
now__::_thesis:_(_B_c=_A_implies_(A_*^_C)_-^_(B_*^_C)_=_(A_-^_B)_*^_C_)
assume B c= A ; ::_thesis: (A *^ C) -^ (B *^ C) = (A -^ B) *^ C
then A = B +^ (A -^ B) by Def5;
then A *^ C = (B *^ C) +^ ((A -^ B) *^ C) by Th46;
hence (A *^ C) -^ (B *^ C) = (A -^ B) *^ C by Th52; ::_thesis: verum
end;
hence (A *^ C) -^ (B *^ C) = (A -^ B) *^ C by A1; ::_thesis: verum
end;
theorem Th64: :: ORDINAL3:64
for A, B being Ordinal holds (A div^ B) *^ B c= A
proof
let A, B be Ordinal; ::_thesis: (A div^ B) *^ B c= A
now__::_thesis:_(A_div^_B)_*^_B_c=_A
percases ( B <> {} or B = {} ) ;
suppose B <> {} ; ::_thesis: (A div^ B) *^ B c= A
then ex C being Ordinal st
( A = ((A div^ B) *^ B) +^ C & C in B ) by Def6;
hence (A div^ B) *^ B c= A by Th24; ::_thesis: verum
end;
suppose B = {} ; ::_thesis: (A div^ B) *^ B c= A
then A div^ B = {} by Def6;
then (A div^ B) *^ B = {} by ORDINAL2:35;
hence (A div^ B) *^ B c= A by XBOOLE_1:2; ::_thesis: verum
end;
end;
end;
hence (A div^ B) *^ B c= A ; ::_thesis: verum
end;
theorem Th65: :: ORDINAL3:65
for A, B being Ordinal holds A = ((A div^ B) *^ B) +^ (A mod^ B)
proof
let A, B be Ordinal; ::_thesis: A = ((A div^ B) *^ B) +^ (A mod^ B)
(A div^ B) *^ B c= A by Th64;
hence A = ((A div^ B) *^ B) +^ (A mod^ B) by Def5; ::_thesis: verum
end;
theorem :: ORDINAL3:66
for A, B, C, D being Ordinal st A = (B *^ C) +^ D & D in C holds
( B = A div^ C & D = A mod^ C )
proof
let A, B, C, D be Ordinal; ::_thesis: ( A = (B *^ C) +^ D & D in C implies ( B = A div^ C & D = A mod^ C ) )
assume that
A1: A = (B *^ C) +^ D and
A2: D in C ; ::_thesis: ( B = A div^ C & D = A mod^ C )
thus B = A div^ C by A1, A2, Def6; ::_thesis: D = A mod^ C
hence D = A mod^ C by A1, Th52; ::_thesis: verum
end;
theorem :: ORDINAL3:67
for A, B, C being Ordinal st A in B *^ C holds
( A div^ C in B & A mod^ C in C )
proof
let A, B, C be Ordinal; ::_thesis: ( A in B *^ C implies ( A div^ C in B & A mod^ C in C ) )
A1: A = ((A div^ C) *^ C) +^ (A mod^ C) by Th65;
assume A2: A in B *^ C ; ::_thesis: ( A div^ C in B & A mod^ C in C )
then C <> {} by ORDINAL2:38;
then A3: ex D being Ordinal st
( A = ((A div^ C) *^ C) +^ D & D in C ) by Def6;
then A4: (A div^ C) *^ C c= A by Th24;
assume ( not A div^ C in B or not A mod^ C in C ) ; ::_thesis: contradiction
then B *^ C c= (A div^ C) *^ C by A3, A1, Th21, ORDINAL1:16, ORDINAL2:41;
hence contradiction by A2, A4, ORDINAL1:5; ::_thesis: verum
end;
theorem Th68: :: ORDINAL3:68
for B, A being Ordinal st B <> {} holds
(A *^ B) div^ B = A
proof
let B, A be Ordinal; ::_thesis: ( B <> {} implies (A *^ B) div^ B = A )
assume B <> {} ; ::_thesis: (A *^ B) div^ B = A
then A1: {} in B by Th8;
A *^ B = (A *^ B) +^ {} by ORDINAL2:27;
hence (A *^ B) div^ B = A by A1, Def6; ::_thesis: verum
end;
theorem :: ORDINAL3:69
for A, B being Ordinal holds (A *^ B) mod^ B = {}
proof
let A, B be Ordinal; ::_thesis: (A *^ B) mod^ B = {}
A1: A *^ {} = {} by ORDINAL2:38;
A2: (A *^ B) -^ (A *^ B) = {} by Th54;
{} -^ (((A *^ B) div^ B) *^ B) = {} by Th56;
hence (A *^ B) mod^ B = {} by A1, A2, Th68; ::_thesis: verum
end;
theorem :: ORDINAL3:70
for A being Ordinal holds
( {} div^ A = {} & {} mod^ A = {} & A mod^ {} = A )
proof
let A be Ordinal; ::_thesis: ( {} div^ A = {} & {} mod^ A = {} & A mod^ {} = A )
A1: ( A = {} or A <> {} ) ;
{} = {} *^ A by ORDINAL2:35;
hence {} div^ A = {} by A1, Def6, Th68; ::_thesis: ( {} mod^ A = {} & A mod^ {} = A )
thus {} mod^ A = {} by Th56; ::_thesis: A mod^ {} = A
thus A mod^ {} = A -^ {} by ORDINAL2:38
.= A by Th56 ; ::_thesis: verum
end;
theorem :: ORDINAL3:71
for A being Ordinal holds
( A div^ 1 = A & A mod^ 1 = {} )
proof
let A be Ordinal; ::_thesis: ( A div^ 1 = A & A mod^ 1 = {} )
A1: A = A *^ 1 by ORDINAL2:39;
A2: A = A +^ {} by ORDINAL2:27;
A3: {} in 1 by Th8;
hence A div^ 1 = A by A1, A2, Def6; ::_thesis: A mod^ 1 = {}
thus A mod^ 1 = A -^ A by A1, A2, A3, Def6
.= {} by Th54 ; ::_thesis: verum
end;
begin
theorem :: ORDINAL3:72
for X being set holds sup X c= succ (union (On X))
proof
let X be set ; ::_thesis: sup X c= succ (union (On X))
reconsider A = union (On X) as Ordinal by Th5;
On X c= succ A
proof
let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in On X or x in succ A )
assume A1: x in On X ; ::_thesis: x in succ A
then reconsider a = x as Ordinal by ORDINAL1:def_9;
a c= A by A1, ZFMISC_1:74;
hence x in succ A by ORDINAL1:22; ::_thesis: verum
end;
hence sup X c= succ (union (On X)) by ORDINAL2:def_3; ::_thesis: verum
end;
theorem :: ORDINAL3:73
for A being Ordinal holds succ A is_cofinal_with 1
proof
let A be Ordinal; ::_thesis: succ A is_cofinal_with 1
deffunc H1( set ) -> Ordinal = A;
consider psi being Ordinal-Sequence such that
A1: ( dom psi = 1 & ( for B being Ordinal st B in 1 holds
psi . B = H1(B) ) ) from ORDINAL2:sch_3();
take psi ; :: according to ORDINAL2:def_17 ::_thesis: ( dom psi = 1 & rng psi c= succ A & psi is increasing & succ A = sup psi )
thus dom psi = 1 by A1; ::_thesis: ( rng psi c= succ A & psi is increasing & succ A = sup psi )
thus rng psi c= succ A ::_thesis: ( psi is increasing & succ A = sup psi )
proof
let e be set ; :: according to TARSKI:def_3 ::_thesis: ( not e in rng psi or e in succ A )
assume e in rng psi ; ::_thesis: e in succ A
then consider u being set such that
A2: u in 1 and
A3: e = psi . u by A1, FUNCT_1:def_3;
reconsider u = u as Ordinal by A2;
psi . u = A by A1, A2;
hence e in succ A by A3, ORDINAL1:6; ::_thesis: verum
end;
thus psi is increasing ::_thesis: succ A = sup psi
proof
let B be Ordinal; :: according to ORDINAL2:def_12 ::_thesis: for b1 being set holds
( not B in b1 or not b1 in dom psi or psi . B in psi . b1 )
let C be Ordinal; ::_thesis: ( not B in C or not C in dom psi or psi . B in psi . C )
assume that
A4: B in C and
A5: C in dom psi ; ::_thesis: psi . B in psi . C
thus psi . B in psi . C by A1, A4, A5, Th14; ::_thesis: verum
end;
A6: psi . {} = A by A1, Lm1, ORDINAL1:6;
rng psi = {(psi . {})} by A1, Lm1, FUNCT_1:4;
hence succ A = sup psi by A6, ORDINAL2:23; ::_thesis: verum
end;
theorem Th74: :: ORDINAL3:74
for a, b being Ordinal st a +^ b is natural holds
( a in omega & b in omega )
proof
let x, y be Ordinal; ::_thesis: ( x +^ y is natural implies ( x in omega & y in omega ) )
assume A1: x +^ y in omega ; :: according to ORDINAL1:def_12 ::_thesis: ( x in omega & y in omega )
A2: y c= x +^ y by Th24;
x c= x +^ y by Th24;
hence ( x in omega & y in omega ) by A1, A2, ORDINAL1:12; ::_thesis: verum
end;
registration
let a, b be natural Ordinal;
clustera -^ b -> natural ;
coherence
a -^ b is natural
proof
( not b c= a or b c= a ) ;
then ( a -^ b = {} or a = b +^ (a -^ b) ) by Def5;
hence a -^ b in omega by Th74, ORDINAL1:def_11; :: according to ORDINAL1:def_12 ::_thesis: verum
end;
clustera *^ b -> natural ;
coherence
a *^ b is natural
proof
defpred S1[ natural Ordinal] means a *^ b is natural ;
A1: now__::_thesis:_for_a_being_natural_Ordinal_st_S1[a]_holds_
S1[_succ_a]
let a be natural Ordinal; ::_thesis: ( S1[a] implies S1[ succ a] )
assume S1[a] ; ::_thesis: S1[ succ a]
then reconsider c = a *^ b as natural Ordinal ;
(succ a) *^ b = c +^ b by ORDINAL2:36;
hence S1[ succ a] ; ::_thesis: verum
end;
A2: S1[ {} ] by ORDINAL2:35;
S1[a] from ORDINAL2:sch_17(A2, A1);
hence a *^ b is natural ; ::_thesis: verum
end;
end;
theorem :: ORDINAL3:75
for a, b being Ordinal st a *^ b is natural & not a *^ b is empty holds
( a in omega & b in omega )
proof
let x, y be Ordinal; ::_thesis: ( x *^ y is natural & not x *^ y is empty implies ( x in omega & y in omega ) )
assume A1: x *^ y in omega ; :: according to ORDINAL1:def_12 ::_thesis: ( x *^ y is empty or ( x in omega & y in omega ) )
assume A2: not x *^ y is empty ; ::_thesis: ( x in omega & y in omega )
then y <> {} by ORDINAL2:38;
then A3: x c= x *^ y by Th36;
x <> {} by A2, ORDINAL2:35;
then y c= x *^ y by Th36;
hence ( x in omega & y in omega ) by A1, A3, ORDINAL1:12; ::_thesis: verum
end;
definition
let a, b be natural Ordinal;
:: original: +^
redefine funca +^ b -> set ;
commutativity
for a, b being natural Ordinal holds a +^ b = b +^ a
proof
let a, b be natural Ordinal; ::_thesis: a +^ b = b +^ a
defpred S1[ natural Ordinal] means a +^ $1 = $1 +^ a;
A1: now__::_thesis:_for_b_being_natural_Ordinal_st_S1[b]_holds_
S1[_succ_b]
let b be natural Ordinal; ::_thesis: ( S1[b] implies S1[ succ b] )
assume A2: S1[b] ; ::_thesis: S1[ succ b]
defpred S2[ natural Ordinal] means (succ b) +^ $1 = succ (b +^ $1);
A3: now__::_thesis:_for_a_being_natural_Ordinal_st_S2[a]_holds_
S2[_succ_a]
let a be natural Ordinal; ::_thesis: ( S2[a] implies S2[ succ a] )
assume A4: S2[a] ; ::_thesis: S2[ succ a]
(succ b) +^ (succ a) = succ ((succ b) +^ a) by ORDINAL2:28
.= succ (b +^ (succ a)) by A4, ORDINAL2:28 ;
hence S2[ succ a] ; ::_thesis: verum
end;
(succ b) +^ {} = succ b by ORDINAL2:27
.= succ (b +^ {}) by ORDINAL2:27 ;
then A5: S2[ {} ] ;
S2[a] from ORDINAL2:sch_17(A5, A3);
hence S1[ succ b] by A2, ORDINAL2:28; ::_thesis: verum
end;
a +^ {} = a by ORDINAL2:27
.= {} +^ a by ORDINAL2:30 ;
then A6: S1[ {} ] ;
thus S1[b] from ORDINAL2:sch_17(A6, A1); ::_thesis: verum
end;
end;
definition
let a, b be natural Ordinal;
:: original: *^
redefine funca *^ b -> set ;
commutativity
for a, b being natural Ordinal holds a *^ b = b *^ a
proof
let a, b be natural Ordinal; ::_thesis: a *^ b = b *^ a
defpred S1[ natural Ordinal] means a *^ $1 = $1 *^ a;
A1: now__::_thesis:_for_b_being_natural_Ordinal_st_S1[b]_holds_
S1[_succ_b]
let b be natural Ordinal; ::_thesis: ( S1[b] implies S1[ succ b] )
defpred S2[ natural Ordinal] means $1 *^ (succ b) = ($1 *^ b) +^ $1;
assume A2: S1[b] ; ::_thesis: S1[ succ b]
A3: now__::_thesis:_for_a_being_natural_Ordinal_st_S2[a]_holds_
S2[_succ_a]
let a be natural Ordinal; ::_thesis: ( S2[a] implies S2[ succ a] )
assume A4: S2[a] ; ::_thesis: S2[ succ a]
(succ a) *^ (succ b) = (a *^ (succ b)) +^ (succ b) by ORDINAL2:36
.= (a *^ b) +^ (a +^ (succ b)) by A4, Th30
.= (a *^ b) +^ (succ (a +^ b)) by ORDINAL2:28
.= succ ((a *^ b) +^ (a +^ b)) by ORDINAL2:28
.= succ (((a *^ b) +^ b) +^ a) by Th30
.= succ (((succ a) *^ b) +^ a) by ORDINAL2:36
.= ((succ a) *^ b) +^ (succ a) by ORDINAL2:28 ;
hence S2[ succ a] ; ::_thesis: verum
end;
{} *^ (succ b) = {} by ORDINAL2:35
.= {} +^ {} by ORDINAL2:27
.= ({} *^ b) +^ {} by ORDINAL2:35 ;
then A5: S2[ {} ] ;
S2[a] from ORDINAL2:sch_17(A5, A3);
hence S1[ succ b] by A2, ORDINAL2:36; ::_thesis: verum
end;
a *^ {} = {} by ORDINAL2:38
.= {} *^ a by ORDINAL2:35 ;
then A6: S1[ {} ] ;
thus S1[b] from ORDINAL2:sch_17(A6, A1); ::_thesis: verum
end;
end;