Definition comp_comprehension_nat_trans {C₁ C₂ C₃ : cat_with_terminal_cleaving} {χ₁ : comprehension_functor C₁} {χ₂ : comprehension_functor C₂} {χ₃ : comprehension_functor C₃} {F : functor_with_terminal_cleaving C₁ C₂} {G : functor_with_terminal_cleaving C₂ C₃} (Fχ : comprehension_nat_trans χ₁ χ₂ F) (Gχ : comprehension_nat_trans χ₂ χ₃ G) : comprehension_nat_trans χ₁ χ₃ (F · G). Proof. simple refine (_ ,, _). - refine (λ x xx, #G (comprehension_nat_trans_mor Fχ xx) · comprehension_nat_trans_mor Gχ _ ,, _). abstract (cbn ; rewrite id_right ; rewrite !assoc' ; etrans ; [ apply maponpaths ; apply comprehension_nat_trans_mor_comm | ] ; rewrite <- functor_comp ; apply maponpaths ; apply comprehension_nat_trans_mor_comm). - abstract (intros x₁ x₂ f xx₁ xx₂ ff ; use subtypePath ; [ intro ; apply homset_property | ] ; unfold transportb ; refine (!_) ; refine (pr1_transportf (A := C₃⟦_,_⟧) _ _ @ _) ; rewrite transportf_const ; cbn ; rewrite !assoc ; rewrite <- functor_comp ; refine (!_) ; etrans ; [ apply maponpaths_2 ; apply maponpaths ; exact (comprehension_nat_trans_comm Fχ ff) | ] ; rewrite functor_comp ; rewrite !assoc' ; apply maponpaths ; apply (comprehension_nat_trans_comm Gχ)). Defined.
Require Import UniMath.Foundations.All. Require Import UniMath.MoreFoundations.All. Require Import UniMath.CategoryTheory.Core.Prelude. Require Import UniMath.CategoryTheory.DisplayedCats.Core. Require Import UniMath.CategoryTheory.DisplayedCats.Functors. Require Import UniMath.CategoryTheory.DisplayedCats.NaturalTransformations. Require Import UniMath.CategoryTheory.DisplayedCats.Fibrations. Require Import UniMath.CategoryTheory.DisplayedCats.Isos. Require Import UniMath.CategoryTheory.DisplayedCats.Univalence. Require Import UniMath.CategoryTheory.DisplayedCats.Codomain. Require Import UniMath.CategoryTheory.DisplayedCats.Codomain.CodFunctor. Require Import UniMath.CategoryTheory.DisplayedCats.DisplayedFunctorEq. Require Import UniMath.CategoryTheory.DisplayedCats.ComprehensionC. Require Import UniMath.CategoryTheory.Limits.Terminal. Require Import UniMath.CategoryTheory.Limits.Preservation. Require Import UniMath.Bicategories.Core.Bicat. Import Bicat.Notations. Require Import UniMath.Bicategories.Core.Examples.BicatOfUnivCats. Require Import UniMath.Bicategories.ComprehensionCat.BicatOfCompCat.DispCatTerminal. Require Import UniMath.Bicategories.ComprehensionCat.BicatOfCompCat.FibTerminal. Require Import UniMath.Bicategories.DisplayedBicats.DispBicat. Import DispBicat.Notations. Require Import UniMath.Bicategories.DisplayedBicats.DispAdjunctions. Require Import UniMath.Bicategories.DisplayedBicats.DispInvertibles. Require Import UniMath.Bicategories.DisplayedBicats.DispUnivalence. Require Import UniMath.Bicategories.DisplayedBicats.Examples.Sub1Cell. Require Import UniMath.Bicategories.DisplayedBicats.Examples.DisplayedCatToBicat.