A5: F1() in rng F2() by A3, FUNCT_1:def 3;
hence F1() c= Union F2() by ZFMISC_1:74; :: thesis: ( F3((Union F2())) = Union F2() & ( for b being Ordinal st F1() c= b & F3(b) = b holds
Union F2() c= b ) )

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

A12: 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();
A13: S1[ 0 ] by A3;
A14: now :: thesis: for n being Nat st S1[n] holds
S1[n + 1]
let n be Nat; :: thesis: ( S1[n] implies S1[n + 1] )
assume A15: S1[n] ; :: thesis: S1[n + 1]
A16: Segm (n + 1) = succ (Segm n) by NAT_1:38;
n in omega by ORDINAL1:def 12;
then F2() . (succ n) = F3(F1()) by A4, A15;
hence S1[n + 1] by A11, A16; :: thesis: verum
end;
for n being Nat holds S1[n] from NAT_1:sch 2(A13, A14);
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: not {F1()} c/= rng F2()
proof
let x be object ; :: 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 object such that
A17: ( a in dom F2() & x = F2() . a ) by FUNCT_1:def 3;
x = F1() by A12, A17, A3;
hence x in {F1()} by TARSKI:def 1; :: thesis: verum
end;
thus not {F1()} c/= rng F2() by A5, ZFMISC_1:31; :: thesis: verum
end;
then Union F2() = F1() by ZFMISC_1:25;
hence ( F3((Union F2())) = Union F2() & ( for b being Ordinal st F1() c= b & F3(b) = b holds
Union F2() c= b ) ) by A11; :: thesis: verum
end;
suppose A18: F1() in F3(F1()) ; :: thesis: ( F3((Union F2())) = Union F2() & ( for b being Ordinal st F1() c= b & F3(b) = b holds
Union F2() c= b ) )

deffunc H1( Ordinal, Ordinal) -> Ordinal = F3($2);
deffunc H2( Ordinal, Sequence) -> set = {} ;
A19: now :: thesis: for a being Ordinal st succ a in omega holds
F2() . (succ a) = H1(a,F2() . a)
let a be Ordinal; :: thesis: ( succ a in omega implies F2() . (succ a) = H1(a,F2() . a) )
assume A20: succ a in omega ; :: thesis: F2() . (succ a) = H1(a,F2() . a)
a in succ a by ORDINAL1:6;
hence F2() . (succ a) = H1(a,F2() . a) by A4, A20, ORDINAL1:10; :: thesis: verum
end;
A21: for a being Ordinal st a in omega holds
( F1() c= F2() . a & F2() . a in F2() . (succ a) )
proof
let a be Ordinal; :: 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) );
A22: S1[ 0 ] by A18, A3, A4;
A23: now :: thesis: for n being Nat st S1[n] holds
S1[n + 1]
let n be Nat; :: thesis: ( S1[n] implies S1[n + 1] )
assume A24: S1[n] ; :: thesis: S1[n + 1]
A25: ( Segm (n + 1) = succ (Segm n) & Segm ((n + 1) + 1) = succ (Segm (n + 1)) & n + 1 in omega & (n + 1) + 1 in omega ) by NAT_1:38;
then ( F2() . (n + 1) = F3((F2() . n)) & F2() . ((n + 1) + 1) = F3((F2() . (n + 1))) ) by A19;
then ( F2() . n c= F2() . (n + 1) & F2() . (n + 1) in F2() . ((n + 1) + 1) ) by A1, A6, A24, A25;
hence S1[n + 1] by A24, XBOOLE_1:1, A25; :: thesis: verum
end;
for n being Nat holds S1[n] from NAT_1:sch 2(A22, A23);
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
A26: ( dom fi = Union F2() & ( for a being Ordinal st a in Union F2() holds
fi . a = H3(a) ) ) from ORDINAL2:sch 3();
1 = succ 0 ;
then F2() . 1 = H3(F1()) by A3, A4;
then H3(F1()) in rng F2() by A3, FUNCT_1:def 3;
then A27: H3(F1()) c= Union F2() by ZFMISC_1:74;
now :: thesis: for c being Ordinal st c in Union F2() holds
succ c in Union F2()
let c be Ordinal; :: 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 object such that
A28: ( x in dom F2() & c in F2() . x ) by CARD_5:2;
reconsider x = x as Element of omega by A3, A28;
( succ c c= F2() . x & F2() . x in F2() . (succ x) ) by A21, A28, ORDINAL1:21;
then ( succ c in F2() . (succ x) & succ x in omega ) by ORDINAL1:12, ORDINAL1:def 12;
hence succ c in Union F2() by A3, CARD_5:2; :: thesis: verum
end;
then A29: Union F2() is limit_ordinal by ORDINAL1:28;
then A30: H3( Union F2()) is_limes_of fi by A2, A26, A27, A18;
fi is increasing
proof
let a be Ordinal; :: according to ORDINAL2:def 12 :: thesis: for b1 being set holds
( not a in b1 or not b1 in dom fi or fi . a in fi . b1 )

