Lemma lineator_laxlaws_binprod: lineator_laxlaws Mon_V ActC ActD FF lineator_data_binprod. Proof. repeat split; red; intros; unfold lineator_data_binprod. - etrans. { repeat rewrite assoc. apply cancel_postcomposition. apply (lineator_linnatleft _ _ _ _ cll v (_,,_) (_,,_) (_,,_)). } repeat rewrite assoc'. apply maponpaths. etrans. { apply BinProductOfArrows_comp. } etrans. 2: { apply pathsinv0, BinProductOfArrows_comp. } apply maponpaths_12; apply lineator_linnatleft. - etrans. { repeat rewrite assoc. apply cancel_postcomposition. apply (lineator_linnatright _ _ _ _ cll v1 v2 (_,,_) f). } repeat rewrite assoc'. apply maponpaths. etrans. { apply BinProductOfArrows_comp. } etrans. 2: { apply pathsinv0, BinProductOfArrows_comp. } apply maponpaths_12; apply lineator_linnatright. - etrans. { rewrite assoc'. apply maponpaths. etrans. { apply BinProductOfArrows_comp. } apply maponpaths_12; apply lineator_preservesactor. } etrans. { apply maponpaths. repeat rewrite assoc'. apply pathsinv0, BinProductOfArrows_comp. } etrans. { rewrite assoc. apply cancel_postcomposition. apply (lineator_preservesactor _ _ _ _ cll v w (_,,_)). } etrans. 2: { apply cancel_postcomposition. apply maponpaths. apply pathsinv0, (functor_comp (leftwhiskering_functor ActD v)). } repeat rewrite assoc'. do 2 apply maponpaths. repeat rewrite assoc. etrans. 2: { apply cancel_postcomposition. apply pathsinv0, (lineator_linnatleft _ _ _ _ cll v (_,,_) (_,,_) (_,,_)). } rewrite assoc'. apply maponpaths. etrans. 2: { apply pathsinv0, BinProductOfArrows_comp. } apply idpath. - etrans. 2: { apply (lineator_preservesunitor _ _ _ _ cll (_,,_)). } rewrite assoc'. apply maponpaths. etrans. { apply BinProductOfArrows_comp. } cbn. apply maponpaths_12; apply lineator_preservesunitor. 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. Require Import UniMath.CategoryTheory.PrecategoryBinProduct. Require Import UniMath.CategoryTheory.whiskering. Require Import UniMath.CategoryTheory.Monoidal.WhiskeredBifunctors. Require Import UniMath.CategoryTheory.Monoidal.Categories. Require Import UniMath.CategoryTheory.Monoidal.Functors. Require Import UniMath.CategoryTheory.Actegories.Actegories. Require Import UniMath.CategoryTheory.Actegories.MorphismsOfActegories. Require Import UniMath.CategoryTheory.Actegories.ConstructionOfActegories. Require Import UniMath.CategoryTheory.coslicecat. Require Import UniMath.CategoryTheory.Monoidal.Examples.MonoidalPointedObjects. Require Import UniMath.CategoryTheory.Limits.BinProducts. Require Import UniMath.CategoryTheory.Limits.BinCoproducts. Require Import UniMath.CategoryTheory.Limits.Coproducts. Require Import UniMath.CategoryTheory.Actegories.CoproductsInActegories. Require Import UniMath.CategoryTheory.Actegories.ProductsInActegories. Require Import UniMath.CategoryTheory.Actegories.ProductActegory. Import BifunctorNotations. Import MonoidalNotations. Import ActegoryNotations. Section ActegoryMorphismFromRelativeLaxCommutator. End ActegoryMorphismFromRelativeLaxCommutator.