reserve A for non empty AltCatStr,
  B, C for non empty reflexive AltCatStr,
  F for feasible Covariant FunctorStr over A, B,
  G for feasible Covariant FunctorStr over B, C,
  M for feasible Contravariant FunctorStr over A, B,
  N for feasible Contravariant FunctorStr over B, C,
  o1, o2 for Object of A,
  m for Morphism of o1, o2;
reserve A, B, C, D for transitive with_units non empty AltCatStr,
  F1, F2, F3 for covariant Functor of A, B,
  G1, G2, G3 for covariant Functor of B, C,
  H1, H2 for covariant Functor of C, D,
  p for transformation of F1, F2,
  p1 for transformation of F2, F3,
  q for transformation of G1, G2,
  q1 for transformation of G2, G3,
  r for transformation of H1, H2;
reserve A, B, C, D for category,
  F1, F2, F3 for covariant Functor of A, B,
  G1, G2, G3 for covariant Functor of B, C;
reserve t for natural_transformation of F1, F2,
  s for natural_transformation of G1, G2,
  s1 for natural_transformation of G2, G3;
reserve e for natural_equivalence of F1, F2,
  e1 for natural_equivalence of F2, F3,
  f for natural_equivalence of G1, G2;

theorem Th36:
  G1, G2 are_naturally_equivalent implies G1*F1, G2*F1
  are_naturally_equivalent & f*F1 is natural_equivalence of G1*F1, G2*F1
proof
  assume
A1: G1, G2 are_naturally_equivalent;
  then
 G1 is_naturally_transformable_to G2;
  then reconsider k = f*F1 as natural_transformation of G1*F1, G2*F1 by Th29;
A2: now
    let a be Object of A;
    G1 is_transformable_to G2 by A1,Def4;
    then
A3: k!a = f!(F1.a) by Th12;
    (G1*F1).a = G1.(F1.a) & (G2*F1).a = G2.(F1.a) by FUNCTOR0:33;
    hence k!a is iso by A1,A3,Def5;
  end;
  G1*F1, G2*F1 are_naturally_equivalent
  by Lm2,A1,Th10,A2;
  hence thesis by A2,Def5;
end;
