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 Th13:
  F1 is_transformable_to F2 & F2 is_transformable_to F3 implies G1
  *(p1`*`p) = (G1*p1)`*`(G1*p)
proof
  assume that
A1: F1 is_transformable_to F2 and
A2: F2 is_transformable_to F3;
A3: G1*F1 is_transformable_to G1*F2 & G1*F2 is_transformable_to G1*F3 by A1,A2
,Th10;
A4: now
    let a be Object of A;
A5: G1.(F2.a) = (G1*F2).a & G1.(F3.a) = (G1*F3).a by FUNCTOR0:33;
A6: G1.(F1.a) = (G1*F1).a by FUNCTOR0:33;
    then reconsider G1ta = (G1*p)!a as Morphism of G1.(F1.a), G1.(F2.a) by
FUNCTOR0:33;
A7: <^F1.a,F2.a^> <> {} & <^F2.a,F3.a^> <> {} by A1,A2;
    thus (G1*(p1`*`p))!a = G1.((p1`*`p)!a) by A1,A2,Th11,FUNCTOR2:2
      .= G1.((p1!a)*(p!a)) by A1,A2,FUNCTOR2:def 5
      .= G1.(p1!a)*G1.(p!a) by A7,FUNCTOR0:def 23
      .= G1.(p1!a)*G1ta by A1,Th11
      .= ((G1*p1)!a)*((G1*p)!a) by A2,A6,A5,Th11
      .= ((G1*p1)`*`(G1*p))!a by A3,FUNCTOR2:def 5;
  end;
  F1 is_transformable_to F3 by A1,A2,FUNCTOR2:2;
  hence thesis by A4,Th10,FUNCTOR2:3;
end;
