Lemma bidisp_actionbicat_disp_prebicat_ops : disp_prebicat_ops bidisp_actionbicat_disp_prebicat_1_id_comp_cells. Proof. split; [| split; [| split ; [| split ; [| split]]]]. - aux_bidisp_actionbicat_disp_prebicat_ops. rewrite lwhisker_id2. rewrite id2_right. rewrite id2_rwhisker. apply pathsinv0, id2_left. - aux_bidisp_actionbicat_disp_prebicat_ops. rewrite <- rwhisker_vcomp. etrans. { repeat rewrite vassocl. do 5 apply maponpaths. apply lunitor_lwhisker. } rewrite rwhisker_vcomp. rewrite rinvunitor_runitor. rewrite id2_rwhisker. rewrite id2_right. rewrite lunitor_triangle. rewrite vcomp_lunitor. rewrite vassocr. apply maponpaths_2. apply (lhs_left_invert_cell _ _ _ (is_invertible_2cell_rassociator _ _ _)). cbn. apply pathsinv0, lunitor_triangle. - aux_bidisp_actionbicat_disp_prebicat_ops. rewrite <- lwhisker_vcomp. etrans. { repeat rewrite vassocl. do 5 apply maponpaths. apply runitor_triangle. } etrans. { do 2 apply maponpaths. rewrite vassocr. apply maponpaths_2. apply rinvunitor_triangle. } rewrite vcomp_runitor. etrans. { do 2 apply maponpaths. rewrite vassocr. rewrite rinvunitor_runitor. apply id2_left. } rewrite vassocr. apply maponpaths_2. apply lunitor_lwhisker. - aux_bidisp_actionbicat_disp_prebicat_ops. etrans. 2: { do 3 apply maponpaths. apply maponpaths_2. rewrite <- rwhisker_vcomp. rewrite vassocr. apply maponpaths_2. apply (! lunitor_triangle _ _ _ _ _ _). } etrans. 2: { do 2 apply maponpaths. rewrite vassocr. apply maponpaths_2. rewrite vassocr. apply maponpaths_2. apply (! vcomp_lunitor _ _ _). } rewrite vassocr. rewrite <- linvunitor_assoc. rewrite !vassocr. rewrite linvunitor_lunitor. rewrite id2_left. rewrite vassocl. apply maponpaths. rewrite (! hcomp_identity_right _ _ _ _). rewrite (! hcomp_identity_left _ _ _ _). apply triangle_r_inv. - aux_bidisp_actionbicat_disp_prebicat_ops. rewrite <- lwhisker_vcomp. etrans. 2: { apply maponpaths. rewrite vassocr. apply maponpaths_2. rewrite vassocr. apply maponpaths_2. apply (! lunitor_lwhisker _ _). } etrans. 2: { apply maponpaths. rewrite vassocl. apply maponpaths. rewrite vassocr. apply maponpaths_2. rewrite vassocr. apply maponpaths_2. apply (! rinvunitor_triangle _ _ _ _ _ _). } rewrite vassocr. rewrite rwhisker_vcomp. rewrite rinvunitor_runitor. rewrite id2_rwhisker. rewrite id2_left. rewrite left_unit_inv_assoc. rewrite vassocr. apply maponpaths_2. rewrite rinvunitor_natural. apply maponpaths. apply hcomp_identity_right. - exact ax2. *) Qed.
Require Import UniMath.Foundations.PartD. Require Import UniMath.MoreFoundations.All. Require Import UniMath.CategoryTheory.Core.Categories. Require Import UniMath.CategoryTheory.Core.Functors. Require Import UniMath.CategoryTheory.Core.Isos. Require Import UniMath.CategoryTheory.Core.NaturalTransformations. Require Import UniMath.CategoryTheory.DisplayedCats.Core. Require Import UniMath.CategoryTheory.DisplayedCats.Total. Require Import UniMath.CategoryTheory.DisplayedCats.Constructions. Require Import UniMath.CategoryTheory.Monoidal.Categories. Require Import UniMath.CategoryTheory.Monoidal.WhiskeredBifunctors. Require Import UniMath.CategoryTheory.Monoidal.Functors. Require Import UniMath.CategoryTheory.Monoidal.Displayed.WhiskeredDisplayedBifunctors. Require Import UniMath.CategoryTheory.Monoidal.Displayed.Monoidal. Require Import UniMath.CategoryTheory.Monoidal.Displayed.TotalMonoidal. Require Import UniMath.Bicategories.MonoidalCategories.EndofunctorsWhiskeredMonoidal. Require Import UniMath.Bicategories.MonoidalCategories.WhiskeredMonoidalFromBicategory. Require Import UniMath.Bicategories.MonoidalCategories.ActionBasedStrongFunctorsWhiskeredMonoidal. Require Import UniMath.Bicategories.Core.Bicat. Require Import UniMath.Bicategories.Core.BicategoryLaws. Require Import UniMath.Bicategories.Core.Unitors. Require Import UniMath.Bicategories.DisplayedBicats.DispBicat. Require Import UniMath.Bicategories.Core.Invertible_2cells. Import Bicat.Notations. Import BifunctorNotations. Import DisplayedBifunctorNotations.