thus ( F4() is subcategory of F1() & F5() is subcategory of F2() ) ; :: according to YELLOW20:def 4 :: thesis: ex G being covariant Functor of F4(),F5() st
( G is bijective & ( for a' being object of F4()
for a being object of F1() st a' = a holds
G . a' = F3() . a ) & ( for b', c' being object of F4()
for b, c being object of F1() st <^b',c'^> <> {} & b' = b & c' = c holds
for f' being Morphism of b',c'
for f being Morphism of b,c st f' = f holds
G . f' = (Morph-Map F3(),b,c) . f ) )

A4: the carrier of F4() c= the carrier of F1() by ALTCAT_2:def 11;
deffunc H1( object of F4()) -> Element of the carrier of F2() = (F3() | F4()) . $1;
deffunc H2( object of F4(), object of F4(), Morphism of $1,$2) -> Element of <^((F3() | F4()) . $1),((F3() | F4()) . $2)^> = (F3() | F4()) . $3;
A5: now
let a be object of F4(); :: thesis: H1(a) is object of F5()
a in the carrier of F4() ;
then reconsider b = a as object of F1() by A4;
(F3() | F4()) . a = F3() . b by Th29;
hence H1(a) is object of F5() by A2; :: thesis: verum
end;
A6: now
let a, b be object of F4(); :: thesis: ( <^a,b^> <> {} implies for f being Morphism of a,b holds H2(a,b,f) in the Arrows of F5() . H1(a),H1(b) )
assume A7: <^a,b^> <> {} ; :: thesis: for f being Morphism of a,b holds H2(a,b,f) in the Arrows of F5() . H1(a),H1(b)
( a in the carrier of F4() & b in the carrier of F4() ) ;
then reconsider c = a, d = b as object of F1() by A4;
reconsider a' = (F3() | F4()) . a, b' = (F3() | F4()) . b as object of F5() by A5;
let f be Morphism of a,b; :: thesis: H2(a,b,f) in the Arrows of F5() . H1(a),H1(b)
A8: ( <^a,b^> c= <^c,d^> & f in <^a,b^> ) by A7, ALTCAT_2:32;
then reconsider g = f as Morphism of c,d ;
( (F3() | F4()) . a = F3() . c & (F3() | F4()) . b = F3() . d & (F3() | F4()) . f = F3() . g ) by A7, Th29, Th30;
then (F3() | F4()) . f in <^a',b'^> by A3, A8;
hence H2(a,b,f) in the Arrows of F5() . H1(a),H1(b) ; :: thesis: verum
end;
A9: now
let a, b, c be object of F4(); :: thesis: ( <^a,b^> <> {} & <^b,c^> <> {} implies for f being Morphism of a,b
for g being Morphism of b,c
for a', b', c' being object of F5() st a' = H1(a) & b' = H1(b) & c' = H1(c) holds
for f' being Morphism of a',b'
for g' being Morphism of b',c' st f' = H2(a,b,f) & g' = H2(b,c,g) holds
H2(a,c,g * f) = g' * f' )

assume A10: ( <^a,b^> <> {} & <^b,c^> <> {} ) ; :: thesis: for f being Morphism of a,b
for g being Morphism of b,c
for a', b', c' being object of F5() st a' = H1(a) & b' = H1(b) & c' = H1(c) holds
for f' being Morphism of a',b'
for g' being Morphism of b',c' st f' = H2(a,b,f) & g' = H2(b,c,g) holds
H2(a,c,g * f) = g' * f'

( a in the carrier of F4() & b in the carrier of F4() & c in the carrier of F4() ) ;
then reconsider a1 = a, b1 = b, c1 = c as object of F1() by A4;
let f be Morphism of a,b; :: thesis: for g being Morphism of b,c
for a', b', c' being object of F5() st a' = H1(a) & b' = H1(b) & c' = H1(c) holds
for f' being Morphism of a',b'
for g' being Morphism of b',c' st f' = H2(a,b,f) & g' = H2(b,c,g) holds
H2(a,c,g * f) = g' * f'

let g be Morphism of b,c; :: thesis: for a', b', c' being object of F5() st a' = H1(a) & b' = H1(b) & c' = H1(c) holds
for f' being Morphism of a',b'
for g' being Morphism of b',c' st f' = H2(a,b,f) & g' = H2(b,c,g) holds
H2(a,c,g * f) = g' * f'

let a', b', c' be object of F5(); :: thesis: ( a' = H1(a) & b' = H1(b) & c' = H1(c) implies for f' being Morphism of a',b'
for g' being Morphism of b',c' st f' = H2(a,b,f) & g' = H2(b,c,g) holds
H2(a,c,g * f) = g' * f' )

assume A11: ( a' = H1(a) & b' = H1(b) & c' = H1(c) ) ; :: thesis: for f' being Morphism of a',b'
for g' being Morphism of b',c' st f' = H2(a,b,f) & g' = H2(b,c,g) holds
H2(a,c,g * f) = g' * f'

let f' be Morphism of a',b'; :: thesis: for g' being Morphism of b',c' st f' = H2(a,b,f) & g' = H2(b,c,g) holds
H2(a,c,g * f) = g' * f'

let g' be Morphism of b',c'; :: thesis: ( f' = H2(a,b,f) & g' = H2(b,c,g) implies H2(a,c,g * f) = g' * f' )
assume A12: ( f' = H2(a,b,f) & g' = H2(b,c,g) ) ; :: thesis: H2(a,c,g * f) = g' * f'
A13: ( <^a,b^> c= <^a1,b1^> & f in <^a,b^> ) by A10, ALTCAT_2:32;
then reconsider f1 = f as Morphism of a1,b1 ;
A14: ( <^b,c^> c= <^b1,c1^> & g in <^b,c^> ) by A10, ALTCAT_2:32;
then reconsider g1 = g as Morphism of b1,c1 ;
A15: <^a,c^> <> {} by A10, ALTCAT_1:def 4;
A16: g * f = g1 * f1 by A10, ALTCAT_2:33;
A17: ( a' = F3() . a1 & b' = F3() . b1 & c' = F3() . c1 ) by A11, Th29;
A18: ( (F3() | F4()) . (g * f) = F3() . (g1 * f1) & f' = F3() . f1 & g' = F3() . g1 ) by A10, A12, A15, A16, Th30;
then A19: ( f' in <^a',b'^> & g' in <^b',c'^> ) by A3, A13, A14, A17;
thus H2(a,c,g * f) = (F3() . g1) * (F3() . f1) by A13, A14, A18, FUNCTOR0:def 24
.= g' * f' by A17, A18, A19, ALTCAT_2:33 ; :: thesis: verum
end;
A20: now
let a be object of F4(); :: thesis: for a' being object of F5() st a' = H1(a) holds
H2(a,a, idm a) = idm a'

let a' be object of F5(); :: thesis: ( a' = H1(a) implies H2(a,a, idm a) = idm a' )
assume A21: a' = H1(a) ; :: thesis: H2(a,a, idm a) = idm a'
a in the carrier of F4() ;
then reconsider a1 = a as object of F1() by A4;
thus H2(a,a, idm a) = F3() . (idm a1) by Th30, ALTCAT_2:35
.= idm (F3() . a1) by FUNCTOR2:2
.= idm a' by A21, Th29, ALTCAT_2:35 ; :: thesis: verum
end;
consider G being strict covariant Functor of F4(),F5() such that
A22: for a being object of F4() holds G . a = H1(a) and
A23: for a, b being object of F4() st <^a,b^> <> {} holds
for f being Morphism of a,b holds G . f = H2(a,b,f) from YELLOW18:sch 8(A5, A6, A9, A20);
take G ; :: thesis: ( G is bijective & ( for a' being object of F4()
for a being object of F1() st a' = a holds
G . a' = F3() . a ) & ( for b', c' being object of F4()
for b, c being object of F1() st <^b',c'^> <> {} & b' = b & c' = c holds
for f' being Morphism of b',c'
for f being Morphism of b,c st f' = f holds
G . f' = (Morph-Map F3(),b,c) . f ) )

A24: ( F3() is injective & F3() is surjective ) by A1, FUNCTOR0:def 36;
then A25: ( F3() is one-to-one & F3() is faithful & F3() is surjective ) by FUNCTOR0:def 34;
A26: now
let a, b be object of F4(); :: thesis: ( H1(a) = H1(b) implies a = b )
( a in the carrier of F4() & b in the carrier of F4() ) ;
then reconsider a1 = a, b1 = b as object of F1() by A4;
assume H1(a) = H1(b) ; :: thesis: a = b
then F3() . a1 = (F3() | F4()) . b by Th29
.= F3() . b1 by Th29 ;
hence a = b by A25, Th32; :: thesis: verum
end;
A27: now
let a, b be object of F4(); :: thesis: ( <^a,b^> <> {} implies for f, g being Morphism of a,b st H2(a,b,f) = H2(a,b,g) holds
f = g )

assume A28: <^a,b^> <> {} ; :: thesis: for f, g being Morphism of a,b st H2(a,b,f) = H2(a,b,g) holds
f = g

( a in the carrier of F4() & b in the carrier of F4() ) ;
then reconsider a1 = a, b1 = b as object of F1() by A4;
let f, g be Morphism of a,b; :: thesis: ( H2(a,b,f) = H2(a,b,g) implies f = g )
A29: ( <^a,b^> c= <^a1,b1^> & f in <^a,b^> & g in <^a,b^> ) by A28, ALTCAT_2:32;
then reconsider f1 = f, g1 = g as Morphism of a1,b1 ;
assume H2(a,b,f) = H2(a,b,g) ; :: thesis: f = g
then F3() . f1 = (F3() | F4()) . g by A28, Th30
.= F3() . g1 by A28, Th30 ;
hence f = g by A25, A29, Th33; :: thesis: verum
end;
A30: for a, b being object of F5() st <^a,b^> <> {} holds
for f being Morphism of a,b ex c, d being object of F4() ex g being Morphism of c,d st
( a = H1(c) & b = H1(d) & <^c,d^> <> {} & f = H2(c,d,g) )
proof
let a, b be object of F5(); :: thesis: ( <^a,b^> <> {} implies for f being Morphism of a,b ex c, d being object of F4() ex g being Morphism of c,d st
( a = H1(c) & b = H1(d) & <^c,d^> <> {} & f = H2(c,d,g) ) )

assume A31: <^a,b^> <> {} ; :: thesis: for f being Morphism of a,b ex c, d being object of F4() ex g being Morphism of c,d st
( a = H1(c) & b = H1(d) & <^c,d^> <> {} & f = H2(c,d,g) )

( a in the carrier of F5() & b in the carrier of F5() & the carrier of F5() c= the carrier of F2() ) by ALTCAT_2:def 11;
then reconsider a1 = a, b1 = b as object of F2() ;
let f be Morphism of a,b; :: thesis: ex c, d being object of F4() ex g being Morphism of c,d st
( a = H1(c) & b = H1(d) & <^c,d^> <> {} & f = H2(c,d,g) )

A32: ( <^a,b^> c= <^a1,b1^> & f in <^a,b^> ) by A31, ALTCAT_2:32;
then reconsider f1 = f as Morphism of a1,b1 ;
consider c1, d1 being object of F1(), g1 being Morphism of c1,d1 such that
A33: ( a1 = F3() . c1 & b1 = F3() . d1 & <^c1,d1^> <> {} & f1 = F3() . g1 ) by A24, A32, Th34;
reconsider c = c1, d = d1 as object of F4() by A2, A33;
A34: g1 in <^c,d^> by A3, A31, A33;
reconsider g = g1 as Morphism of c,d by A3, A31, A33;
take c ; :: thesis: ex d being object of F4() ex g being Morphism of c,d st
( a = H1(c) & b = H1(d) & <^c,d^> <> {} & f = H2(c,d,g) )

take d ; :: thesis: ex g being Morphism of c,d st
( a = H1(c) & b = H1(d) & <^c,d^> <> {} & f = H2(c,d,g) )

take g ; :: thesis: ( a = H1(c) & b = H1(d) & <^c,d^> <> {} & f = H2(c,d,g) )
thus ( a = H1(c) & b = H1(d) & <^c,d^> <> {} & f = H2(c,d,g) ) by A33, A34, Th29, Th30; :: thesis: verum
end;
thus G is bijective from YELLOW18:sch 10(A22, A23, A26, A27, A30); :: thesis: ( ( for a' being object of F4()
for a being object of F1() st a' = a holds
G . a' = F3() . a ) & ( for b', c' being object of F4()
for b, c being object of F1() st <^b',c'^> <> {} & b' = b & c' = c holds
for f' being Morphism of b',c'
for f being Morphism of b,c st f' = f holds
G . f' = (Morph-Map F3(),b,c) . f ) )

hereby :: thesis: for b', c' being object of F4()
for b, c being object of F1() st <^b',c'^> <> {} & b' = b & c' = c holds
for f' being Morphism of b',c'
for f being Morphism of b,c st f' = f holds
G . f' = (Morph-Map F3(),b,c) . f
let a be object of F4(); :: thesis: for a1 being object of F1() st a = a1 holds
G . a = F3() . a1

let a1 be object of F1(); :: thesis: ( a = a1 implies G . a = F3() . a1 )
assume A35: a = a1 ; :: thesis: G . a = F3() . a1
thus G . a = (F3() | F4()) . a by A22
.= F3() . a1 by A35, Th29 ; :: thesis: verum
end;
let b, c be object of F4(); :: thesis: for b, c being object of F1() st <^b,c^> <> {} & b = b & c = c holds
for f' being Morphism of b,c
for f being Morphism of b,c st f' = f holds
G . f' = (Morph-Map F3(),b,c) . f

let b1, c1 be object of F1(); :: thesis: ( <^b,c^> <> {} & b = b1 & c = c1 implies for f' being Morphism of b,c
for f being Morphism of b1,c1 st f' = f holds
G . f' = (Morph-Map F3(),b1,c1) . f )

assume A36: ( <^b,c^> <> {} & b1 = b & c1 = c ) ; :: thesis: for f' being Morphism of b,c
for f being Morphism of b1,c1 st f' = f holds
G . f' = (Morph-Map F3(),b1,c1) . f

let f be Morphism of b,c; :: thesis: for f being Morphism of b1,c1 st f = f holds
G . f = (Morph-Map F3(),b1,c1) . f

let f1 be Morphism of b1,c1; :: thesis: ( f = f1 implies G . f = (Morph-Map F3(),b1,c1) . f1 )
assume A37: f = f1 ; :: thesis: G . f = (Morph-Map F3(),b1,c1) . f1
A38: ( <^b,c^> c= <^b1,c1^> & f in <^b,c^> ) by A36, ALTCAT_2:32;
then A39: <^(F3() . b1),(F3() . c1)^> <> {} by FUNCTOR0:def 19;
thus G . f = (F3() | F4()) . f by A23, A36
.= F3() . f1 by A36, A37, Th30
.= (Morph-Map F3(),b1,c1) . f1 by A38, A39, FUNCTOR0:def 16 ; :: thesis: verum