Library UniMath.Bicategories.ComprehensionCat.Universes.TypeConstructions.Truncation
Require Import UniMath.MoreFoundations.All.
Require Import UniMath.CategoryTheory.Core.Prelude.
Require Import UniMath.CategoryTheory.Limits.Terminal.
Require Import UniMath.CategoryTheory.Limits.Pullbacks.
Require Import UniMath.CategoryTheory.Limits.Preservation.
Require Import UniMath.CategoryTheory.DisplayedCats.Core.
Require Import UniMath.CategoryTheory.DisplayedCats.Fibrations.
Require Import UniMath.CategoryTheory.RegularAndExact.RegularEpi.
Require Import UniMath.CategoryTheory.RegularAndExact.RegularCategory.
Require Import UniMath.CategoryTheory.RegularAndExact.RegularEpiFacts.
Require Import UniMath.CategoryTheory.Monics.
Require Import UniMath.Bicategories.Core.Bicat.
Import Bicat.Notations.
Require Import UniMath.Bicategories.Core.Examples.StructuredCategories.
Require Import UniMath.Bicategories.ComprehensionCat.BicatOfCompCat.
Require Import UniMath.Bicategories.ComprehensionCat.DFLCompCat.
Require Import UniMath.Bicategories.ComprehensionCat.CompCatNotations.
Require Import UniMath.Bicategories.ComprehensionCat.ComprehensionEso.
Require Import UniMath.Bicategories.ComprehensionCat.ComprehensionPreservation.
Require Import UniMath.Bicategories.ComprehensionCat.LocalProperty.LocalProperties.
Require Import UniMath.Bicategories.ComprehensionCat.LocalProperty.Examples.
Require Import UniMath.Bicategories.ComprehensionCat.LocalProperty.DFLCompCatExamples.
Require Import UniMath.Bicategories.ComprehensionCat.Biequivalence.DFLCompCatToFinLim.
Require Import UniMath.Bicategories.ComprehensionCat.Biequivalence.LocalProperty.
Require Import UniMath.Bicategories.ComprehensionCat.Universes.CatWithUniv.CatWithOb.
Require Import UniMath.Bicategories.ComprehensionCat.Universes.CatWithUniv.UniverseInCat.
Require Import UniMath.Bicategories.ComprehensionCat.Universes.CatWithUniv.UniverseDispBicat.
Require Import UniMath.Bicategories.ComprehensionCat.Universes.CatTypes.Truncation.
Require Import UniMath.Bicategories.ComprehensionCat.Universes.CompCatUniv.CompCatOb.
Require Import UniMath.Bicategories.ComprehensionCat.Universes.CompCatUniv.UniverseType.
Require Import UniMath.Bicategories.ComprehensionCat.Universes.CompCatUniv.DFLCompCatUniv.
Require Import UniMath.Bicategories.ComprehensionCat.Universes.CompCatTypes.Truncation.
Require Import UniMath.Bicategories.ComprehensionCat.Universes.Biequiv.ToCatFinLimUniv.
Local Open Scope cat.
Local Open Scope comp_cat.
Section TruncationUniverse.
Context {C : dfl_full_comp_cat_with_univ}
(tr : fiberwise_cat_property
regular_local_property
(dfl_full_comp_cat_with_univ_types C)).
Require Import UniMath.CategoryTheory.Core.Prelude.
Require Import UniMath.CategoryTheory.Limits.Terminal.
Require Import UniMath.CategoryTheory.Limits.Pullbacks.
Require Import UniMath.CategoryTheory.Limits.Preservation.
Require Import UniMath.CategoryTheory.DisplayedCats.Core.
Require Import UniMath.CategoryTheory.DisplayedCats.Fibrations.
Require Import UniMath.CategoryTheory.RegularAndExact.RegularEpi.
Require Import UniMath.CategoryTheory.RegularAndExact.RegularCategory.
Require Import UniMath.CategoryTheory.RegularAndExact.RegularEpiFacts.
Require Import UniMath.CategoryTheory.Monics.
Require Import UniMath.Bicategories.Core.Bicat.
Import Bicat.Notations.
Require Import UniMath.Bicategories.Core.Examples.StructuredCategories.
Require Import UniMath.Bicategories.ComprehensionCat.BicatOfCompCat.
Require Import UniMath.Bicategories.ComprehensionCat.DFLCompCat.
Require Import UniMath.Bicategories.ComprehensionCat.CompCatNotations.
Require Import UniMath.Bicategories.ComprehensionCat.ComprehensionEso.
Require Import UniMath.Bicategories.ComprehensionCat.ComprehensionPreservation.
Require Import UniMath.Bicategories.ComprehensionCat.LocalProperty.LocalProperties.
Require Import UniMath.Bicategories.ComprehensionCat.LocalProperty.Examples.
Require Import UniMath.Bicategories.ComprehensionCat.LocalProperty.DFLCompCatExamples.
Require Import UniMath.Bicategories.ComprehensionCat.Biequivalence.DFLCompCatToFinLim.
Require Import UniMath.Bicategories.ComprehensionCat.Biequivalence.LocalProperty.
Require Import UniMath.Bicategories.ComprehensionCat.Universes.CatWithUniv.CatWithOb.
Require Import UniMath.Bicategories.ComprehensionCat.Universes.CatWithUniv.UniverseInCat.
Require Import UniMath.Bicategories.ComprehensionCat.Universes.CatWithUniv.UniverseDispBicat.
Require Import UniMath.Bicategories.ComprehensionCat.Universes.CatTypes.Truncation.
Require Import UniMath.Bicategories.ComprehensionCat.Universes.CompCatUniv.CompCatOb.
Require Import UniMath.Bicategories.ComprehensionCat.Universes.CompCatUniv.UniverseType.
Require Import UniMath.Bicategories.ComprehensionCat.Universes.CompCatUniv.DFLCompCatUniv.
Require Import UniMath.Bicategories.ComprehensionCat.Universes.CompCatTypes.Truncation.
Require Import UniMath.Bicategories.ComprehensionCat.Universes.Biequiv.ToCatFinLimUniv.
Local Open Scope cat.
Local Open Scope comp_cat.
Section TruncationUniverse.
Context {C : dfl_full_comp_cat_with_univ}
(tr : fiberwise_cat_property
regular_local_property
(dfl_full_comp_cat_with_univ_types C)).
Definition truncation_in_dfl_full_comp_cat_to_finlim_univ_code
(trc : stable_truncation_in_comp_cat_univ C tr)
{Γ : C}
(a : Γ --> [] & dfl_full_comp_cat_univ_ob C)
: Γ --> [] & dfl_full_comp_cat_univ_ob C.
Show proof.
Arguments truncation_in_dfl_full_comp_cat_to_finlim_univ_code /.
Definition truncation_in_dfl_full_comp_cat_to_finlim_univ_z_iso
(trc : stable_truncation_in_comp_cat_univ C tr)
{Γ : C}
(a : Γ --> [] & dfl_full_comp_cat_univ_ob C)
: z_iso
(cat_el_map_el
(dfl_full_comp_cat_to_finlim_el_map
(dfl_full_comp_cat_univ_ob C)
(dfl_full_comp_cat_el C))
(truncation_in_dfl_full_comp_cat_to_finlim_univ_code trc a))
(regular_category_im
(regular_local_property_base_regular tr)
(cat_el_map_mor
(dfl_full_comp_cat_to_finlim_el_map
(dfl_full_comp_cat_univ_ob C)
(dfl_full_comp_cat_el C))
a)).
Show proof.
Proposition truncation_in_dfl_full_comp_cat_to_finlim_univ_comm
(trc : stable_truncation_in_comp_cat_univ C tr)
{Γ : C}
(a : Γ --> [] & dfl_full_comp_cat_univ_ob C)
: truncation_in_dfl_full_comp_cat_to_finlim_univ_z_iso trc a
· regular_epi_mono_factorization_mono
(is_regular_category_pullbacks (regular_local_property_base_regular tr))
(is_regular_category_coeqs_of_kernel_pair (regular_local_property_base_regular tr))
(cat_el_map_mor
(dfl_full_comp_cat_to_finlim_el_map (dfl_full_comp_cat_univ_ob C)
(dfl_full_comp_cat_el C))
a)
=
cat_el_map_mor
(dfl_full_comp_cat_to_finlim_el_map
(dfl_full_comp_cat_univ_ob C)
(dfl_full_comp_cat_el C))
(truncation_in_dfl_full_comp_cat_to_finlim_univ_code trc a).
Show proof.
Definition truncation_in_dfl_full_comp_cat_to_finlim_univ
(trc : stable_truncation_in_comp_cat_univ C tr)
: cat_univ_codes_trunc
(C := dfl_full_comp_cat_with_univ_to_univ_cat_finlim C)
(regular_local_property_base_regular tr).
Show proof.
Proposition is_stable_truncation_in_dfl_full_comp_cat_to_finlim_univ
(trc : stable_truncation_in_comp_cat_univ C tr)
: is_stable_cat_univ_trunc
(truncation_in_dfl_full_comp_cat_to_finlim_univ trc).
Show proof.
Definition stable_truncation_in_dfl_full_comp_cat_to_finlim_univ
(trc : stable_truncation_in_comp_cat_univ C tr)
: cat_univ_stable_codes_trunc
(C := dfl_full_comp_cat_with_univ_to_univ_cat_finlim C)
(regular_local_property_base_regular tr).
Show proof.
(trc : stable_truncation_in_comp_cat_univ C tr)
{Γ : C}
(a : Γ --> [] & dfl_full_comp_cat_univ_ob C)
: Γ --> [] & dfl_full_comp_cat_univ_ob C.
Show proof.
use (dfl_full_comp_cat_tm_to_mor_univ
(C := dfl_full_comp_cat_with_univ_types C)).
refine (truncation_in_comp_cat_univ_code tr trc _).
use (dfl_full_comp_cat_mor_to_tm_univ
(C := dfl_full_comp_cat_with_univ_types C)).
exact a.
(C := dfl_full_comp_cat_with_univ_types C)).
refine (truncation_in_comp_cat_univ_code tr trc _).
use (dfl_full_comp_cat_mor_to_tm_univ
(C := dfl_full_comp_cat_with_univ_types C)).
exact a.
Arguments truncation_in_dfl_full_comp_cat_to_finlim_univ_code /.
Definition truncation_in_dfl_full_comp_cat_to_finlim_univ_z_iso
(trc : stable_truncation_in_comp_cat_univ C tr)
{Γ : C}
(a : Γ --> [] & dfl_full_comp_cat_univ_ob C)
: z_iso
(cat_el_map_el
(dfl_full_comp_cat_to_finlim_el_map
(dfl_full_comp_cat_univ_ob C)
(dfl_full_comp_cat_el C))
(truncation_in_dfl_full_comp_cat_to_finlim_univ_code trc a))
(regular_category_im
(regular_local_property_base_regular tr)
(cat_el_map_mor
(dfl_full_comp_cat_to_finlim_el_map
(dfl_full_comp_cat_univ_ob C)
(dfl_full_comp_cat_el C))
a)).
Show proof.
refine (z_iso_comp
(z_iso_comp _ (truncation_in_comp_cat_univ_z_iso _ trc _)) _).
- use comp_cat_comp_fiber_z_iso.
use (comp_cat_el_map_on_eq_iso (dfl_full_comp_cat_el C)).
apply (dfl_full_comp_cat_tm_to_mor_to_tm_univ
(dfl_full_comp_cat_univ_ob C)).
- exact (comprehension_preserves_truncation tr _).
(z_iso_comp _ (truncation_in_comp_cat_univ_z_iso _ trc _)) _).
- use comp_cat_comp_fiber_z_iso.
use (comp_cat_el_map_on_eq_iso (dfl_full_comp_cat_el C)).
apply (dfl_full_comp_cat_tm_to_mor_to_tm_univ
(dfl_full_comp_cat_univ_ob C)).
- exact (comprehension_preserves_truncation tr _).
Proposition truncation_in_dfl_full_comp_cat_to_finlim_univ_comm
(trc : stable_truncation_in_comp_cat_univ C tr)
{Γ : C}
(a : Γ --> [] & dfl_full_comp_cat_univ_ob C)
: truncation_in_dfl_full_comp_cat_to_finlim_univ_z_iso trc a
· regular_epi_mono_factorization_mono
(is_regular_category_pullbacks (regular_local_property_base_regular tr))
(is_regular_category_coeqs_of_kernel_pair (regular_local_property_base_regular tr))
(cat_el_map_mor
(dfl_full_comp_cat_to_finlim_el_map (dfl_full_comp_cat_univ_ob C)
(dfl_full_comp_cat_el C))
a)
=
cat_el_map_mor
(dfl_full_comp_cat_to_finlim_el_map
(dfl_full_comp_cat_univ_ob C)
(dfl_full_comp_cat_el C))
(truncation_in_dfl_full_comp_cat_to_finlim_univ_code trc a).
Show proof.
unfold truncation_in_dfl_full_comp_cat_to_finlim_univ_z_iso.
do 2 refine (assoc' _ _ _ @ _).
etrans.
{
do 2 apply maponpaths.
exact (comprehension_preserves_truncation_comm _ _).
}
etrans.
{
apply maponpaths.
exact (truncation_in_comp_cat_univ_comm tr trc _).
}
etrans.
{
apply comprehension_functor_mor_comm.
}
apply id_right.
do 2 refine (assoc' _ _ _ @ _).
etrans.
{
do 2 apply maponpaths.
exact (comprehension_preserves_truncation_comm _ _).
}
etrans.
{
apply maponpaths.
exact (truncation_in_comp_cat_univ_comm tr trc _).
}
etrans.
{
apply comprehension_functor_mor_comm.
}
apply id_right.
Definition truncation_in_dfl_full_comp_cat_to_finlim_univ
(trc : stable_truncation_in_comp_cat_univ C tr)
: cat_univ_codes_trunc
(C := dfl_full_comp_cat_with_univ_to_univ_cat_finlim C)
(regular_local_property_base_regular tr).
Show proof.
use make_cat_univ_codes_trunc.
- exact (λ Γ a, truncation_in_dfl_full_comp_cat_to_finlim_univ_code trc a).
- exact (λ Γ a, truncation_in_dfl_full_comp_cat_to_finlim_univ_z_iso trc a).
- exact (λ Γ a, truncation_in_dfl_full_comp_cat_to_finlim_univ_comm trc a).
- exact (λ Γ a, truncation_in_dfl_full_comp_cat_to_finlim_univ_code trc a).
- exact (λ Γ a, truncation_in_dfl_full_comp_cat_to_finlim_univ_z_iso trc a).
- exact (λ Γ a, truncation_in_dfl_full_comp_cat_to_finlim_univ_comm trc a).
Proposition is_stable_truncation_in_dfl_full_comp_cat_to_finlim_univ
(trc : stable_truncation_in_comp_cat_univ C tr)
: is_stable_cat_univ_trunc
(truncation_in_dfl_full_comp_cat_to_finlim_univ trc).
Show proof.
intros Γ Δ s a ; cbn.
refine (assoc _ _ _ @ _).
etrans.
{
exact (stable_truncation_in_comp_cat_univ_code_stable_mor C _ trc s _).
}
refine (maponpaths (λ z, z · _) _).
use truncation_in_comp_cat_univ_code_eq.
exact (dfl_full_comp_cat_mor_to_sub_tm (dfl_full_comp_cat_univ_ob C) s a).
refine (assoc _ _ _ @ _).
etrans.
{
exact (stable_truncation_in_comp_cat_univ_code_stable_mor C _ trc s _).
}
refine (maponpaths (λ z, z · _) _).
use truncation_in_comp_cat_univ_code_eq.
exact (dfl_full_comp_cat_mor_to_sub_tm (dfl_full_comp_cat_univ_ob C) s a).
Definition stable_truncation_in_dfl_full_comp_cat_to_finlim_univ
(trc : stable_truncation_in_comp_cat_univ C tr)
: cat_univ_stable_codes_trunc
(C := dfl_full_comp_cat_with_univ_to_univ_cat_finlim C)
(regular_local_property_base_regular tr).
Show proof.
use make_cat_univ_stable_codes_trunc.
- exact (truncation_in_dfl_full_comp_cat_to_finlim_univ trc).
- exact (is_stable_truncation_in_dfl_full_comp_cat_to_finlim_univ trc).
- exact (truncation_in_dfl_full_comp_cat_to_finlim_univ trc).
- exact (is_stable_truncation_in_dfl_full_comp_cat_to_finlim_univ trc).
Definition truncation_in_dfl_full_comp_cat_from_finlim_univ_code
(trc : cat_univ_stable_codes_trunc
(C := dfl_full_comp_cat_with_univ_to_univ_cat_finlim C)
(regular_local_property_base_regular tr))
{Γ : C}
(a : tm Γ (dfl_full_comp_cat_univ Γ))
: tm Γ (dfl_full_comp_cat_univ Γ).
Show proof.
Arguments truncation_in_dfl_full_comp_cat_from_finlim_univ_code /.
Definition truncation_in_dfl_full_comp_cat_from_finlim_univ_z_iso
(trc : cat_univ_stable_codes_trunc
(C := dfl_full_comp_cat_with_univ_to_univ_cat_finlim C)
(regular_local_property_base_regular tr))
{Γ : C}
(a : tm Γ (dfl_full_comp_cat_univ Γ))
: z_iso
(Γ & comp_cat_univ_el
(dfl_full_comp_cat_el C)
(truncation_in_dfl_full_comp_cat_from_finlim_univ_code trc a))
(Γ & regular_local_property_trunc
tr
(comp_cat_univ_el (dfl_full_comp_cat_el C) a)).
Show proof.
Proposition truncation_in_dfl_full_comp_cat_from_finlim_univ_comm
(trc : cat_univ_stable_codes_trunc
(C := dfl_full_comp_cat_with_univ_to_univ_cat_finlim C)
(regular_local_property_base_regular tr))
{Γ : C}
(a : tm Γ (dfl_full_comp_cat_univ Γ))
: truncation_in_dfl_full_comp_cat_from_finlim_univ_z_iso trc a · π _
=
π _.
Show proof.
Definition truncation_in_dfl_full_comp_cat_from_finlim_univ
(trc : cat_univ_stable_codes_trunc
(C := dfl_full_comp_cat_with_univ_to_univ_cat_finlim C)
(regular_local_property_base_regular tr))
: truncation_in_comp_cat_univ C tr.
Show proof.
Proposition is_stable_truncation_in_dfl_full_comp_cat_from_finlim_univ
(trc : cat_univ_stable_codes_trunc
(C := dfl_full_comp_cat_with_univ_to_univ_cat_finlim C)
(regular_local_property_base_regular tr))
: trunc_in_comp_cat_univ_is_stable
C tr
(truncation_in_dfl_full_comp_cat_from_finlim_univ trc).
Show proof.
Definition stable_truncation_in_dfl_full_comp_cat_from_finlim_univ
(trc : cat_univ_stable_codes_trunc
(C := dfl_full_comp_cat_with_univ_to_univ_cat_finlim C)
(regular_local_property_base_regular tr))
: stable_truncation_in_comp_cat_univ C tr.
Show proof.
(trc : cat_univ_stable_codes_trunc
(C := dfl_full_comp_cat_with_univ_to_univ_cat_finlim C)
(regular_local_property_base_regular tr))
{Γ : C}
(a : tm Γ (dfl_full_comp_cat_univ Γ))
: tm Γ (dfl_full_comp_cat_univ Γ).
Show proof.
use (dfl_full_comp_cat_mor_to_tm_univ
(C := dfl_full_comp_cat_with_univ_types C)).
use (cat_univ_trunc_code trc).
use (dfl_full_comp_cat_tm_to_mor_univ
(C := dfl_full_comp_cat_with_univ_types C)).
exact a.
(C := dfl_full_comp_cat_with_univ_types C)).
use (cat_univ_trunc_code trc).
use (dfl_full_comp_cat_tm_to_mor_univ
(C := dfl_full_comp_cat_with_univ_types C)).
exact a.
Arguments truncation_in_dfl_full_comp_cat_from_finlim_univ_code /.
Definition truncation_in_dfl_full_comp_cat_from_finlim_univ_z_iso
(trc : cat_univ_stable_codes_trunc
(C := dfl_full_comp_cat_with_univ_to_univ_cat_finlim C)
(regular_local_property_base_regular tr))
{Γ : C}
(a : tm Γ (dfl_full_comp_cat_univ Γ))
: z_iso
(Γ & comp_cat_univ_el
(dfl_full_comp_cat_el C)
(truncation_in_dfl_full_comp_cat_from_finlim_univ_code trc a))
(Γ & regular_local_property_trunc
tr
(comp_cat_univ_el (dfl_full_comp_cat_el C) a)).
Show proof.
refine (z_iso_comp
(cat_univ_trunc_z_iso
trc
_)
_).
use z_iso_inv.
refine (z_iso_comp
(comprehension_preserves_truncation tr _)
_).
use regular_category_im_eq_triangle_z_iso.
- use comp_cat_comp_fiber_z_iso.
use (comp_cat_el_map_on_eq_iso (dfl_full_comp_cat_el C)).
abstract
(rewrite dfl_full_comp_cat_tm_to_mor_to_tm_univ ;
apply idpath).
- abstract
(refine (!_) ;
refine (comprehension_functor_mor_comm _ _ @ _) ;
apply id_right).
(cat_univ_trunc_z_iso
trc
_)
_).
use z_iso_inv.
refine (z_iso_comp
(comprehension_preserves_truncation tr _)
_).
use regular_category_im_eq_triangle_z_iso.
- use comp_cat_comp_fiber_z_iso.
use (comp_cat_el_map_on_eq_iso (dfl_full_comp_cat_el C)).
abstract
(rewrite dfl_full_comp_cat_tm_to_mor_to_tm_univ ;
apply idpath).
- abstract
(refine (!_) ;
refine (comprehension_functor_mor_comm _ _ @ _) ;
apply id_right).
Proposition truncation_in_dfl_full_comp_cat_from_finlim_univ_comm
(trc : cat_univ_stable_codes_trunc
(C := dfl_full_comp_cat_with_univ_to_univ_cat_finlim C)
(regular_local_property_base_regular tr))
{Γ : C}
(a : tm Γ (dfl_full_comp_cat_univ Γ))
: truncation_in_dfl_full_comp_cat_from_finlim_univ_z_iso trc a · π _
=
π _.
Show proof.
refine (assoc' _ _ _ @ _).
etrans.
{
apply maponpaths.
refine (assoc' _ _ _ @ _).
apply maponpaths.
exact (comprehension_preserves_truncation_inv_comm tr _).
}
etrans.
{
apply maponpaths.
apply regular_category_im_map_left.
}
rewrite id_right.
exact (cat_univ_trunc_comm trc _).
etrans.
{
apply maponpaths.
refine (assoc' _ _ _ @ _).
apply maponpaths.
exact (comprehension_preserves_truncation_inv_comm tr _).
}
etrans.
{
apply maponpaths.
apply regular_category_im_map_left.
}
rewrite id_right.
exact (cat_univ_trunc_comm trc _).
Definition truncation_in_dfl_full_comp_cat_from_finlim_univ
(trc : cat_univ_stable_codes_trunc
(C := dfl_full_comp_cat_with_univ_to_univ_cat_finlim C)
(regular_local_property_base_regular tr))
: truncation_in_comp_cat_univ C tr.
Show proof.
use make_truncation_in_comp_cat_univ.
- exact (λ Γ a, truncation_in_dfl_full_comp_cat_from_finlim_univ_code trc a).
- exact (λ Γ a, truncation_in_dfl_full_comp_cat_from_finlim_univ_z_iso trc a).
- exact (λ Γ a, truncation_in_dfl_full_comp_cat_from_finlim_univ_comm trc a).
- exact (λ Γ a, truncation_in_dfl_full_comp_cat_from_finlim_univ_code trc a).
- exact (λ Γ a, truncation_in_dfl_full_comp_cat_from_finlim_univ_z_iso trc a).
- exact (λ Γ a, truncation_in_dfl_full_comp_cat_from_finlim_univ_comm trc a).
Proposition is_stable_truncation_in_dfl_full_comp_cat_from_finlim_univ
(trc : cat_univ_stable_codes_trunc
(C := dfl_full_comp_cat_with_univ_to_univ_cat_finlim C)
(regular_local_property_base_regular tr))
: trunc_in_comp_cat_univ_is_stable
C tr
(truncation_in_dfl_full_comp_cat_from_finlim_univ trc).
Show proof.
intros Γ Δ s a.
use dfl_full_comp_cat_univ_tm_eq ; simpl.
etrans.
{
rewrite !assoc'.
etrans.
{
apply maponpaths.
exact (comp_cat_comp_mor_sub_dfl_comp_cat_univ C s).
}
simpl.
rewrite !assoc.
etrans.
{
apply maponpaths_2.
apply PullbackArrow_PullbackPr1.
}
rewrite !assoc'.
apply maponpaths.
exact (PullbackArrow_PullbackPr1
(comp_cat_pullback
(dfl_full_comp_cat_univ_ob C)
_)
_
_
_
_).
}
refine (cat_univ_stable_codes_trunc_stable trc s _ @ _).
refine (!_).
etrans.
{
exact (PullbackArrow_PullbackPr1
(comp_cat_pullback
(dfl_full_comp_cat_univ_ob C)
_)
_
_
_
_).
}
apply maponpaths.
exact (dfl_full_comp_cat_tm_to_mor_univ_subst s a).
use dfl_full_comp_cat_univ_tm_eq ; simpl.
etrans.
{
rewrite !assoc'.
etrans.
{
apply maponpaths.
exact (comp_cat_comp_mor_sub_dfl_comp_cat_univ C s).
}
simpl.
rewrite !assoc.
etrans.
{
apply maponpaths_2.
apply PullbackArrow_PullbackPr1.
}
rewrite !assoc'.
apply maponpaths.
exact (PullbackArrow_PullbackPr1
(comp_cat_pullback
(dfl_full_comp_cat_univ_ob C)
_)
_
_
_
_).
}
refine (cat_univ_stable_codes_trunc_stable trc s _ @ _).
refine (!_).
etrans.
{
exact (PullbackArrow_PullbackPr1
(comp_cat_pullback
(dfl_full_comp_cat_univ_ob C)
_)
_
_
_
_).
}
apply maponpaths.
exact (dfl_full_comp_cat_tm_to_mor_univ_subst s a).
Definition stable_truncation_in_dfl_full_comp_cat_from_finlim_univ
(trc : cat_univ_stable_codes_trunc
(C := dfl_full_comp_cat_with_univ_to_univ_cat_finlim C)
(regular_local_property_base_regular tr))
: stable_truncation_in_comp_cat_univ C tr.
Show proof.
use make_stable_truncation_in_comp_cat_univ.
- exact (truncation_in_dfl_full_comp_cat_from_finlim_univ trc).
- exact (is_stable_truncation_in_dfl_full_comp_cat_from_finlim_univ trc).
- exact (truncation_in_dfl_full_comp_cat_from_finlim_univ trc).
- exact (is_stable_truncation_in_dfl_full_comp_cat_from_finlim_univ trc).
Definition stable_truncation_in_dfl_full_comp_cat_weq_finlim_univ
: stable_truncation_in_comp_cat_univ C tr
≃
cat_univ_stable_codes_trunc
(C := dfl_full_comp_cat_with_univ_to_univ_cat_finlim C)
(regular_local_property_base_regular tr).
Show proof.
: stable_truncation_in_comp_cat_univ C tr
≃
cat_univ_stable_codes_trunc
(C := dfl_full_comp_cat_with_univ_to_univ_cat_finlim C)
(regular_local_property_base_regular tr).
Show proof.
use weq_iso.
- exact stable_truncation_in_dfl_full_comp_cat_to_finlim_univ.
- exact stable_truncation_in_dfl_full_comp_cat_from_finlim_univ.
- abstract
(intro trc ;
use stable_truncation_in_comp_cat_univ_eq ;
intros Γ a ; cbn ;
refine (dfl_full_comp_cat_tm_to_mor_to_tm_univ (dfl_full_comp_cat_univ_ob C) _
@ _) ;
apply maponpaths ;
exact (dfl_full_comp_cat_tm_to_mor_to_tm_univ (dfl_full_comp_cat_univ_ob C) _)).
- abstract
(intro trc ;
use cat_univ_stable_codes_trunc_eq ;
intros Γ a ; cbn ;
refine (dfl_full_comp_cat_mor_to_tm_to_mor_univ (dfl_full_comp_cat_univ_ob C) _
@ _) ;
apply maponpaths ;
exact (dfl_full_comp_cat_mor_to_tm_to_mor_univ (dfl_full_comp_cat_univ_ob C) _)).
End TruncationUniverse.- exact stable_truncation_in_dfl_full_comp_cat_to_finlim_univ.
- exact stable_truncation_in_dfl_full_comp_cat_from_finlim_univ.
- abstract
(intro trc ;
use stable_truncation_in_comp_cat_univ_eq ;
intros Γ a ; cbn ;
refine (dfl_full_comp_cat_tm_to_mor_to_tm_univ (dfl_full_comp_cat_univ_ob C) _
@ _) ;
apply maponpaths ;
exact (dfl_full_comp_cat_tm_to_mor_to_tm_univ (dfl_full_comp_cat_univ_ob C) _)).
- abstract
(intro trc ;
use cat_univ_stable_codes_trunc_eq ;
intros Γ a ; cbn ;
refine (dfl_full_comp_cat_mor_to_tm_to_mor_univ (dfl_full_comp_cat_univ_ob C) _
@ _) ;
apply maponpaths ;
exact (dfl_full_comp_cat_mor_to_tm_to_mor_univ (dfl_full_comp_cat_univ_ob C) _)).