Lemma whisker_to_total (x y : V) : δ_{cm (x ⊗ y)} · (x ⊗^{V}_{l} ε_{cm y}) #⊗ (ε_{cm x} ⊗^{V}_{r} y) · mon_runitor x ⊗^{V} mon_lunitor y = identity (x ⊗ y). Proof. use (z_iso_inv_to_right _ _ _ _ (_,,_)). { use (is_z_iso_bifunctor_z_iso V). - exact (_ ,, monoidal_rightunitorisolaw V x). - exact (_ ,, monoidal_leftunitorisolaw V y). } rewrite id_left. refine (_ @ id_right _). apply pathsinv0. use z_iso_inv_on_right. refine (! whisker_to_total' x y @ _). now rewrite ! assoc. 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.Limits.BinProducts. Require Import UniMath.CategoryTheory.DisplayedCats.Core. Require Import UniMath.CategoryTheory.PrecategoryBinProduct. Require Import UniMath.CategoryTheory.Monoidal.WhiskeredBifunctors. Require Import UniMath.CategoryTheory.Monoidal.Categories. Import BifunctorNotations. Require Import UniMath.CategoryTheory.Monoidal.Functors. Require Import UniMath.CategoryTheory.Monoidal.Displayed.Monoidal. Require Import UniMath.CategoryTheory.Monoidal.Displayed.TotalMonoidal. Require Import UniMath.CategoryTheory.Monoidal.Structure.Cartesian. Require Import UniMath.CategoryTheory.Monoidal.Structure.Symmetric. Require Import UniMath.CategoryTheory.Monoidal.Structure.SymmetricDiagonal. Require Import UniMath.CategoryTheory.Monoidal.Comonoids.Category. Require Import UniMath.CategoryTheory.Monoidal.Comonoids.Tensor. Import MonoidalNotations. Import ComonoidNotations. Import ComonoidNotations.