Documentation

Mathlib.CategoryTheory.Sites.Adjunction

In this file, we show that an adjunction G ⊣ F induces an adjunction between categories of sheaves. We also show that G preserves sheafification.

@[reducible, inline]
abbrev CategoryTheory.sheafForget {C : Type u₁} [Category.{v₁, u₁} C] (J : GrothendieckTopology C) {D : Type u₂} [Category.{v₂, u₂} D] [HasForget D] [J.HasSheafCompose (forget D)] :
Functor (Sheaf J D) (Sheaf J (Type u_2))

The forgetful functor from Sheaf J D to sheaves of types, for a concrete category D whose forgetful functor preserves the correct limits.

Equations
Instances For
    def CategoryTheory.Sheaf.adjunction {C : Type u₁} [Category.{v₁, u₁} C] (J : GrothendieckTopology C) {D : Type u₂} [Category.{v₂, u₂} D] {E : Type u_1} [Category.{u_2, u_1} E] {F : Functor D E} {G : Functor E D} [HasWeakSheafify J D] [J.HasSheafCompose F] (adj : G F) :

    An adjunction adj : G ⊣ F with F : D ⥤ E and G : E ⥤ D induces an adjunction between Sheaf J D and Sheaf J E, in contexts where one can sheafify D-valued presheaves, and postcomposing with F preserves the property of being a sheaf.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      @[simp]
      theorem CategoryTheory.Sheaf.adjunction_unit_app_val {C : Type u₁} [Category.{v₁, u₁} C] (J : GrothendieckTopology C) {D : Type u₂} [Category.{v₂, u₂} D] {E : Type u_1} [Category.{u_2, u_1} E] {F : Functor D E} {G : Functor E D} [HasWeakSheafify J D] [J.HasSheafCompose F] (adj : G F) (X : Sheaf J E) :
      ((adjunction J adj).unit.app X).val = CategoryStruct.comp ((Adjunction.whiskerRight Cᵒᵖ adj).unit.app X.val) (whiskerRight (toSheafify J (X.val.comp G)) F)
      @[simp]
      theorem CategoryTheory.Sheaf.adjunction_counit_app_val {C : Type u₁} [Category.{v₁, u₁} C] (J : GrothendieckTopology C) {D : Type u₂} [Category.{v₂, u₂} D] {E : Type u_1} [Category.{u_2, u_1} E] {F : Functor D E} {G : Functor E D} [HasWeakSheafify J D] [J.HasSheafCompose F] (adj : G F) (Y : Sheaf J D) :
      ((adjunction J adj).counit.app Y).val = sheafifyLift J ((Adjunction.whiskerRight Cᵒᵖ adj).counit.app Y.val)
      theorem CategoryTheory.Sheaf.preservesSheafification_of_adjunction {C : Type u₁} [Category.{v₁, u₁} C] (J : GrothendieckTopology C) {D : Type u₂} [Category.{v₂, u₂} D] {E : Type u_1} [Category.{u_2, u_1} E] {F : Functor D E} {G : Functor E D} (adj : G F) :
      J.PreservesSheafification G
      instance CategoryTheory.Sheaf.instPreservesSheafificationOfIsLeftAdjoint {C : Type u₁} [Category.{v₁, u₁} C] (J : GrothendieckTopology C) {D : Type u₂} [Category.{v₂, u₂} D] {E : Type u_1} [Category.{u_2, u_1} E] {G : Functor E D} [G.IsLeftAdjoint] :
      J.PreservesSheafification G
      @[deprecated CategoryTheory.Sheaf.composeAndSheafify (since := "2024-11-26")]

      Alias of CategoryTheory.Sheaf.composeAndSheafify.


      This is the functor sending a sheaf X : Sheaf J A to the sheafification of X.val ⋙ F.

      Equations
      Instances For
        @[reducible, inline, deprecated CategoryTheory.Sheaf.adjunction (since := "2024-11-26")]
        abbrev CategoryTheory.Sheaf.adjunctionToTypes {C : Type u₁} [Category.{v₁, u₁} C] (J : GrothendieckTopology C) {D : Type u₂} [Category.{v₂, u₂} D] [HasWeakSheafify J D] [HasForget D] [J.HasSheafCompose (forget D)] {G : Functor (Type (max v₁ u₁)) D} (adj : G forget D) :

        The adjunction composeAndSheafify J G ⊣ sheafForget J.

        Equations
        Instances For