Documentation

Mathlib.CategoryTheory.Subpresheaf.Basic

Subpresheaf of types #

We define the subpresheaf of a type valued presheaf.

Main results #

structure CategoryTheory.Subpresheaf {C : Type u} [Category.{v, u} C] (F : Functor Cᵒᵖ (Type w)) :
Type (max u w)

A subpresheaf of a presheaf consists of a subset of F.obj U for every U, compatible with the restriction maps F.map i.

  • obj (U : Cᵒᵖ) : Set (F.obj U)

    If G is a sub-presheaf of F, then the sections of G on U forms a subset of sections of F on U.

  • map {U V : Cᵒᵖ} (i : U V) : self.obj U F.map i ⁻¹' self.obj V

    If G is a sub-presheaf of F and i : U ⟶ V, then for each G-sections on U x, F i x is in F(V).

Instances For
    theorem CategoryTheory.Subpresheaf.ext {C : Type u} {inst✝ : Category.{v, u} C} {F : Functor Cᵒᵖ (Type w)} {x y : Subpresheaf F} (obj : x.obj = y.obj) :
    x = y
    @[deprecated CategoryTheory.Subpresheaf (since := "2025-01-08")]

    Alias of CategoryTheory.Subpresheaf.


    A subpresheaf of a presheaf consists of a subset of F.obj U for every U, compatible with the restriction maps F.map i.

    Equations
    Instances For
      theorem CategoryTheory.Subpresheaf.le_def {C : Type u} [Category.{v, u} C] {F : Functor Cᵒᵖ (Type w)} (S T : Subpresheaf F) :
      S T ∀ (U : Cᵒᵖ), S.obj U T.obj U
      theorem CategoryTheory.Subpresheaf.sSup_obj {C : Type u} [Category.{v, u} C] {F : Functor Cᵒᵖ (Type w)} (S : Set (Subpresheaf F)) (U : Cᵒᵖ) :
      (sSup S).obj U = sSup ((fun (T : Subpresheaf F) => T.obj U) '' S)
      theorem CategoryTheory.Subpresheaf.sInf_obj {C : Type u} [Category.{v, u} C] {F : Functor Cᵒᵖ (Type w)} (S : Set (Subpresheaf F)) (U : Cᵒᵖ) :
      (sInf S).obj U = sInf ((fun (T : Subpresheaf F) => T.obj U) '' S)
      @[simp]
      theorem CategoryTheory.Subpresheaf.iSup_obj {C : Type u} [Category.{v, u} C] {F : Functor Cᵒᵖ (Type w)} {ι : Type u_1} (S : ιSubpresheaf F) (U : Cᵒᵖ) :
      (⨆ (i : ι), S i).obj U = ⋃ (i : ι), (S i).obj U
      @[simp]
      theorem CategoryTheory.Subpresheaf.iInf_obj {C : Type u} [Category.{v, u} C] {F : Functor Cᵒᵖ (Type w)} {ι : Type u_1} (S : ιSubpresheaf F) (U : Cᵒᵖ) :
      (⨅ (i : ι), S i).obj U = ⋂ (i : ι), (S i).obj U
      @[simp]
      theorem CategoryTheory.Subpresheaf.max_obj {C : Type u} [Category.{v, u} C] {F : Functor Cᵒᵖ (Type w)} (S T : Subpresheaf F) (i : Cᵒᵖ) :
      (S T).obj i = S.obj i T.obj i
      @[simp]
      theorem CategoryTheory.Subpresheaf.min_obj {C : Type u} [Category.{v, u} C] {F : Functor Cᵒᵖ (Type w)} (S T : Subpresheaf F) (i : Cᵒᵖ) :
      (S T).obj i = S.obj i T.obj i
      theorem CategoryTheory.Subpresheaf.max_min {C : Type u} [Category.{v, u} C] {F : Functor Cᵒᵖ (Type w)} (S₁ S₂ T : Subpresheaf F) :
      (S₁ S₂) T = S₁ T S₂ T
      theorem CategoryTheory.Subpresheaf.iSup_min {C : Type u} [Category.{v, u} C] {F : Functor Cᵒᵖ (Type w)} {ι : Type u_1} (S : ιSubpresheaf F) (T : Subpresheaf F) :
      (⨆ (i : ι), S i) T = ⨆ (i : ι), S i T

      The subpresheaf as a presheaf.

      Equations
      • G.toPresheaf = { obj := fun (U : Cᵒᵖ) => (G.obj U), map := fun (x x_1 : Cᵒᵖ) (i : x x_1) (x_2 : (G.obj x)) => F.map i x_2, , map_id := , map_comp := }
      Instances For
        @[simp]
        theorem CategoryTheory.Subpresheaf.toPresheaf_map_coe {C : Type u} [Category.{v, u} C] {F : Functor Cᵒᵖ (Type w)} (G : Subpresheaf F) (x✝ x✝¹ : Cᵒᵖ) (i : x✝ x✝¹) (x : (G.obj x✝)) :
        (G.toPresheaf.map i x) = F.map i x

        The inclusion of a subpresheaf to the original presheaf.

        Equations
        Instances For
          @[simp]
          theorem CategoryTheory.Subpresheaf.ι_app {C : Type u} [Category.{v, u} C] {F : Functor Cᵒᵖ (Type w)} (G : Subpresheaf F) (x✝ : Cᵒᵖ) (x : G.toPresheaf.obj x✝) :
          G.ι.app x✝ x = x

          The inclusion of a subpresheaf to a larger subpresheaf

          Equations
          Instances For
            @[simp]
            theorem CategoryTheory.Subpresheaf.homOfLe_app_coe {C : Type u} [Category.{v, u} C] {F : Functor Cᵒᵖ (Type w)} {G G' : Subpresheaf F} (h : G G') (U : Cᵒᵖ) (x : G.toPresheaf.obj U) :
            ((homOfLe h).app U x) = x
            theorem CategoryTheory.Subpresheaf.nat_trans_naturality {C : Type u} [Category.{v, u} C] {F F' : Functor Cᵒᵖ (Type w)} (G : Subpresheaf F) (f : F' G.toPresheaf) {U V : Cᵒᵖ} (i : U V) (x : F'.obj U) :
            (f.app V (F'.map i x)) = F.map i (f.app U x)
            @[deprecated CategoryTheory.Subpresheaf.top_obj (since := "2025-01-23")]

            Alias of CategoryTheory.Subpresheaf.top_obj.