F0: F1() in rng F2() by F1, FUNCT_1:def 5;
hence F1() c= Union F2() by ZFMISC_1:92; :: thesis: ( F3((Union F2())) = Union F2() & ( for b being ordinal number st F1() c= b & F3(b) = b holds
Union F2() c= b ) )

set phi = F2();
A7: now
defpred S1[ Ordinal] means not $1 c= F3($1);
assume A8: ex a being ordinal number st S1[a] ; :: thesis: contradiction
consider a being ordinal number such that
A9: S1[a] and
A10: for b being ordinal number st S1[b] holds
a c= b from ORDINAL1:sch 1(A8);
F3(F3(a)) in F3(a) by A1, A9, ORDINAL1:26;
then not F3(a) c= F3(F3(a)) by ORDINAL1:7;
hence contradiction by A9, A10; :: thesis: verum
end;
then F1() c= F3(F1()) ;
then F3: ( F1() c< F3(F1()) or F1() = F3(F1()) ) by XBOOLE_0:def 8;
per cases ( F3(F1()) = F1() or F1() in F3(F1()) ) by F3, ORDINAL1:21;
suppose A3: F3(F1()) = F1() ; :: thesis: ( F3((Union F2())) = Union F2() & ( for b being ordinal number st F1() c= b & F3(b) = b holds
Union F2() c= b ) )

A4: for a being set st a in omega holds
F2() . a = F1()
proof
let a be set ; :: thesis: ( a in omega implies F2() . a = F1() )
assume a in omega ; :: thesis: F2() . a = F1()
then reconsider a = a as Element of omega ;
defpred S1[ Nat] means F2() . $1 = F1();
C0: S1[ 0 ] by F1;
C1: now
let n be Nat; :: thesis: ( S1[n] implies S1[n + 1] )
assume C2: S1[n] ; :: thesis: S1[n + 1]
n in omega by ORDINAL1:def 13;
then F2() . (succ n) = F3(F1()) by F2, C2;
hence S1[n + 1] by A3, NAT_1:39; :: thesis: verum
end;
for n being Nat holds S1[n] from NAT_1:sch 2(C0, C1);
then S1[a] ;
hence
F2() . a = F1() ; :: thesis: verum
end;
rng F2() = {F1()}
proof
thus rng F2() c= {F1()} :: according to XBOOLE_0:def 10 :: thesis: {F1()} c= rng F2()
proof
let x be set ; :: according to TARSKI:def 3 :: thesis: ( not x in rng F2() or x in {F1()} )
assume x in rng F2() ; :: thesis: x in {F1()}
then consider a being set such that
G1: ( a in dom F2() & x = F2() . a ) by FUNCT_1:def 5;
x = F1() by A4, G1, F1;
hence x in {F1()} by TARSKI:def 1; :: thesis: verum
end;
thus {F1()} c= rng F2() by F0, ZFMISC_1:37; :: thesis: verum
end;
then Union F2() = F1() by ZFMISC_1:31;
hence ( F3((Union F2())) = Union F2() & ( for b being ordinal number st F1() c= b & F3(b) = b holds
Union F2() c= b ) ) by A3; :: thesis: verum
end;
suppose A3: F1() in F3(F1()) ; :: thesis: ( F3((Union F2())) = Union F2() & ( for b being ordinal number st F1() c= b & F3(b) = b holds
Union F2() c= b ) )

deffunc H1( Ordinal, Ordinal) -> Ordinal = F3($2);
deffunc H2( Ordinal, T-Sequence) -> set = {} ;
A6: now
let a be ordinal number ; :: thesis: ( succ a in omega implies F2() . (succ a) = H1(a,F2() . a) )
assume G1: succ a in omega ; :: thesis: F2() . (succ a) = H1(a,F2() . a)
a in succ a by ORDINAL1:10;
hence F2() . (succ a) = H1(a,F2() . a) by F2, G1, ORDINAL1:19; :: thesis: verum
end;
B1: for a being ordinal number st a in omega holds
( F1() c= F2() . a & F2() . a in F2() . (succ a) )
proof
let a be ordinal number ; :: thesis: ( a in omega implies ( F1() c= F2() . a & F2() . a in F2() . (succ a) ) )
assume a in omega ; :: thesis: ( F1() c= F2() . a & F2() . a in F2() . (succ a) )
then reconsider a = a as Element of omega ;
defpred S1[ Nat] means ( F1() c= F2() . $1 & F2() . $1 in F2() . (succ $1) );
B01: S1[ 0 ] by A3, F1, F2;
B02: now
let n be Nat; :: thesis: ( S1[n] implies S1[n + 1] )
assume B03: S1[n] ; :: thesis: S1[n + 1]
B04: ( n + 1 = succ n & (n + 1) + 1 = succ (n + 1) & n + 1 in omega & (n + 1) + 1 in omega ) by NAT_1:39;
then ( F2() . (n + 1) = F3((F2() . n)) & F2() . ((n + 1) + 1) = F3((F2() . (n + 1))) ) by A6;
then ( F2() . n c= F2() . (n + 1) & F2() . (n + 1) in F2() . ((n + 1) + 1) ) by A1, A7, B03, B04;
hence S1[n + 1] by B03, B04, XBOOLE_1:1; :: thesis: verum
end;
for n being Nat holds S1[n] from NAT_1:sch 2(B01, B02);
then S1[a] ;
hence
( F1() c= F2() . a & F2() . a in F2() . (succ a) ) ; :: thesis: verum
end;
deffunc H3( Ordinal) -> Ordinal = F3($1);
consider fi being Ordinal-Sequence such that
A23: ( dom fi = Union F2() & ( for a being ordinal number st a in Union F2() holds
fi . a = H3(a) ) ) from ORDINAL2:sch 3();
1 = succ 0 ;
then F2() . 1 = H3(F1()) by F1, F2;
then H3(F1()) in rng F2() by F1, FUNCT_1:def 5;
then H3(F1()) c= Union F2() by ZFMISC_1:92;
then A24: Union F2() <> {} by A3;
now
let c be ordinal number ; :: thesis: ( c in Union F2() implies succ c in Union F2() )
assume c in Union F2() ; :: thesis: succ c in Union F2()
then consider x being set such that
V1: ( x in dom F2() & c in F2() . x ) by CARD_5:10;
reconsider x = x as Element of omega by F1, V1;
( succ c c= F2() . x & F2() . x in F2() . (succ x) ) by B1, V1, ORDINAL1:33;
then ( succ c in F2() . (succ x) & succ x in omega ) by ORDINAL1:22, ORDINAL1:def 13;
hence succ c in Union F2() by F1, CARD_5:10; :: thesis: verum
end;
then A249: Union F2() is limit_ordinal by ORDINAL1:41;
then A25: H3( Union F2()) is_limes_of fi by A2, A23, A24;
fi is increasing
proof
let a be ordinal number ; :: according to ORDINAL2:def 16 :: thesis: for b1 being set holds
( not a in b1 or not b1 in proj1 fi or fi . a in fi . b1 )

