Lemma compositions_preserves_tensor_nat {C D E : category} {TC : tensor C} {TD : tensor D} {TE : tensor E} {F : functor C D} {G : functor D E} (ptF : preserves_tensor TC TD F) (ptG : preserves_tensor TD TE G) : preserves_tensor_nat (compositions_preserves_tensor_data ptF ptG). Proof. intros x1 x2 y1 y2 f g. unfold compositions_preserves_tensor_data. simpl. rewrite assoc'. etrans. { apply cancel_precomposition. apply (pathsinv0 (functor_comp G _ _)). } rewrite (pr2 ptF). rewrite assoc. rewrite functor_comp. rewrite assoc. rewrite (pr2 ptG). apply idpath. Qed.
Require Import UniMath.Foundations.All. Require Import UniMath.MoreFoundations.All. Require Import UniMath.CategoryTheory.Core.Categories. Require Import UniMath.CategoryTheory.Core.Functors. Require Import UniMath.CategoryTheory.Core.NaturalTransformations. Require Import UniMath.CategoryTheory.Core.Isos. Import TensorNotation. Import TensorUnitNotation. Import TensorNotation. Import TensorUnitNotation. Import TensorNotation. Import TensorUnitNotation. Import TensorNotation. Import TensorUnitNotation. Import UnitorsAssociatorNotation. Import TensorNotation. Import TensorUnitNotation. Import UnitorsAssociatorNotation.