Documentation

Mathlib.CategoryTheory.Sites.PreservesSheafification

Functors which preserves sheafification #

In this file, given a Grothendieck topology J on C and F : A ⥤ B, we define a type class J.PreservesSheafification F. We say that F preserves the sheafification if whenever a morphism of presheaves P₁ ⟶ P₂ induces an isomorphism on the associated sheaves, then the induced map P₁ ⋙ F ⟶ P₂ ⋙ F also induces an isomorphism on the associated sheaves. (Note: it suffices to check this property for the map from any presheaf P to its associated sheaf, see GrothendieckTopology.preservesSheafification_iff_of_adjunctions).

In general, we define Sheaf.composeAndSheafify J F : Sheaf J A ⥤ Sheaf J B as the functor which sends a sheaf G to the sheafification of the composition G.val ⋙ F. It J.PreservesSheafification F, we show that this functor can also be thought as the localization of the functor _ ⋙ F on presheaves: we construct an isomorphism presheafToSheafCompComposeAndSheafifyIso between presheafToSheaf J A ⋙ Sheaf.composeAndSheafify J F and (whiskeringRight Cᵒᵖ A B).obj F ⋙ presheafToSheaf J B.

Moreover, if we assume J.HasSheafCompose F, we obtain an isomorphism sheafifyComposeIso J F P : sheafify J (P ⋙ F) ≅ sheafify J P ⋙ F.

We show that under suitable assumptions, the forget functor from a concrete category preserves sheafification; this holds more generally for functors between such concrete categories which commute both with suitable limits and colimits.

TODO #

A functor F : A ⥤ B preserves the sheafification for the Grothendieck topology J on a category C if whenever a morphism of presheaves f : P₁ ⟶ P₂ in Cᵒᵖ ⥤ A is such that becomes an iso after sheafification, then it is also the case of whiskerRight f F : P₁ ⋙ F ⟶ P₂ ⋙ F.

