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;

theorem Th16:
  G1 is_transformable_to G2 implies H1*q*F1 = H1*(q*F1)
proof
A1: H1*G2*F1 = H1*(G2*F1) by FUNCTOR0:32;
  then reconsider m = H1*(q*F1) as transformation of H1*G1*F1, H1*G2*F1 by
FUNCTOR0:32;
  assume
A2: G1 is_transformable_to G2;
A3: now
    let a be Object of A;
A4: (G1*F1).a = G1.(F1.a) & (G2*F1).a = G2.(F1.a) by FUNCTOR0:33;
    thus (H1*q*F1)!a = (H1*q)!(F1.a) by A2,Th10,Th12
      .= H1.(q!(F1.a)) by A2,Th11
      .= H1.((q*F1)!a) by A2,A4,Th12
      .= (H1*(q*F1))!a by A2,Th10,Th11
      .= m!a by A1,FUNCTOR0:32;
  end;
  H1*G1 is_transformable_to H1*G2 by A2,Th10;
  hence thesis by A3,Th10,FUNCTOR2:3;
end;
