Lemma monoidal_triangle_identity_inv {C : category} (M : monoidal C) (x y : C) : x ⊗^{M}_{l} luinv_{M} y · αinv_{M} x I_{ M} y = ruinv_{M} x ⊗^{ M}_{r} y. Proof. apply pathsinv0. apply (z_iso_inv_on_left _ _ _ _ ((z_iso_from_associator_iso M _ _ _))). cbn. set (luiy := make_z_iso _ _ (monoidal_leftunitorisolaw M y)). set (luixy := functor_on_z_iso (leftwhiskering_functor M x) luiy). set (ruix := make_z_iso _ _ (monoidal_rightunitorisolaw M x)). set (ruixy := functor_on_z_iso (rightwhiskering_functor M y) ruix). apply pathsinv0. apply (z_iso_inv_on_right _ _ _ ruixy). apply (z_iso_inv_on_left _ _ _ _ luixy). exact (! (monoidal_triangleidentity M) x y). Qed.
Require Import UniMath.Foundations.All. Require Import UniMath.MoreFoundations.Notations. Require Import UniMath.MoreFoundations.PartA. 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.Monoidal.WhiskeredBifunctors. Require Import UniMath.CategoryTheory.Adjunctions.Core. Require Import UniMath.CategoryTheory.Equivalences.Core. Require Import UniMath.CategoryTheory.Equivalences.FullyFaithful. Require Import UniMath.CategoryTheory.opp_precat. Import BifunctorNotations. Import MonoidalNotations. Section EquivalenceFromTensorWithUnit. Import MonoidalNotations. End EquivalenceFromTensorWithUnit. Import MonoidalNotations. Import MonoidalNotations. Import MonoidalNotations. Import MonoidalNotations. Import MonoidalNotations.