let A, B be non empty AltGraph ; :: thesis: for F being Covariant FunctorStr of A,B st F is surjective holds
for a, b being object of B st <^a,b^> <> {} holds
for f being Morphism of a,b ex c, d being object of A ex g being Morphism of c,d st
( a = F . c & b = F . d & <^c,d^> <> {} & f = F . g )

let F be Covariant FunctorStr of A,B; :: thesis: ( F is surjective implies for a, b being object of B st <^a,b^> <> {} holds
for f being Morphism of a,b ex c, d being object of A ex g being Morphism of c,d st
( a = F . c & b = F . d & <^c,d^> <> {} & f = F . g ) )

given f being ManySortedFunction of the Arrows of A,the Arrows of B * the ObjectMap of F such that A1: ( f = the MorphMap of F & f is "onto" ) ; :: according to FUNCTOR0:def 33,FUNCTOR0:def 35 :: thesis: ( not F is onto or for a, b being object of B st <^a,b^> <> {} holds
for f being Morphism of a,b ex c, d being object of A ex g being Morphism of c,d st
( a = F . c & b = F . d & <^c,d^> <> {} & f = F . g ) )

assume A2: rng the ObjectMap of F = [:the carrier of B,the carrier of B:] ; :: according to FUNCTOR0:def 8,FUNCT_2:def 3 :: thesis: for a, b being object of B st <^a,b^> <> {} holds
for f being Morphism of a,b ex c, d being object of A ex g being Morphism of c,d st
( a = F . c & b = F . d & <^c,d^> <> {} & f = F . g )

A3: dom the ObjectMap of F = [:the carrier of A,the carrier of A:] by FUNCT_2:def 1;
let a, b be object of B; :: thesis: ( <^a,b^> <> {} implies for f being Morphism of a,b ex c, d being object of A ex g being Morphism of c,d st
( a = F . c & b = F . d & <^c,d^> <> {} & f = F . g ) )

assume A4: <^a,b^> <> {} ; :: thesis: for f being Morphism of a,b ex c, d being object of A ex g being Morphism of c,d st
( a = F . c & b = F . d & <^c,d^> <> {} & f = F . g )

let f be Morphism of a,b; :: thesis: ex c, d being object of A ex g being Morphism of c,d st
( a = F . c & b = F . d & <^c,d^> <> {} & f = F . g )

[a,b] in rng the ObjectMap of F by A2, ZFMISC_1:def 2;
then consider x being set such that
A5: ( x in [:the carrier of A,the carrier of A:] & [a,b] = the ObjectMap of F . x ) by A3, FUNCT_1:def 5;
consider c, d being set such that
A6: ( c in the carrier of A & d in the carrier of A & [c,d] = x ) by A5, ZFMISC_1:def 2;
reconsider c = c, d = d as object of A by A6;
take c ; :: thesis: ex d being object of A ex g being Morphism of c,d st
( a = F . c & b = F . d & <^c,d^> <> {} & f = F . g )

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

the ObjectMap of F is Covariant by FUNCTOR0:def 13;
then consider g being Function of the carrier of A,the carrier of B such that
A7: the ObjectMap of F = [:g,g:] by FUNCTOR0:def 2;
( the ObjectMap of F . c,c = [(g . c),(g . c)] & the ObjectMap of F . d,d = [(g . d),(g . d)] ) by A7, FUNCT_3:96;
then ( F . c = g . c & F . d = g . d ) by MCART_1:7;
then A8: the ObjectMap of F . c,d = [(F . c),(F . d)] by A7, FUNCT_3:96;
rng (Morph-Map F,c,d) = (the Arrows of B * the ObjectMap of F) . [c,d] by A1, A5, A6, MSUALG_3:def 3
.= <^a,b^> by A5, A6, FUNCT_2:21 ;
then consider g being set such that
A9: ( g in dom (Morph-Map F,c,d) & f = (Morph-Map F,c,d) . g ) by A4, FUNCT_1:def 5;
reconsider g = g as Morphism of c,d by A9;
take g ; :: thesis: ( a = F . c & b = F . d & <^c,d^> <> {} & f = F . g )
thus ( a = F . c & b = F . d & <^c,d^> <> {} ) by A5, A6, A8, A9, ZFMISC_1:33; :: thesis: f = F . g
thus f = F . g by A4, A5, A6, A8, A9, FUNCTOR0:def 16; :: thesis: verum