reserve X,Y for set;
reserve Z for non empty set;

theorem Th6:
  for C1 being non empty AltGraph, C2,C3 being non empty reflexive
AltGraph, F being feasible FunctorStr over C1,C2, G being FunctorStr over C2,C3
  st F is one-to-one & G is one-to-one holds G*F is one-to-one
proof
  let C1 be non empty AltGraph, C2,C3 be non empty reflexive AltGraph, F be
  feasible FunctorStr over C1,C2, G be FunctorStr over C2,C3;
  assume F is one-to-one & G is one-to-one;
  then
A1: the ObjectMap of F is one-to-one & the ObjectMap of G is one-to-one;
  the ObjectMap of G*F = (the ObjectMap of G)*the ObjectMap of F by
FUNCTOR0:def 36;
  hence the ObjectMap of (G*F) is one-to-one by A1;
end;
