Definition rwhisker_opcartesian {B : bicat} (D : disp_bicat B) : UU := ∏ (x y z : B) (xx : D x) (yy : D y) (zz : D z) (f g : x --> y) (h : y --> z) (ff : xx -->[ f ] yy) (gg : xx -->[ g ] yy) (hh : yy -->[ h ] zz) (α : f ==> g) (αα : ff ==>[ α ] gg), is_opcartesian_2cell _ αα → is_opcartesian_2cell _ (αα ▹▹ hh). Section OpCartesian2CellUnique. Context {B : bicat} {D : disp_bicat B} {x y : B} {f g : x --> y} {α : f ==> g} {xx : D x} {yy : D y} {ff : xx -->[ f ] yy} {gg₁ gg₂ : xx -->[ g ] yy} {αα : ff ==>[ α ] gg₁} {ββ : ff ==>[ α ] gg₂} (Hαα : is_opcartesian_2cell D αα) (Hββ : is_opcartesian_2cell D ββ). Let m : gg₁ ==>[ id₂ g ] gg₂. Proof. use (is_opcartesian_2cell_factor _ Hαα). exact (transportb (λ z, _ ==>[ z ] _) (id2_right _) ββ). Defined.
Require Import UniMath.Foundations.All. Require Import UniMath.MoreFoundations.All. Require Import UniMath.CategoryTheory.Core.Categories. Require Import UniMath.CategoryTheory.Core.Isos. Require Import UniMath.CategoryTheory.Core.Univalence. Require Import UniMath.CategoryTheory.Core.Functors. Require Import UniMath.CategoryTheory.Core.NaturalTransformations. Require Import UniMath.CategoryTheory.DisplayedCats.Core. Require Import UniMath.CategoryTheory.DisplayedCats.Fibrations. Require Import UniMath.Bicategories.Core.Bicat. Import Bicat.Notations. Require Import UniMath.Bicategories.Core.Invertible_2cells. Require Import UniMath.Bicategories.Core.Univalence. Require Import UniMath.Bicategories.Core.TransportLaws. Require Import UniMath.CategoryTheory.DisplayedCats.Core. Require Import UniMath.Bicategories.DisplayedBicats.DispBicat. Import DispBicat.Notations. Require Import UniMath.Bicategories.DisplayedBicats.DispInvertibles.