Shrinking sieve functors #
The presheaf associated to a sieve naturally takes values in the universe containing the hom-sets of the ambient category. For a locally small category, the Yoneda shrinking construction allows this presheaf to be represented in a chosen smaller universe.
This file defines Sieve.shrinkFunctor, the universe-shrunk presheaf associated to a sieve, and
constructs its comparison isomorphism with the lifted sieve presheaf. It also records the
compatibility of this isomorphism with the inclusion into the corresponding Yoneda presheaf.
Tags #
sieve, presheaf, universe
def CategoryTheory.Sieve.shrinkFunctor {C : Type u₁} [Category.{v₁, u₁} C] [LocallySmall.{w, v₁, u₁} C] {X : C} (S : Sieve X) :
If C is w-locally small, any sieve induces a subfunctor of shrinkYoneda.{w}.obj X.
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[simp]
theorem CategoryTheory.Sieve.shrinkFunctor_obj {C : Type u₁} [Category.{v₁, u₁} C] [LocallySmall.{w, v₁, u₁} C] {X : C} (S : Sieve X) (Y : Cᵒᵖ) :
(shrinkFunctor.{w, v₁, u₁} S).obj Y = {f : (shrinkYoneda.{w, v₁, u₁}.obj X).obj Y | S.arrows (shrinkYonedaObjObjEquiv f)}
noncomputable def CategoryTheory.Sieve.shrinkFunctorUliftFunctorIso {C : Type u₁} [Category.{v₁, u₁} C] {X : C} (S : Sieve X) [LocallySmall.{w, v₁, u₁} C] [LocallySmall.{max w' w, v₁, u₁} C] :
Sieve.shrinkFunctor is compatible with universe lifting.
Equations
- One or more equations did not get rendered due to their size.
Instances For
theorem CategoryTheory.Sieve.shrinkFunctorUliftFunctorIso_inv_ι {C : Type u₁} [Category.{v₁, u₁} C] {X : C} {S : Sieve X} [LocallySmall.{w, v₁, u₁} C] [LocallySmall.{max w' w, v₁, u₁} C] :
theorem CategoryTheory.Sieve.shrinkFunctorUliftFunctorIso_inv_ι_assoc {C : Type u₁} [Category.{v₁, u₁} C] {X : C} {S : Sieve X} [LocallySmall.{w, v₁, u₁} C] [LocallySmall.{max w' w, v₁, u₁} C] {Z : Functor Cᵒᵖ (Type (max w w'))} (h : (shrinkYoneda.{w, v₁, u₁}.obj X).comp CategoryTheory.uliftFunctor.{w', w} ⟶ Z) :
noncomputable def CategoryTheory.Sieve.shrinkFunctorIsoFunctor {C : Type u₁} [Category.{v₁, u₁} C] {X : C} (S : Sieve X) :
Shrinking does nothing for the same universe level.
Equations
- S.shrinkFunctorIsoFunctor = CategoryTheory.NatIso.ofComponents (fun (Y : Cᵒᵖ) => (CategoryTheory.shrinkYonedaObjObjEquiv.subtypeEquiv ⋯).toIso) ⋯
Instances For
@[simp]
theorem CategoryTheory.Sieve.shrinkFunctorIsoFunctor_hom_app {C : Type u₁} [Category.{v₁, u₁} C] {X : C} (S : Sieve X) (X✝ : Cᵒᵖ) :
@[simp]
theorem CategoryTheory.Sieve.shrinkFunctorIsoFunctor_inv_app {C : Type u₁} [Category.{v₁, u₁} C] {X : C} (S : Sieve X) (X✝ : Cᵒᵖ) :