Documentation

Mathlib.CategoryTheory.Limits.Sifted

Sifted categories #

A category C is sifted if C is nonempty and the diagonal functor C ⥤ C × C is final. Sifted categories can be characterized as those such that the colimit functor (C ⥤ Type) ⥤ Type preserves finite products. We achieve this characterization in this file.

Main results #

References #

@[reducible, inline]

A category C IsSiftedOrEmpty if the diagonal functor C ⥤ C × C is final.

Equations
Instances For

    A category C IsSifted if

    1. the diagonal functor C ⥤ C × C is final.
    2. there exists some object.
    Instances

      Being sifted is preserved by equivalences of categories

      In particular a category is sifted iff and only if it is so when viewed as a small category

      A sifted category is connected.

      A nonempty category with binary coproducts is sifted.

      instance CategoryTheory.instFinalProdProd' {C : Type u} [Category.{v, u} C] [IsSiftedOrEmpty C] {D : Type u₁} [Category.{v₁, u₁} D] {D' : Type u₂} [Category.{v₂, u₂} D'] (F : Functor C D) (G : Functor C D') [F.Final] [G.Final] :
      (F.prod' G).Final

      Through the isomorphisms PreservesColimit₂.isoColimitUncurryWhiskeringLeft₂ and externalProductCompDiagIso, the comparison map colimit.pre (X ⊠ Y) (diag C) identifies with the product comparison map for the colimit functor.

      If C is sifted, the canonical product comparison map for the colim functor (C ⥤ Type) ⥤ Type is an isomorphism.

      If C is sifted, the colimit functor (C ⥤ Type) ⥤ Type preserves terminal objects

      If C is sifted, the colim functor (C ⥤ Type) ⥤ Type preserves finite products.

      If the colim functor (C ⥤ Type) ⥤ Type preserves binary products, then C is sifted or empty.

      If the colim functor (C ⥤ Type) ⥤ Type preserves finite products, then C is sifted.

      Auxiliary version of IsSifted.of_final_functor_from_sifted where everything is a small category.

      A functor admitting a final functor from a sifted category is sifted.