let b be Ordinal; :: thesis: ( not a in b or not b in dom fi or fi . a in fi . b )
assume A31: ( a in b & b in dom fi ) ; :: thesis: fi . a in fi . b
then ( fi . a = H3(a) & fi . b = H3(b) ) by A26, ORDINAL1:10;
hence fi . a in fi . b by A1, A31; :: thesis: verum
end;
then A32: sup fi = lim fi by A26, A27, A29, A18, ORDINAL4:8
.= H3( Union F2()) by A30, ORDINAL2:def 10 ;
thus H3( Union F2()) c= Union F2() :: according to XBOOLE_0:def 10 :: thesis: ( not Union F2() c/= F3((Union F2())) & ( for b being Ordinal st F1() c= b & F3(b) = b holds
Union F2() c= b ) )
proof
let x be Ordinal; :: according to ORDINAL1:def 5 :: thesis: ( not x in H3( Union F2()) or x in Union F2() )
assume A33: x in H3( Union F2()) ; :: thesis: x in Union F2()
reconsider A = x as Ordinal ;
consider b being Ordinal such that
A34: ( b in rng fi & A c= b ) by A32, A33, ORDINAL2:21;
consider y being object such that
A35: ( y in dom fi & b = fi . y ) by A34, FUNCT_1:def 3;
reconsider y = y as Ordinal by A35;
consider z being object such that
A36: ( z in dom F2() & y in F2() . z ) by A26, A35, CARD_5:2;
reconsider z = z as Ordinal by A36;
set c = F2() . z;
succ z in omega by A3, A36, ORDINAL1:28;
then ( F2() . (succ z) = H3(F2() . z) & F2() . (succ z) in rng F2() & b = H3(y) ) by A3, A19, A26, A35, FUNCT_1:def 3;
then ( b in H3(F2() . z) & H3(F2() . z) c= Union F2() ) by A1, A36, ZFMISC_1:74;
hence x in Union F2() by A34, ORDINAL1:12; :: thesis: verum
end;
thus Union F2() c= H3( Union F2()) by A6; :: thesis: for b being Ordinal st F1() c= b & F3(b) = b holds
Union F2() c= b

let b be Ordinal; :: thesis: ( F1() c= b & F3(b) = b implies Union F2() c= b )
assume A37: ( F1() c= b & H3(b) = b ) ; :: thesis: Union F2() c= b
rng F2() c= b
proof
let x be object ; :: 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 object such that
A38: ( a in dom F2() & x = F2() . a ) by FUNCT_1:def 3;
reconsider a = a as Element of omega by A3, A38;
defpred S1[ Nat] means F2() . $1 in b;
F1() <> b by A18, A37;
then F1() c< b by A37;
then A39: S1[ 0 ] by A3, ORDINAL1:11;
A40: now :: thesis: for n being Nat st S1[n] holds
S1[n + 1]
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, A37, ORDINAL1:def 12;
then A41: F2() . (succ n) in b by A4;
Segm (n + 1) = succ (Segm n) by NAT_1:38;
hence S1[n + 1] by A41; :: thesis: verum
end;
for n being Nat holds S1[n] from NAT_1:sch 2(A39, A40);
then S1[a] ;
hence
x in b by A38; :: thesis: verum
end;
then ( Union F2() c= union b & union b c= b ) by ORDINAL2:5, ZFMISC_1:77;
hence Union F2() c= b ; :: thesis: verum
end;
end;