Proposition cleaving_to_indexed_cat_laws : indexed_cat_laws cleaving_to_indexed_cat_data. Proof. repeat split. - intros x y f xx ; cbn. use (cartesian_factorisation_unique (HD _ _ _ _)). rewrite !mor_disp_transportf_postwhisker. rewrite !transport_f_f. rewrite id_left_disp. refine (!_). rewrite assoc_disp_var. rewrite transport_f_f. etrans. { do 2 apply maponpaths. etrans. { apply maponpaths_2. apply idtoiso_fiber_category. } apply idtoiso_disp_cartesian_lift. } rewrite mor_disp_transportf_prewhisker. rewrite transport_f_f. rewrite assoc_disp_var. rewrite transport_f_f. rewrite cartesian_factorisation_commutes. unfold transportb. rewrite mor_disp_transportf_prewhisker. rewrite transport_f_f. rewrite assoc_disp. unfold transportb. rewrite transport_f_f. rewrite cartesian_factorisation_commutes. rewrite mor_disp_transportf_postwhisker. rewrite transport_f_f. rewrite assoc_disp_var. rewrite transport_f_f. rewrite cartesian_factorisation_commutes. rewrite mor_disp_transportf_prewhisker. rewrite transport_f_f. rewrite id_right_disp. unfold transportb. rewrite transport_f_f. apply maponpaths_2. apply homset_property. - intros x y f xx ; cbn. use (cartesian_factorisation_unique (HD _ _ _ _)). rewrite !mor_disp_transportf_postwhisker. rewrite !transport_f_f. rewrite id_left_disp. refine (!_). rewrite assoc_disp_var. rewrite transport_f_f. etrans. { do 2 apply maponpaths. etrans. { apply maponpaths_2. apply idtoiso_fiber_category. } apply idtoiso_disp_cartesian_lift. } rewrite mor_disp_transportf_prewhisker. rewrite transport_f_f. rewrite assoc_disp_var. rewrite transport_f_f. rewrite cartesian_factorisation_commutes. unfold transportb. rewrite mor_disp_transportf_prewhisker. rewrite transport_f_f. rewrite assoc_disp. unfold transportb. rewrite transport_f_f. rewrite cartesian_factorisation_commutes. rewrite mor_disp_transportf_postwhisker. rewrite transport_f_f. rewrite id_left_disp. unfold transportb. rewrite transport_f_f. apply maponpaths_2. apply homset_property. - intros w x y z f g h ww ; cbn. rewrite mor_disp_transportf_postwhisker. rewrite transport_f_f. use (cartesian_factorisation_unique (HD _ _ _ _)). rewrite assoc_disp_var. rewrite !mor_disp_transportf_postwhisker. rewrite transport_f_f. rewrite assoc_disp_var. rewrite transport_f_f. rewrite assoc_disp_var. rewrite mor_disp_transportf_prewhisker. rewrite transport_f_f. etrans. { do 3 apply maponpaths. etrans. { apply maponpaths_2. apply idtoiso_fiber_category. } apply idtoiso_disp_cartesian_lift. } rewrite !mor_disp_transportf_prewhisker. rewrite transport_f_f. rewrite cartesian_factorisation_commutes. unfold transportb. rewrite mor_disp_transportf_prewhisker. rewrite transport_f_f. rewrite assoc_disp. unfold transportb. rewrite transport_f_f. rewrite cartesian_factorisation_commutes. rewrite mor_disp_transportf_postwhisker. rewrite transport_f_f. refine (!_). rewrite assoc_disp_var. rewrite transport_f_f. rewrite assoc_disp_var. rewrite transport_f_f. rewrite cartesian_factorisation_commutes. rewrite mor_disp_transportf_prewhisker. rewrite transport_f_f. rewrite assoc_disp. unfold transportb. rewrite transport_f_f. rewrite cartesian_factorisation_commutes. rewrite mor_disp_transportf_postwhisker. rewrite assoc_disp_var. rewrite transport_f_f. rewrite cartesian_factorisation_commutes. rewrite mor_disp_transportf_prewhisker. rewrite !transport_f_f. apply maponpaths_2. apply homset_property. Qed.
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.OppositeCategory.Core. Require Import UniMath.CategoryTheory.DisplayedCats.Core. Require Import UniMath.CategoryTheory.DisplayedCats.Isos. Require Import UniMath.CategoryTheory.DisplayedCats.Fibrations. Require Import UniMath.CategoryTheory.DisplayedCats.Fiber. Require Import UniMath.CategoryTheory.DisplayedCats.Univalence. Require Import UniMath.CategoryTheory.IndexedCategories.IndexedCategory.