Proposition double_triangle_alt {C : double_cat} {x y z : C} (h : x -->h y) (k : y -->h z) : rassociator_h h _ k ⋆v (id_v_square h ⋆h lunitor_h k) = transportb_square (id_v_left _) (id_v_left _) (runitor_h h ⋆h id_v_square _). Proof. rewrite <- double_triangle'. unfold transportb_square. rewrite transportf_square_postwhisker. etrans. { apply maponpaths. apply square_assoc_v. } unfold transportb_square. rewrite transportf_f_square. rewrite rassociator_lassociator_h. unfold transportb_square. rewrite transportf_square_prewhisker. rewrite transportf_f_square. rewrite square_id_left_v. unfold transportb_square. rewrite transportf_f_square. apply transportf_square_eq. apply idpath. Qed.
Require Import UniMath.MoreFoundations.All. Require Import UniMath.CategoryTheory.Core.Prelude. Require Import UniMath.CategoryTheory.TwoSidedDisplayedCats.TwoSidedDispCat. Require Import UniMath.CategoryTheory.TwoSidedDisplayedCats.Univalence. Require Import UniMath.Bicategories.Core.Bicat. Import Bicat.Notations. Require Import UniMath.Bicategories.DoubleCategories.Core.DoubleCats. Require Import UniMath.Bicategories.DoubleCategories.DerivedLaws.TransportLaws. Require Import UniMath.Bicategories.DoubleCategories.DerivedLaws.Variations. Import TransportSquare.