proposition: Lemma cartesian_linvunitor' (x : V) : diag x · semi_cart_to_unit Ccart x ⊗^{M}_{r} x = mon_linvunitor x.
proof: Proof. etrans. { refine (_ @ postcompWithBinProductArrow _ (is_cartesian_BinProduct Ccart _ _) (is_cartesian_BinProduct Ccart _ _) (semi_cart_to_unit Ccart x) (identity x) (identity x) (identity x)). apply maponpaths. rewrite <- (when_bifunctor_becomes_rightwhiskering M). exact (cartesian_tensor_mor Ccart (semi_cart_to_unit Ccart x) (identity x)). } do 2 rewrite id_left. exact (cartesian_linvunitor x). Qed.
imports: UniMath.Foundations.All UniMath.MoreFoundations.All UniMath.CategoryTheory.Core.Categories UniMath.CategoryTheory.Core.Functors UniMath.CategoryTheory.Core.NaturalTransformations UniMath.CategoryTheory.Core.Isos UniMath.CategoryTheory.catiso UniMath.CategoryTheory.Limits.BinProducts UniMath.CategoryTheory.DisplayedCats.Core UniMath.CategoryTheory.DisplayedCats.Total UniMath.CategoryTheory.DisplayedCats.Projection UniMath.CategoryTheory.DisplayedCats.CatIsoDisplayed UniMath.CategoryTheory.PrecategoryBinProduct UniMath.CategoryTheory.Monoidal.WhiskeredBifunctors UniMath.CategoryTheory.Monoidal.Categories UniMath.CategoryTheory.Monoidal.Functors UniMath.CategoryTheory.Monoidal.Displayed.Monoidal UniMath.CategoryTheory.Monoidal.Displayed.TotalMonoidal UniMath.CategoryTheory.Monoidal.Structure.Cartesian UniMath.CategoryTheory.Monoidal.Structure.Symmetric UniMath.CategoryTheory.Monoidal.Structure.SymmetricDiagonal UniMath.CategoryTheory.Monoidal.Comonoids.Category UniMath.CategoryTheory.Monoidal.Comonoids.Tensor UniMath.CategoryTheory.Monoidal.Comonoids.Monoidal UniMath.CategoryTheory.Monoidal.Comonoids.Symmetric