let A, B be category; :: thesis: for F being covariant Functor of A,B st F is bijective holds
for G being covariant Functor of B,A st ( for b being Object of B holds F . (G . b) = b ) & ( for a, b being Object of B st <^a,b^> <> {} holds
for f being Morphism of a,b holds F . (G . f) = f ) holds
FunctorStr(# the ObjectMap of G, the MorphMap of G #) = F "

let F be covariant Functor of A,B; :: thesis: ( F is bijective implies for G being covariant Functor of B,A st ( for b being Object of B holds F . (G . b) = b ) & ( for a, b being Object of B st <^a,b^> <> {} holds
for f being Morphism of a,b holds F . (G . f) = f ) holds
FunctorStr(# the ObjectMap of G, the MorphMap of G #) = F " )

assume A1: F is bijective ; :: thesis: for G being covariant Functor of B,A st ( for b being Object of B holds F . (G . b) = b ) & ( for a, b being Object of B st <^a,b^> <> {} holds
for f being Morphism of a,b holds F . (G . f) = f ) holds
FunctorStr(# the ObjectMap of G, the MorphMap of G #) = F "

let G be covariant Functor of B,A; :: thesis: ( ( for b being Object of B holds F . (G . b) = b ) & ( for a, b being Object of B st <^a,b^> <> {} holds
for f being Morphism of a,b holds F . (G . f) = f ) implies FunctorStr(# the ObjectMap of G, the MorphMap of G #) = F " )

assume that
A2: for b being Object of B holds F . (G . b) = b and
A3: for a, b being Object of B st <^a,b^> <> {} holds
for f being Morphism of a,b holds F . (G . f) = f ; :: thesis: FunctorStr(# the ObjectMap of G, the MorphMap of G #) = F "
A4: now :: thesis: for a, b being Object of B st <^a,b^> <> {} holds
for f being Morphism of a,b holds (F * G) . f = (id B) . f
let a, b be Object of B; :: thesis: ( <^a,b^> <> {} implies for f being Morphism of a,b holds (F * G) . f = (id B) . f )
assume A5: <^a,b^> <> {} ; :: thesis: for f being Morphism of a,b holds (F * G) . f = (id B) . f
let f be Morphism of a,b; :: thesis: (F * G) . f = (id B) . f
thus (F * G) . f = F . (G . f) by A5, FUNCTOR3:6
.= f by A3, A5
.= (id B) . f by A5, FUNCTOR0:31 ; :: thesis: verum
end;
now :: thesis: for b being Object of B holds (F * G) . b = (id B) . b
let b be Object of B; :: thesis: (F * G) . b = (id B) . b
thus (F * G) . b = F . (G . b) by FUNCTOR0:33
.= b by A2
.= (id B) . b by FUNCTOR0:29 ; :: thesis: verum
end;
hence FunctorStr(# the ObjectMap of G, the MorphMap of G #) = F " by A1, A4, Th4, YELLOW18:1; :: thesis: verum