let b be ordinal number ; :: thesis: ( not a in b or not b in proj1 fi or fi . a in fi . b )
assume A26: ( a in b & b in dom fi ) ; :: thesis: fi . a in fi . b
then ( fi . a = H3(a) & fi . b = H3(b) ) by A23, ORDINAL1:19;
hence fi . a in fi . b by A1, A26; :: thesis: verum
end;
then A27: sup fi = lim fi by A23, A24, A249, ORDINAL4:8
.= H3( Union F2()) by A25, ORDINAL2:def 14 ;
thus H3( Union F2()) c= Union F2() :: according to XBOOLE_0:def 10 :: thesis: ( Union F2() c= F3((Union F2())) & ( for b being ordinal number st F1() c= b & F3(b) = b holds
Union F2() c= b ) )
proof
let x be set ; :: according to TARSKI:def 3 :: thesis: ( not x in H3( Union F2()) or x in Union F2() )
assume A28: x in H3( Union F2()) ; :: thesis: x in Union F2()
then reconsider A = x as Ordinal ;
consider b being ordinal number such that
A29: ( b in rng fi & A c= b ) by A27, A28, ORDINAL2:29;
consider y being set such that
A30: ( y in dom fi & b = fi . y ) by A29, FUNCT_1:def 5;
reconsider y = y as Ordinal by A30;
consider z being set such that
A32: ( z in dom F2() & y in F2() . z ) by A23, A30, CARD_5:10;
reconsider z = z as Ordinal by A32;
set c = F2() . z;
succ z in omega by F1, A32, ORDINAL1:41;
then ( F2() . (succ z) = H3(F2() . z) & F2() . (succ z) in rng F2() & b = H3(y) ) by F1, A6, A23, A30, FUNCT_1:def 5;
then ( b in H3(F2() . z) & H3(F2() . z) c= Union F2() ) by ZFMISC_1:92, A1, A32;
hence x in Union F2() by A29, ORDINAL1:22; :: thesis: verum
end;
thus Union F2() c= H3( Union F2()) by A7; :: thesis: for b being ordinal number st F1() c= b & F3(b) = b holds
Union F2() c= b

let b be ordinal number ; :: thesis: ( F1() c= b & F3(b) = b implies Union F2() c= b )
assume Z1: ( F1() c= b & H3(b) = b ) ; :: thesis: Union F2() c= b
rng F2() c= b
proof
let x be set ; :: according to TARSKI:def 3 :: thesis: ( not x in rng F2() or x in b )
assume x in rng F2() ; :: thesis: x in b
then consider a being set such that
Z2: ( a in dom F2() & x = F2() . a ) by FUNCT_1:def 5;
reconsider a = a as Element of omega by F1, Z2;
defpred S1[ Nat] means F2() . $1 in b;
F1() <> b by A3, Z1;
then F1() c< b by Z1, XBOOLE_0:def 8;
then Z3: S1[ 0 ] by F1, ORDINAL1:21;
Z4: now
let n be Nat; :: thesis: ( S1[n] implies S1[n + 1] )
assume S1[n] ; :: thesis: S1[n + 1]
then ( H3(F2() . n) in b & n in omega ) by A1, Z1, ORDINAL1:def 13;
then F2() . (succ n) in b by F2;
hence S1[n + 1] by NAT_1:39; :: thesis: verum
end;
for n being Nat holds S1[n] from NAT_1:sch 2(Z3, Z4);
then S1[a] ;
hence
x in b by Z2; :: thesis: verum
end;
then ( Union F2() c= union b & union b c= b ) by ZFMISC_1:95, ORDINAL2:5;
hence Union F2() c= b by XBOOLE_1:1; :: thesis: verum
end;
end;