proposition: Lemma assoc_step_3 p q : linvunitor_h _ ⋆h id_v_square _ ⋆v ((s₁ ⋆h s₂) ⋆h s₃ ⋆v lunitor_h _ ⋆h id_v_square _) = transportf_square p q (id_v_square _ ⋆h linvunitor_h _ ⋆v (lassociator_h _ _ _ ⋆v ((s₁ ⋆h s₂) ⋆h s₃ ⋆v (rassociator_h _ _ _ ⋆v id_v_square _ ⋆h lunitor_h _)))).
proof: Proof. refine (!_). etrans. { do 4 apply maponpaths. apply double_triangle_alt. } unfold transportb_square. rewrite !transportf_square_postwhisker. rewrite transportf_f_square. rewrite runitor_h_lunitor_h. rewrite !square_assoc_v. unfold transportb_square. rewrite !transportf_f_square. rewrite double_triangle_alt_inv. unfold transportb_square. rewrite !transportf_square_prewhisker. rewrite !transportf_f_square. use transportf_square_eq. rewrite linvunitor_h_rinvunitor_h. apply idpath. Qed.
imports: UniMath.MoreFoundations.All UniMath.CategoryTheory.Core.Prelude UniMath.CategoryTheory.Core.Setcategories UniMath.CategoryTheory.Core.TwoCategories UniMath.CategoryTheory.Monads.Monads UniMath.CategoryTheory.TwoSidedDisplayedCats.TwoSidedDispCat UniMath.CategoryTheory.TwoSidedDisplayedCats.Isos UniMath.CategoryTheory.TwoSidedDisplayedCats.Univalence UniMath.CategoryTheory.TwoSidedDisplayedCats.Strictness UniMath.CategoryTheory.TwoSidedDisplayedCats.Examples.Comma UniMath.Bicategories.Core.Bicat UniMath.Bicategories.Core.Examples.BicatOfUnivCats UniMath.Bicategories.DoubleCategories.Basics.DoubleCategoryBasics UniMath.Bicategories.DoubleCategories.Core.DoubleCats UniMath.Bicategories.DoubleCategories.Core.UnivalentDoubleCats UniMath.Bicategories.DoubleCategories.Core.PseudoDoubleSetCats UniMath.Bicategories.DoubleCategories.DerivedLaws