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;
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;
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 = gthen 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 ) )
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