Proposition square_between_companions_counit : runitor h ▿s (linvunitor (id_h x) ▵s counit_are_companions c₁ ⋆h γ₁) = counit_are_companions c₂. Proof. unfold γ₁, square_between_companions. etrans. { do 2 apply maponpaths. apply maponpaths_2. refine (!_). apply lunitor_v_comp_square''. } etrans. { do 2 apply maponpaths. rewrite rwhisker_lwhisker_square. rewrite <- lwhisker_hcomp_square. apply maponpaths. rewrite <- rwhisker_lwhisker_square. rewrite <- rwhisker_hcomp_square. apply maponpaths. rewrite lrwhisker_hcomp_square. rewrite <- rwhisker_square_comp. rewrite lunitor_linvunitor. rewrite rwhisker_square_id. rewrite double_bicat_interchange. rewrite are_companions_right'. rewrite <- id_h_square_bicat_id. rewrite uwhisker_id_v_square. rewrite <- dwhisker_square_comp. rewrite <- dwhisker_vcomp_square. apply maponpaths. rewrite runitor_v_comp_square'. rewrite lunitor_h_comp_square'. apply idpath. } rewrite <- rwhisker_dwhisker_square. rewrite <- rwhisker_square_comp. rewrite rinvunitor_runitor. rewrite rwhisker_square_id. rewrite lwhisker_dwhisker_square. rewrite <- lwhisker_square_comp. rewrite runitor_lunitor_identity. rewrite linvunitor_lunitor. rewrite lwhisker_square_id. rewrite !dwhisker_uwhisker_square. rewrite <- !dwhisker_square_comp. rewrite <- !uwhisker_square_comp. rewrite linvunitor_lunitor. rewrite uwhisker_square_id. rewrite !vassocl. rewrite rinvunitor_runitor. rewrite id2_right. rewrite linvunitor_lunitor. apply dwhisker_square_id. Qed.
Require Import UniMath.MoreFoundations.All. Require Import UniMath.CategoryTheory.Core.Prelude. Require Import UniMath.Bicategories.Core.Bicat. Import Bicat.Notations. Require Import UniMath.Bicategories.Core.Unitors. Require Import UniMath.Bicategories.Core.Invertible_2cells. Require Import UniMath.Bicategories.Core.Univalence. Require Import UniMath.Bicategories.Core.BicategoryLaws. Require Import UniMath.Bicategories.Morphisms.Adjunctions. Require Import UniMath.Bicategories.DoubleCategories.DoubleBicat.VerityDoubleBicat. Require Import UniMath.Bicategories.DoubleCategories.DoubleBicat.DerivedLaws. Require Import UniMath.Bicategories.DoubleCategories.DoubleBicat.CellsAndSquares. Require Import UniMath.Bicategories.DoubleCategories.DoubleBicat.UnderlyingCats. Require Import UniMath.Bicategories.DoubleCategories.DoubleBicat.LocalUnivalence. Require Import UniMath.Bicategories.DoubleCategories.DoubleBicat.CompanionPairs.