proposition: Lemma disp_tensor_with_id_right {C : category} {D : disp_cat C} {M : monoidal C} (DM : disp_monoidal D M) {x y z : C} {f : z --> y} {g : y --> z} (p : g · f = identity y) (xx : D x) (yy : D y) : transportb (mor_disp _ _) p (id_disp yy) ⊗⊗^{DM}_{r} xx = transportb _ (maponpaths (λ i, i ⊗^{M}_{r} x) p @ bifunctor_rightid M x y) (id_disp (yy ⊗⊗_{DM} _)).
proof: Proof. set (pp := disp_tensor_distributes_over_transportb_left DM p xx (transportb _ p (id_disp yy)) (id_disp yy) (idpath _)). rewrite <- transport_b_b. etrans. 2: { apply maponpaths. apply (disp_bifunctor_rightid DM _ _ _ _). } refine (_ @ pp). apply maponpaths. now rewrite transportb_const. Qed.
imports: UniMath.Foundations.All UniMath.MoreFoundations.All UniMath.CategoryTheory.Core.Categories UniMath.CategoryTheory.Core.Functors UniMath.CategoryTheory.Core.Isos UniMath.CategoryTheory.Core.NaturalTransformations UniMath.CategoryTheory.Monoidal.WhiskeredBifunctors UniMath.CategoryTheory.Monoidal.Categories UniMath.CategoryTheory.Monoidal.Displayed.WhiskeredDisplayedBifunctors UniMath.CategoryTheory.DisplayedCats.Core UniMath.CategoryTheory.DisplayedCats.Functors UniMath.CategoryTheory.DisplayedCats.Constructions UniMath.CategoryTheory.DisplayedCats.Isos UniMath.CategoryTheory.DisplayedCats.NaturalTransformations UniMath.CategoryTheory.Monoidal.Displayed.Monoidal