Documentation

Mathlib.CategoryTheory.Limits.Types.Filtered

Filtered colimits in the category of types. #

We give a characterisation of the equality in filtered colimits in Type as a lemma CategoryTheory.Limits.Types.FilteredColimit.colimit_eq_iff: colimit.ι F i xi = colimit.ι F j xj ↔ ∃ k (f : i ⟶ k) (g : j ⟶ k), F.map f xi = F.map g xj.

def CategoryTheory.Limits.Types.FilteredColimit.Rel {J : Type v} [Category.{w, v} J] (F : Functor J (Type u)) (x y : (j : J) × F.obj j) :

An alternative relation on Σ j, F.obj j, which generates the same equivalence relation as we use to define the colimit in Type above, but that is more convenient when working with filtered colimits.

Elements in F.obj j and F.obj j' are equivalent if there is some k : J to the right where their images are equal.

Equations
Instances For
    @[deprecated CategoryTheory.Limits.Types.FilteredColimit.rel_of_colimitTypeRel (since := "2025-06-22")]

    Alias of CategoryTheory.Limits.Types.FilteredColimit.rel_of_colimitTypeRel.

    @[deprecated CategoryTheory.Limits.Types.FilteredColimit.eqvGen_colimitTypeRel_of_rel (since := "2025-06-22")]

    Alias of CategoryTheory.Limits.Types.FilteredColimit.eqvGen_colimitTypeRel_of_rel.

    noncomputable def CategoryTheory.Limits.Types.FilteredColimit.isColimitOf {J : Type v} [Category.{w, v} J] (F : Functor J (Type u)) (t : Cocone F) (hsurj : ∀ (x : t.pt), ∃ (i : J) (xi : F.obj i), x = t.ι.app i xi) (hinj : ∀ (i j : J) (xi : F.obj i) (xj : F.obj j), t.ι.app i xi = t.ι.app j xj∃ (k : J) (f : i k) (g : j k), F.map f xi = F.map g xj) :

    Recognizing filtered colimits of types.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      noncomputable def CategoryTheory.Limits.Types.FilteredColimit.isColimitOf' {J : Type v} [Category.{w, v} J] (F : Functor J (Type u)) [IsFilteredOrEmpty J] (t : Cocone F) (hsurj : ∀ (x : t.pt), ∃ (i : J) (xi : F.obj i), x = t.ι.app i xi) (hinj : ∀ (i : J) (x y : F.obj i), t.ι.app i x = t.ι.app i y∃ (k : J) (f : i k), F.map f x = F.map f y) :

      Recognizing filtered colimits of types. The injectivity condition here is slightly easier to check as compared to isColimitOf.

      Equations
      Instances For
        @[deprecated CategoryTheory.Limits.Types.FilteredColimit.rel_eq_eqvGen_colimitTypeRel (since := "2025-06-22")]

        Alias of CategoryTheory.Limits.Types.FilteredColimit.rel_eq_eqvGen_colimitTypeRel.

        theorem CategoryTheory.Limits.Types.FilteredColimit.isColimit_eq_iff {J : Type v} [Category.{w, v} J] (F : Functor J (Type u)) [IsFilteredOrEmpty J] {t : Cocone F} (ht : IsColimit t) {i j : J} {xi : F.obj i} {xj : F.obj j} :
        t.ι.app i xi = t.ι.app j xj ∃ (k : J) (f : i k) (g : j k), F.map f xi = F.map g xj
        theorem CategoryTheory.Limits.Types.FilteredColimit.isColimit_eq_iff' {J : Type v} [Category.{w, v} J] {F : Functor J (Type u)} [IsFilteredOrEmpty J] {t : Cocone F} (ht : IsColimit t) {i : J} (x y : F.obj i) :
        t.ι.app i x = t.ι.app i y ∃ (j : J) (f : i j), F.map f x = F.map f y
        theorem CategoryTheory.Limits.Types.FilteredColimit.colimit_eq_iff {J : Type v} [Category.{w, v} J] (F : Functor J (Type u)) [IsFilteredOrEmpty J] [HasColimit F] {i j : J} {xi : F.obj i} {xj : F.obj j} :
        colimit.ι F i xi = colimit.ι F j xj ∃ (k : J) (f : i k) (g : j k), F.map f xi = F.map g xj