proposition: Lemma disp_lhs_right_invert_cell' {a b : C} {f g h : a --> b} {x : f ==> g} {y : invertible_2cell g h} {z : f ==> h} {p : x = z • y^-1} {aa : D a} {bb : D b} {ff : aa -->[f] bb} {gg : aa -->[g] bb} {hh : aa -->[h] bb} (xx : ff ==>[x] gg) (yy : gg ==>[y] hh) (zz : ff ==>[z] hh) (H : is_disp_invertible_2cell y yy) (q := lhs_right_invert_cell _ _ _ _ p) (pp : xx = transportb (λ x, _ ==>[x] _) p (zz •• disp_inv_cell (yy,,H))) : xx •• yy = transportb (λ x, _ ==>[x] _) q zz.
proof: Proof. set (yy' := (yy,,H) : disp_invertible_2cell _ _ _). etrans. { apply maponpaths_2. apply pp. } etrans. { apply disp_mor_transportf_postwhisker. } etrans. { apply maponpaths. apply disp_vassocl. } etrans. { unfold transportb. apply (transport_f_f (λ x' : f ==> h, ff ==>[x'] hh)). } etrans. { apply maponpaths. apply maponpaths. apply disp_vcomp_linv. } etrans. { apply maponpaths. apply disp_mor_transportf_prewhisker. } etrans. { unfold transportb. apply (transport_f_f (λ x' : f ==> h, ff ==>[x'] hh)). } etrans. { apply maponpaths. apply disp_id2_right. } etrans. { unfold transportb. apply (transport_f_f (λ x' : f ==> h, ff ==>[x'] hh)). } unfold transportb. apply maponpaths_2. apply cellset_property. Qed.
imports: UniMath.Foundations.All UniMath.MoreFoundations.All UniMath.CategoryTheory.Core.Categories UniMath.CategoryTheory.DisplayedCats.Core UniMath.CategoryTheory.DisplayedCats.Total UniMath.Bicategories.Core.Bicat UniMath.Bicategories.Core.Invertible_2cells UniMath.Bicategories.Core.BicategoryLaws UniMath.Bicategories.Core.Unitors UniMath.Bicategories.Morphisms.Adjunctions UniMath.Bicategories.Core.Univalence