Instances

    The canonical natural transformation from (whiskeringRight Cᵒᵖ A B).obj F ⋙ presheafToSheaf J B to presheafToSheaf J A ⋙ Sheaf.composeAndSheafify J F.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For

      The canonical isomorphism between presheafToSheaf J A ⋙ Sheaf.composeAndSheafify J F and (whiskeringRight Cᵒᵖ A B).obj F ⋙ presheafToSheaf J B when F : A ⥤ B preserves sheafification.

      Equations
      Instances For

        The canonical natural transformation (whiskeringRight Cᵒᵖ A B).obj F ⋙ G₂ ⟶ G₁ ⋙ sheafCompose J F when F : A ⥤ B is such that J.HasSheafCompose F, and that G₁ and G₂ are left adjoints to the forget functors sheafToPresheaf.

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For

          The canonical natural isomorphism (whiskeringRight Cᵒᵖ A B).obj F ⋙ G₂ ≅ G₁ ⋙ sheafCompose J F when F : A ⥤ B preserves sheafification, and that G₁ and G₂ are left adjoints to the forget functors sheafToPresheaf.

          Equations
          Instances For

            The canonical isomorphism sheafify J (P ⋙ F) ≅ sheafify J P ⋙ F when F preserves the sheafification.

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              theorem CategoryTheory.GrothendieckTopology.sheafToPresheaf_map_sheafComposeNatTrans_eq_sheafifyCompIso_inv {C : Type u} [CategoryTheory.Category.{v, u} C] (J : CategoryTheory.GrothendieckTopology C) {D : Type u_3} {E : Type u_4} [CategoryTheory.Category.{max v u, u_3} D] [CategoryTheory.Category.{max v u, u_4} E] (F : CategoryTheory.Functor D E) [∀ (α β : Type (max v u)) (fst snd : βα), CategoryTheory.Limits.HasLimitsOfShape (CategoryTheory.Limits.WalkingMulticospan fst snd) D] [∀ (α β : Type (max v u)) (fst snd : βα), CategoryTheory.Limits.HasLimitsOfShape (CategoryTheory.Limits.WalkingMulticospan fst snd) E] [∀ (X : C), CategoryTheory.Limits.HasColimitsOfShape (J.Cover X)ᵒᵖ D] [∀ (X : C), CategoryTheory.Limits.HasColimitsOfShape (J.Cover X)ᵒᵖ E] [(X : C) → CategoryTheory.Limits.PreservesColimitsOfShape (J.Cover X)ᵒᵖ F] [(X : C) → (W : J.Cover X) → (P : CategoryTheory.Functor Cᵒᵖ D) → CategoryTheory.Limits.PreservesLimit (W.index P).multicospan F] [CategoryTheory.ConcreteCategory D] [CategoryTheory.ConcreteCategory E] [(X : C) → CategoryTheory.Limits.PreservesColimitsOfShape (J.Cover X)ᵒᵖ (CategoryTheory.forget D)] [(X : C) → CategoryTheory.Limits.PreservesColimitsOfShape (J.Cover X)ᵒᵖ (CategoryTheory.forget E)] [CategoryTheory.Limits.PreservesLimits (CategoryTheory.forget D)] [CategoryTheory.Limits.PreservesLimits (CategoryTheory.forget E)] [(CategoryTheory.forget D).ReflectsIsomorphisms] [(CategoryTheory.forget E).ReflectsIsomorphisms] (P : CategoryTheory.Functor Cᵒᵖ D) :
              instance CategoryTheory.GrothendieckTopology.instIsIsoSheafAppFunctorOppositeSheafComposeNatTransPlusPlusAdjunction {C : Type u} [CategoryTheory.Category.{v, u} C] (J : CategoryTheory.GrothendieckTopology C) {D : Type u_3} {E : Type u_4} [CategoryTheory.Category.{max v u, u_3} D] [CategoryTheory.Category.{max v u, u_4} E] (F : CategoryTheory.Functor D E) [∀ (α β : Type (max v u)) (fst snd : βα), CategoryTheory.Limits.HasLimitsOfShape (CategoryTheory.Limits.WalkingMulticospan fst snd) D] [∀ (α β : Type (max v u)) (fst snd : βα), CategoryTheory.Limits.HasLimitsOfShape (CategoryTheory.Limits.WalkingMulticospan fst snd) E] [∀ (X : C), CategoryTheory.Limits.HasColimitsOfShape (J.Cover X)ᵒᵖ D] [∀ (X : C), CategoryTheory.Limits.HasColimitsOfShape (J.Cover X)ᵒᵖ E] [(X : C) → CategoryTheory.Limits.PreservesColimitsOfShape (J.Cover X)ᵒᵖ F] [(X : C) → (W : J.Cover X) → (P : CategoryTheory.Functor Cᵒᵖ D) → CategoryTheory.Limits.PreservesLimit (W.index P).multicospan F] [CategoryTheory.ConcreteCategory D] [CategoryTheory.ConcreteCategory E] [(X : C) → CategoryTheory.Limits.PreservesColimitsOfShape (J.Cover X)ᵒᵖ (CategoryTheory.forget D)] [(X : C) → CategoryTheory.Limits.PreservesColimitsOfShape (J.Cover X)ᵒᵖ (CategoryTheory.forget E)] [CategoryTheory.Limits.PreservesLimits (CategoryTheory.forget D)] [CategoryTheory.Limits.PreservesLimits (CategoryTheory.forget E)] [(CategoryTheory.forget D).ReflectsIsomorphisms] [(CategoryTheory.forget E).ReflectsIsomorphisms] (P : CategoryTheory.Functor Cᵒᵖ D) :
              Equations
              • =
              instance CategoryTheory.GrothendieckTopology.instIsIsoFunctorOppositeSheafSheafComposeNatTransPlusPlusAdjunction {C : Type u} [CategoryTheory.Category.{v, u} C] (J : CategoryTheory.GrothendieckTopology C) {D : Type u_3} {E : Type u_4} [CategoryTheory.Category.{max v u, u_3} D] [CategoryTheory.Category.{max v u, u_4} E] (F : CategoryTheory.Functor D E) [∀ (α β : Type (max v u)) (fst snd : βα), CategoryTheory.Limits.HasLimitsOfShape (CategoryTheory.Limits.WalkingMulticospan fst snd) D] [∀ (α β : Type (max v u)) (fst snd : βα), CategoryTheory.Limits.HasLimitsOfShape (CategoryTheory.Limits.WalkingMulticospan fst snd) E] [∀ (X : C), CategoryTheory.Limits.HasColimitsOfShape (J.Cover X)ᵒᵖ D] [∀ (X : C), CategoryTheory.Limits.HasColimitsOfShape (J.Cover X)ᵒᵖ E] [(X : C) → CategoryTheory.Limits.PreservesColimitsOfShape (J.Cover X)ᵒᵖ F] [(X : C) → (W : J.Cover X) → (P : CategoryTheory.Functor Cᵒᵖ D) → CategoryTheory.Limits.PreservesLimit (W.index P).multicospan F] [CategoryTheory.ConcreteCategory D] [CategoryTheory.ConcreteCategory E] [(X : C) → CategoryTheory.Limits.PreservesColimitsOfShape (J.Cover X)ᵒᵖ (CategoryTheory.forget D)] [(X : C) → CategoryTheory.Limits.PreservesColimitsOfShape (J.Cover X)ᵒᵖ (CategoryTheory.forget E)] [CategoryTheory.Limits.PreservesLimits (CategoryTheory.forget D)] [CategoryTheory.Limits.PreservesLimits (CategoryTheory.forget E)] [(CategoryTheory.forget D).ReflectsIsomorphisms] [(CategoryTheory.forget E).ReflectsIsomorphisms] :
              Equations
              • =
              instance CategoryTheory.GrothendieckTopology.instPreservesSheafification {C : Type u} [CategoryTheory.Category.{v, u} C] (J : CategoryTheory.GrothendieckTopology C) {D : Type u_3} {E : Type u_4} [CategoryTheory.Category.{max v u, u_3} D] [CategoryTheory.Category.{max v u, u_4} E] (F : CategoryTheory.Functor D E) [∀ (α β : Type (max v u)) (fst snd : βα), CategoryTheory.Limits.HasLimitsOfShape (CategoryTheory.Limits.WalkingMulticospan fst snd) D] [∀ (α β : Type (max v u)) (fst snd : βα), CategoryTheory.Limits.HasLimitsOfShape (CategoryTheory.Limits.WalkingMulticospan fst snd) E] [∀ (X : C), CategoryTheory.Limits.HasColimitsOfShape (J.Cover X)ᵒᵖ D] [∀ (X : C), CategoryTheory.Limits.HasColimitsOfShape (J.Cover X)ᵒᵖ E] [(X : C) → CategoryTheory.Limits.PreservesColimitsOfShape (J.Cover X)ᵒᵖ F] [(X : C) → (W : J.Cover X) → (P : CategoryTheory.Functor Cᵒᵖ D) → CategoryTheory.Limits.PreservesLimit (W.index P).multicospan F] [CategoryTheory.ConcreteCategory D] [CategoryTheory.ConcreteCategory E] [(X : C) → CategoryTheory.Limits.PreservesColimitsOfShape (J.Cover X)ᵒᵖ (CategoryTheory.forget D)] [(X : C) → CategoryTheory.Limits.PreservesColimitsOfShape (J.Cover X)ᵒᵖ (CategoryTheory.forget E)] [CategoryTheory.Limits.PreservesLimits (CategoryTheory.forget D)] [CategoryTheory.Limits.PreservesLimits (CategoryTheory.forget E)] [(CategoryTheory.forget D).ReflectsIsomorphisms] [(CategoryTheory.forget E).ReflectsIsomorphisms] :
              J.PreservesSheafification F
              Equations
              • =