let C1 be non empty AltGraph ; :: thesis: for C2, C3 being non empty reflexive AltGraph
for F being feasible FunctorStr of C1,C2
for G being FunctorStr of C2,C3 st F is injective & G is injective holds
G * F is injective
let C2, C3 be non empty reflexive AltGraph ; :: thesis: for F being feasible FunctorStr of C1,C2
for G being FunctorStr of C2,C3 st F is injective & G is injective holds
G * F is injective
let F be feasible FunctorStr of C1,C2; :: thesis: for G being FunctorStr of C2,C3 st F is injective & G is injective holds
G * F is injective
let G be FunctorStr of C2,C3; :: thesis: ( F is injective & G is injective implies G * F is injective )
assume A1:
( F is injective & G is injective )
; :: thesis: G * F is injective
then A2:
( F is one-to-one & G is one-to-one )
by FUNCTOR0:def 34;
A3:
( F is faithful & G is faithful )
by A1, FUNCTOR0:def 34;
A4:
G * F is one-to-one
by A2, Th7;
G * F is faithful
by A3, Th8;
hence
G * F is injective
by A4, FUNCTOR0:def 34; :: thesis: verum