Loogle!
Result
Found 446 declarations mentioning CategoryTheory.Limits.HasColimit. Of these, only the first 200 are shown.
- CategoryTheory.Limits.HasColimit 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor J C) : Prop - CategoryTheory.Limits.colimit 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F] : C - CategoryTheory.Limits.instHasColimitOfHasColimitsOfShape 📋 Mathlib.CategoryTheory.Limits.HasLimits
{C : Type u} [CategoryTheory.Category.{v, u} C] {J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] [CategoryTheory.Limits.HasColimitsOfShape J C] (F : CategoryTheory.Functor J C) : CategoryTheory.Limits.HasColimit F - CategoryTheory.Limits.HasColimitsOfShape.has_colimit 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} {inst✝ : CategoryTheory.Category.{v₁, u₁} J} {C : Type u} {inst✝¹ : CategoryTheory.Category.{v, u} C} [self : CategoryTheory.Limits.HasColimitsOfShape J C] (F : CategoryTheory.Functor J C) : CategoryTheory.Limits.HasColimit F - CategoryTheory.Limits.getColimitCocone 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F] : CategoryTheory.Limits.ColimitCocone F - CategoryTheory.Limits.HasColimit.mk 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} (d : CategoryTheory.Limits.ColimitCocone F) : CategoryTheory.Limits.HasColimit F - CategoryTheory.Limits.colimit.cocone 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F] : CategoryTheory.Limits.Cocone F - CategoryTheory.Limits.HasColimit.exists_colimit 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} {inst✝ : CategoryTheory.Category.{v₁, u₁} J} {C : Type u} {inst✝¹ : CategoryTheory.Category.{v, u} C} {F : CategoryTheory.Functor J C} [self : CategoryTheory.Limits.HasColimit F] : Nonempty (CategoryTheory.Limits.ColimitCocone F) - CategoryTheory.Limits.HasColimit.mk' 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} (exists_colimit : Nonempty (CategoryTheory.Limits.ColimitCocone F)) : CategoryTheory.Limits.HasColimit F - CategoryTheory.Limits.HasColimitsOfShape.mk 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] (has_colimit : ∀ (F : CategoryTheory.Functor J C), CategoryTheory.Limits.HasColimit F := by infer_instance) : CategoryTheory.Limits.HasColimitsOfShape J C - CategoryTheory.Limits.colimit.isColimit 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F] : CategoryTheory.Limits.IsColimit (CategoryTheory.Limits.colimit.cocone F) - CategoryTheory.Limits.colimit.cocone_x 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] : (CategoryTheory.Limits.colimit.cocone F).pt = CategoryTheory.Limits.colimit F - CategoryTheory.Limits.colimit.ι 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F] (j : J) : F.obj j ⟶ CategoryTheory.Limits.colimit F - CategoryTheory.Limits.hasColimit_of_iso 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F G : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] (α : G ≅ F) : CategoryTheory.Limits.HasColimit G - CategoryTheory.Limits.hasColimit_iff_of_iso 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F G : CategoryTheory.Functor J C} (α : F ≅ G) : CategoryTheory.Limits.HasColimit F ↔ CategoryTheory.Limits.HasColimit G - CategoryTheory.Limits.hasColimit_equivalence_comp 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} (e : K ≌ J) [CategoryTheory.Limits.HasColimit F] : CategoryTheory.Limits.HasColimit (e.functor.comp F) - CategoryTheory.Limits.hasColimit_of_equivalence_comp 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} (e : K ≌ J) [CategoryTheory.Limits.HasColimit (e.functor.comp F)] : CategoryTheory.Limits.HasColimit F - CategoryTheory.Limits.colimit.desc 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F] (c : CategoryTheory.Limits.Cocone F) : CategoryTheory.Limits.colimit F ⟶ c.pt - CategoryTheory.Limits.hasColimit_equivalence_comp_iff 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} (e : K ≌ J) : CategoryTheory.Limits.HasColimit (e.functor.comp F) ↔ CategoryTheory.Limits.HasColimit F - CategoryTheory.Limits.hasColimit_inverse_equivalence_comp_iff 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} (e : J ≌ K) : CategoryTheory.Limits.HasColimit (e.inverse.comp F) ↔ CategoryTheory.Limits.HasColimit F - CategoryTheory.Limits.colimit.isoColimitCocone 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] (t : CategoryTheory.Limits.ColimitCocone F) : CategoryTheory.Limits.colimit F ≅ t.cocone.pt - CategoryTheory.Limits.colimit.homIso 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F] (W : C) : ULift.{u₁, v} (CategoryTheory.Limits.colimit F ⟶ W) ≅ F.cocones.obj W - CategoryTheory.Limits.HasColimit.ofCoconesIso 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {K : Type u₁} [CategoryTheory.Category.{v₂, u₁} K] (F : CategoryTheory.Functor J C) (G : CategoryTheory.Functor K C) (h : F.cocones ≅ G.cocones) [CategoryTheory.Limits.HasColimit F] : CategoryTheory.Limits.HasColimit G - CategoryTheory.Limits.HasColimit.isoOfNatIso 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F G : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] [CategoryTheory.Limits.HasColimit G] (w : F ≅ G) : CategoryTheory.Limits.colimit F ≅ CategoryTheory.Limits.colimit G - CategoryTheory.Limits.colimit.coconeMorphism 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] (c : CategoryTheory.Limits.Cocone F) : CategoryTheory.Limits.colimit.cocone F ⟶ c - CategoryTheory.Limits.colimit.pre 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] {C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F] (E : CategoryTheory.Functor K J) [CategoryTheory.Limits.HasColimit (E.comp F)] : CategoryTheory.Limits.colimit (E.comp F) ⟶ CategoryTheory.Limits.colimit F - CategoryTheory.Limits.colimit.desc_cocone 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] : CategoryTheory.Limits.colimit.desc F (CategoryTheory.Limits.colimit.cocone F) = CategoryTheory.CategoryStruct.id (CategoryTheory.Limits.colimit F) - CategoryTheory.Limits.colimMap 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F G : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] [CategoryTheory.Limits.HasColimit G] (α : G ⟶ F) : CategoryTheory.Limits.colimit G ⟶ CategoryTheory.Limits.colimit F - CategoryTheory.Limits.colimit.post 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor J C) {D : Type u'} [CategoryTheory.Category.{v', u'} D] [CategoryTheory.Limits.HasColimit F] (G : CategoryTheory.Functor C D) [CategoryTheory.Limits.HasColimit (F.comp G)] : CategoryTheory.Limits.colimit (F.comp G) ⟶ G.obj (CategoryTheory.Limits.colimit F) - CategoryTheory.Limits.HasColimit.isoOfEquivalence 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] {G : CategoryTheory.Functor K C} [CategoryTheory.Limits.HasColimit G] (e : J ≌ K) (w : e.functor.comp G ≅ F) : CategoryTheory.Limits.colimit F ≅ CategoryTheory.Limits.colimit G - CategoryTheory.Limits.colimit.isColimit_desc 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] (c : CategoryTheory.Limits.Cocone F) : (CategoryTheory.Limits.colimit.isColimit F).desc c = CategoryTheory.Limits.colimit.desc F c - CategoryTheory.Limits.colimit.coconeMorphism_hom 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] (c : CategoryTheory.Limits.Cocone F) : (CategoryTheory.Limits.colimit.coconeMorphism c).hom = CategoryTheory.Limits.colimit.desc F c - CategoryTheory.Limits.isIso_colimMap 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F G : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] [CategoryTheory.Limits.HasColimit G] (α : G ⟶ F) [CategoryTheory.IsIso α] : CategoryTheory.IsIso (CategoryTheory.Limits.colimMap α) - CategoryTheory.Limits.colimit.w 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F] {j j' : J} (f : j' ⟶ j) : CategoryTheory.CategoryStruct.comp (F.map f) (CategoryTheory.Limits.colimit.ι F j) = CategoryTheory.Limits.colimit.ι F j' - CategoryTheory.Limits.colimMap_epi 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F G : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] [CategoryTheory.Limits.HasColimit G] (α : F ⟶ G) [∀ (j : J), CategoryTheory.Epi (α.app j)] : CategoryTheory.Epi (CategoryTheory.Limits.colimMap α) - CategoryTheory.Limits.colimit.desc_extend 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] (c : CategoryTheory.Limits.Cocone F) {X : C} (f : c.pt ⟶ X) : CategoryTheory.Limits.colimit.desc F (c.extend f) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.desc F c) f - CategoryTheory.Limits.colimit.eqToHom_comp_ι 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F] {j j' : J} (hj : j = j') : CategoryTheory.CategoryStruct.comp (CategoryTheory.eqToHom ⋯) (CategoryTheory.Limits.colimit.ι F j) = CategoryTheory.Limits.colimit.ι F j' - CategoryTheory.Limits.colimit.cocone_ι 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] : (CategoryTheory.Limits.colimit.cocone F).ι.app = CategoryTheory.Limits.colimit.ι F - CategoryTheory.Limits.colimit.ι_desc 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] (c : CategoryTheory.Limits.Cocone F) (j : J) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F j) (CategoryTheory.Limits.colimit.desc F c) = c.ι.app j - CategoryTheory.Limits.colimit.homIso' 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F] (W : C) : ULift.{u₁, v} (CategoryTheory.Limits.colimit F ⟶ W) ≅ { p // ∀ {j j' : J} (f : j ⟶ j'), CategoryTheory.CategoryStruct.comp (F.map f) (p j') = p j } - CategoryTheory.Limits.colimit.hom_ext 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] {X : C} {f f' : CategoryTheory.Limits.colimit F ⟶ X} (w : ∀ (j : J), CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F j) f = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F j) f') : f = f' - CategoryTheory.Limits.colimit.hom_ext_iff 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] {X : C} {f f' : CategoryTheory.Limits.colimit F ⟶ X} : f = f' ↔ ∀ (j : J), CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F j) f = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F j) f' - CategoryTheory.Limits.colimit.w_assoc 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F] {j j' : J} (f : j' ⟶ j) {Z : C} (h : CategoryTheory.Limits.colimit F ⟶ Z) : CategoryTheory.CategoryStruct.comp (F.map f) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F j) h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F j') h - CategoryTheory.Limits.colimit.ι_coconeMorphism 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] (c : CategoryTheory.Limits.Cocone F) (j : J) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F j) (CategoryTheory.Limits.colimit.coconeMorphism c).hom = c.ι.app j - CategoryTheory.Limits.colimit.pre_desc 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] {C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F] (E : CategoryTheory.Functor K J) [CategoryTheory.Limits.HasColimit (E.comp F)] (c : CategoryTheory.Limits.Cocone F) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.pre F E) (CategoryTheory.Limits.colimit.desc F c) = CategoryTheory.Limits.colimit.desc (E.comp F) (CategoryTheory.Limits.Cocone.whisker E c) - CategoryTheory.Limits.colimit.ι_pre 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] {C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F] (E : CategoryTheory.Functor K J) [CategoryTheory.Limits.HasColimit (E.comp F)] (k : K) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι (E.comp F) k) (CategoryTheory.Limits.colimit.pre F E) = CategoryTheory.Limits.colimit.ι F (E.obj k) - CategoryTheory.Limits.colimit.eqToHom_comp_ι_assoc 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F] {j j' : J} (hj : j = j') {Z : C} (h : CategoryTheory.Limits.colimit F ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.eqToHom ⋯) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F j) h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F j') h - CategoryTheory.Limits.ι_colimMap 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F G : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] [CategoryTheory.Limits.HasColimit G] (α : G ⟶ F) (j : J) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι G j) (CategoryTheory.Limits.colimMap α) = CategoryTheory.CategoryStruct.comp (α.app j) (CategoryTheory.Limits.colimit.ι F j) - CategoryTheory.Limits.colimit.existsUnique 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] (t : CategoryTheory.Limits.Cocone F) : ∃! l, ∀ (j : J), CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F j) l = t.ι.app j - CategoryTheory.Limits.colimit.map_desc 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F G : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] [CategoryTheory.Limits.HasColimit G] (c : CategoryTheory.Limits.Cocone F) (α : G ⟶ F) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimMap α) (CategoryTheory.Limits.colimit.desc F c) = CategoryTheory.Limits.colimit.desc G ((CategoryTheory.Limits.Cocone.precompose α).obj c) - CategoryTheory.Limits.colimit.isoColimitCocone_ι_inv 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] (t : CategoryTheory.Limits.ColimitCocone F) (j : J) : CategoryTheory.CategoryStruct.comp (t.cocone.ι.app j) (CategoryTheory.Limits.colimit.isoColimitCocone t).inv = CategoryTheory.Limits.colimit.ι F j - CategoryTheory.Limits.colimit.ι_desc_assoc 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] (c : CategoryTheory.Limits.Cocone F) (j : J) {Z : C} (h : c.pt ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F j) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.desc F c) h) = CategoryTheory.CategoryStruct.comp (c.ι.app j) h - CategoryTheory.Limits.colimit.isoColimitCocone_ι_hom 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] (t : CategoryTheory.Limits.ColimitCocone F) (j : J) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F j) (CategoryTheory.Limits.colimit.isoColimitCocone t).hom = t.cocone.ι.app j - CategoryTheory.Limits.colimit.comp_coconePointUniqueUpToIso_hom 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] {c : CategoryTheory.Limits.Cocone F} (hc : CategoryTheory.Limits.IsColimit c) (j : J) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F j) ((CategoryTheory.Limits.colimit.isColimit F).coconePointUniqueUpToIso hc).hom = c.ι.app j - CategoryTheory.Limits.colimit.comp_coconePointUniqueUpToIso_inv 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] {c : CategoryTheory.Limits.Cocone F} (hc : CategoryTheory.Limits.IsColimit c) (j : J) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F j) (hc.coconePointUniqueUpToIso (CategoryTheory.Limits.colimit.isColimit F)).inv = c.ι.app j - CategoryTheory.Limits.colimit.ι_post 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor J C) {D : Type u'} [CategoryTheory.Category.{v', u'} D] [CategoryTheory.Limits.HasColimit F] (G : CategoryTheory.Functor C D) [CategoryTheory.Limits.HasColimit (F.comp G)] (j : J) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι (F.comp G) j) (CategoryTheory.Limits.colimit.post F G) = G.map (CategoryTheory.Limits.colimit.ι F j) - CategoryTheory.Limits.HasColimit.isoOfNatIso_ι_hom 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F G : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] [CategoryTheory.Limits.HasColimit G] (w : F ≅ G) (j : J) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F j) (CategoryTheory.Limits.HasColimit.isoOfNatIso w).hom = CategoryTheory.CategoryStruct.comp (w.hom.app j) (CategoryTheory.Limits.colimit.ι G j) - CategoryTheory.Limits.HasColimit.isoOfNatIso_ι_inv 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F G : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] [CategoryTheory.Limits.HasColimit G] (w : F ≅ G) (j : J) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι G j) (CategoryTheory.Limits.HasColimit.isoOfNatIso w).inv = CategoryTheory.CategoryStruct.comp (w.inv.app j) (CategoryTheory.Limits.colimit.ι F j) - CategoryTheory.Limits.HasColimit.isoOfNatIso_hom_desc 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F G : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] [CategoryTheory.Limits.HasColimit G] (t : CategoryTheory.Limits.Cocone G) (w : F ≅ G) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.HasColimit.isoOfNatIso w).hom (CategoryTheory.Limits.colimit.desc G t) = CategoryTheory.Limits.colimit.desc F ((CategoryTheory.Limits.Cocone.precompose w.hom).obj t) - CategoryTheory.Limits.HasColimit.isoOfNatIso_inv_desc 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F G : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] [CategoryTheory.Limits.HasColimit G] (t : CategoryTheory.Limits.Cocone F) (w : F ≅ G) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.HasColimit.isoOfNatIso w).inv (CategoryTheory.Limits.colimit.desc F t) = CategoryTheory.Limits.colimit.desc G ((CategoryTheory.Limits.Cocone.precompose w.inv).obj t) - CategoryTheory.Limits.colimit.post_desc 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor J C) {D : Type u'} [CategoryTheory.Category.{v', u'} D] [CategoryTheory.Limits.HasColimit F] (G : CategoryTheory.Functor C D) [CategoryTheory.Limits.HasColimit (F.comp G)] (c : CategoryTheory.Limits.Cocone F) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.post F G) (G.map (CategoryTheory.Limits.colimit.desc F c)) = CategoryTheory.Limits.colimit.desc (F.comp G) (G.mapCocone c) - CategoryTheory.Limits.ι_colimMap_assoc 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F G : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] [CategoryTheory.Limits.HasColimit G] (α : G ⟶ F) (j : J) {Z : C} (h : CategoryTheory.Limits.colimit F ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι G j) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimMap α) h) = CategoryTheory.CategoryStruct.comp (α.app j) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F j) h) - CategoryTheory.Limits.colimit.pre_pre 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] {C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F] (E : CategoryTheory.Functor K J) [CategoryTheory.Limits.HasColimit (E.comp F)] {L : Type u₃} [CategoryTheory.Category.{v₃, u₃} L] (D : CategoryTheory.Functor L K) [h : CategoryTheory.Limits.HasColimit (D.comp (E.comp F))] : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.pre (E.comp F) D) (CategoryTheory.Limits.colimit.pre F E) = CategoryTheory.Limits.colimit.pre F (D.comp E) - CategoryTheory.Limits.colimit.pre_desc_assoc 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] {C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F] (E : CategoryTheory.Functor K J) [CategoryTheory.Limits.HasColimit (E.comp F)] (c : CategoryTheory.Limits.Cocone F) {Z : C} (h : c.pt ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.pre F E) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.desc F c) h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.desc (E.comp F) (CategoryTheory.Limits.Cocone.whisker E c)) h - CategoryTheory.Limits.colimit.ι_pre_assoc 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] {C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F] (E : CategoryTheory.Functor K J) [CategoryTheory.Limits.HasColimit (E.comp F)] (k : K) {Z : C} (h : CategoryTheory.Limits.colimit F ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι (E.comp F) k) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.pre F E) h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F (E.obj k)) h - CategoryTheory.Limits.colimit.map_desc_assoc 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F G : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] [CategoryTheory.Limits.HasColimit G] (c : CategoryTheory.Limits.Cocone F) (α : G ⟶ F) {Z : C} (h : c.pt ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimMap α) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.desc F c) h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.desc G ((CategoryTheory.Limits.Cocone.precompose α).obj c)) h - CategoryTheory.Limits.colimit.ι_inv_pre 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] {C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F] (E : CategoryTheory.Functor K J) [CategoryTheory.Limits.HasColimit (E.comp F)] [CategoryTheory.IsIso (CategoryTheory.Limits.colimit.pre F E)] (k : K) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F (E.obj k)) (CategoryTheory.inv (CategoryTheory.Limits.colimit.pre F E)) = CategoryTheory.Limits.colimit.ι (E.comp F) k - CategoryTheory.Limits.colimit.isoColimitCocone_ι_inv_assoc 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] (t : CategoryTheory.Limits.ColimitCocone F) (j : J) {Z : C} (h : CategoryTheory.Limits.colimit F ⟶ Z) : CategoryTheory.CategoryStruct.comp (t.cocone.ι.app j) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.isoColimitCocone t).inv h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F j) h - CategoryTheory.Limits.HasColimit.isoOfNatIso_ι_hom_assoc 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F G : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] [CategoryTheory.Limits.HasColimit G] (w : F ≅ G) (j : J) {Z : C} (h : CategoryTheory.Limits.colimit G ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F j) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.HasColimit.isoOfNatIso w).hom h) = CategoryTheory.CategoryStruct.comp (w.hom.app j) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι G j) h) - CategoryTheory.Limits.HasColimit.isoOfNatIso_ι_inv_assoc 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F G : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] [CategoryTheory.Limits.HasColimit G] (w : F ≅ G) (j : J) {Z : C} (h : CategoryTheory.Limits.colimit F ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι G j) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.HasColimit.isoOfNatIso w).inv h) = CategoryTheory.CategoryStruct.comp (w.inv.app j) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F j) h) - CategoryTheory.Limits.colimit.isoColimitCocone_ι_hom_assoc 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] (t : CategoryTheory.Limits.ColimitCocone F) (j : J) {Z : C} (h : t.cocone.pt ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F j) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.isoColimitCocone t).hom h) = CategoryTheory.CategoryStruct.comp (t.cocone.ι.app j) h - CategoryTheory.Limits.colimit.comp_coconePointUniqueUpToIso_hom_assoc 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] {c : CategoryTheory.Limits.Cocone F} (hc : CategoryTheory.Limits.IsColimit c) (j : J) {Z : C} (h : c.pt ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F j) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Limits.colimit.isColimit F).coconePointUniqueUpToIso hc).hom h) = CategoryTheory.CategoryStruct.comp (c.ι.app j) h - CategoryTheory.Limits.colimit.comp_coconePointUniqueUpToIso_inv_assoc 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] {c : CategoryTheory.Limits.Cocone F} (hc : CategoryTheory.Limits.IsColimit c) (j : J) {Z : C} (h : c.pt ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F j) (CategoryTheory.CategoryStruct.comp (hc.coconePointUniqueUpToIso (CategoryTheory.Limits.colimit.isColimit F)).inv h) = CategoryTheory.CategoryStruct.comp (c.ι.app j) h - CategoryTheory.Limits.HasColimit.isoOfNatIso_hom_desc_assoc 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F G : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] [CategoryTheory.Limits.HasColimit G] (t : CategoryTheory.Limits.Cocone G) (w : F ≅ G) {Z : C} (h : t.pt ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.HasColimit.isoOfNatIso w).hom (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.desc G t) h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.desc F ((CategoryTheory.Limits.Cocone.precompose w.hom).obj t)) h - CategoryTheory.Limits.HasColimit.isoOfNatIso_inv_desc_assoc 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F G : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] [CategoryTheory.Limits.HasColimit G] (t : CategoryTheory.Limits.Cocone F) (w : F ≅ G) {Z : C} (h : t.pt ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.HasColimit.isoOfNatIso w).inv (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.desc F t) h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.desc G ((CategoryTheory.Limits.Cocone.precompose w.inv).obj t)) h - CategoryTheory.Limits.colimit.ι_post_assoc 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor J C) {D : Type u'} [CategoryTheory.Category.{v', u'} D] [CategoryTheory.Limits.HasColimit F] (G : CategoryTheory.Functor C D) [CategoryTheory.Limits.HasColimit (F.comp G)] (j : J) {Z : D} (h : G.obj (CategoryTheory.Limits.colimit F) ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι (F.comp G) j) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.post F G) h) = CategoryTheory.CategoryStruct.comp (G.map (CategoryTheory.Limits.colimit.ι F j)) h - CategoryTheory.Limits.colimit.post_post 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor J C) {D : Type u'} [CategoryTheory.Category.{v', u'} D] [CategoryTheory.Limits.HasColimit F] (G : CategoryTheory.Functor C D) [CategoryTheory.Limits.HasColimit (F.comp G)] {E : Type u''} [CategoryTheory.Category.{v'', u''} E] (H : CategoryTheory.Functor D E) [h : CategoryTheory.Limits.HasColimit ((F.comp G).comp H)] : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.post (F.comp G) H) (H.map (CategoryTheory.Limits.colimit.post F G)) = CategoryTheory.Limits.colimit.post F (G.comp H) - CategoryTheory.Limits.colimit.ι_inv_pre_assoc 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] {C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F] (E : CategoryTheory.Functor K J) [CategoryTheory.Limits.HasColimit (E.comp F)] [CategoryTheory.IsIso (CategoryTheory.Limits.colimit.pre F E)] (k : K) {Z : C} (h : CategoryTheory.Limits.colimit (E.comp F) ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F (E.obj k)) (CategoryTheory.CategoryStruct.comp (CategoryTheory.inv (CategoryTheory.Limits.colimit.pre F E)) h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι (E.comp F) k) h - CategoryTheory.Limits.colimit.homIso_hom 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F] {W : C} : (CategoryTheory.Limits.colimit.homIso F W).hom = TypeCat.ofHom fun f => CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.cocone F).ι ((CategoryTheory.Functor.const J).map f.down) - CategoryTheory.Limits.colimit.pre_post 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] {C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type u'} [CategoryTheory.Category.{v', u'} D] (E : CategoryTheory.Functor K J) (F : CategoryTheory.Functor J C) (G : CategoryTheory.Functor C D) [CategoryTheory.Limits.HasColimit F] [CategoryTheory.Limits.HasColimit (E.comp F)] [CategoryTheory.Limits.HasColimit (F.comp G)] [h : CategoryTheory.Limits.HasColimit ((E.comp F).comp G)] : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.post (E.comp F) G) (G.map (CategoryTheory.Limits.colimit.pre F E)) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.pre (F.comp G) E) (CategoryTheory.Limits.colimit.post F G) - CategoryTheory.Limits.colimit.pre_eq 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] {E : CategoryTheory.Functor K J} [CategoryTheory.Limits.HasColimit (E.comp F)] (s : CategoryTheory.Limits.ColimitCocone (E.comp F)) (t : CategoryTheory.Limits.ColimitCocone F) : CategoryTheory.Limits.colimit.pre F E = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.isoColimitCocone s).hom (CategoryTheory.CategoryStruct.comp (s.isColimit.desc (CategoryTheory.Limits.Cocone.whisker E t.cocone)) (CategoryTheory.Limits.colimit.isoColimitCocone t).inv) - CategoryTheory.Limits.HasColimit.isoOfEquivalence_inv_π 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] {G : CategoryTheory.Functor K C} [CategoryTheory.Limits.HasColimit G] (e : J ≌ K) (w : e.functor.comp G ≅ F) (k : K) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι G k) (CategoryTheory.Limits.HasColimit.isoOfEquivalence e w).inv = CategoryTheory.CategoryStruct.comp (G.map (e.counitInv.app k)) (CategoryTheory.CategoryStruct.comp (w.hom.app (e.inverse.obj k)) (CategoryTheory.Limits.colimit.ι F (e.inverse.obj k))) - CategoryTheory.Limits.HasColimit.ι_isoOfEquivalence_inv 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] {G : CategoryTheory.Functor K C} [CategoryTheory.Limits.HasColimit G] (e : J ≌ K) (w : e.functor.comp G ≅ F) (k : K) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι G k) (CategoryTheory.Limits.HasColimit.isoOfEquivalence e w).inv = CategoryTheory.CategoryStruct.comp (G.map (e.counitInv.app k)) (CategoryTheory.CategoryStruct.comp (w.hom.app (e.inverse.obj k)) (CategoryTheory.Limits.colimit.ι F (e.inverse.obj k))) - CategoryTheory.Limits.HasColimit.ι_isoOfEquivalence_inv_assoc 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] {G : CategoryTheory.Functor K C} [CategoryTheory.Limits.HasColimit G] (e : J ≌ K) (w : e.functor.comp G ≅ F) (k : K) {Z : C} (h : CategoryTheory.Limits.colimit F ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι G k) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.HasColimit.isoOfEquivalence e w).inv h) = CategoryTheory.CategoryStruct.comp (G.map (e.counitInv.app k)) (CategoryTheory.CategoryStruct.comp (w.hom.app (e.inverse.obj k)) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F (e.inverse.obj k)) h)) - CategoryTheory.Limits.HasColimit.isoOfEquivalence_hom_π 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] {G : CategoryTheory.Functor K C} [CategoryTheory.Limits.HasColimit G] (e : J ≌ K) (w : e.functor.comp G ≅ F) (j : J) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F j) (CategoryTheory.Limits.HasColimit.isoOfEquivalence e w).hom = CategoryTheory.CategoryStruct.comp (F.map (e.unit.app j)) (CategoryTheory.CategoryStruct.comp (w.inv.app ((e.functor.comp e.inverse).obj j)) (CategoryTheory.Limits.colimit.ι G (e.functor.obj ((e.functor.comp e.inverse).obj j)))) - CategoryTheory.Limits.HasColimit.ι_isoOfEquivalence_hom 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] {G : CategoryTheory.Functor K C} [CategoryTheory.Limits.HasColimit G] (e : J ≌ K) (w : e.functor.comp G ≅ F) (j : J) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F j) (CategoryTheory.Limits.HasColimit.isoOfEquivalence e w).hom = CategoryTheory.CategoryStruct.comp (F.map (e.unit.app j)) (CategoryTheory.CategoryStruct.comp (w.inv.app ((e.functor.comp e.inverse).obj j)) (CategoryTheory.Limits.colimit.ι G (e.functor.obj ((e.functor.comp e.inverse).obj j)))) - CategoryTheory.Limits.HasColimit.ι_isoOfEquivalence_hom_assoc 📋 Mathlib.CategoryTheory.Limits.HasLimits
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] {G : CategoryTheory.Functor K C} [CategoryTheory.Limits.HasColimit G] (e : J ≌ K) (w : e.functor.comp G ≅ F) (j : J) {Z : C} (h : CategoryTheory.Limits.colimit G ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F j) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.HasColimit.isoOfEquivalence e w).hom h) = CategoryTheory.CategoryStruct.comp (F.map (e.unit.app j)) (CategoryTheory.CategoryStruct.comp (w.inv.app (e.inverse.obj (e.functor.obj j))) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι G (e.functor.obj (e.inverse.obj (e.functor.obj j)))) h)) - CategoryTheory.Limits.Sigma.isoColimit 📋 Mathlib.CategoryTheory.Limits.Shapes.Products
{α : Type w₂} {C : Type u} [CategoryTheory.Category.{v, u} C] (X : CategoryTheory.Functor (CategoryTheory.Discrete α) C) [CategoryTheory.Limits.HasCoproduct fun j => X.obj { as := j }] [CategoryTheory.Limits.HasColimit X] : (∐ fun j => X.obj { as := j }) ≅ CategoryTheory.Limits.colimit X - CategoryTheory.Limits.instEpiDescι 📋 Mathlib.CategoryTheory.Limits.Shapes.Products
{C : Type u} [CategoryTheory.Category.{v, u} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F] [CategoryTheory.Limits.HasCoproduct F.obj] : CategoryTheory.Epi (CategoryTheory.Limits.Sigma.desc (CategoryTheory.Limits.colimit.ι F)) - CategoryTheory.Limits.Sigma.ι_isoColimit_hom 📋 Mathlib.CategoryTheory.Limits.Shapes.Products
{α : Type w₂} {C : Type u} [CategoryTheory.Category.{v, u} C] (X : CategoryTheory.Functor (CategoryTheory.Discrete α) C) [CategoryTheory.Limits.HasCoproduct fun j => X.obj { as := j }] [CategoryTheory.Limits.HasColimit X] (j : α) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.Sigma.ι (fun j => X.obj { as := j }) j) (CategoryTheory.Limits.Sigma.isoColimit X).hom = CategoryTheory.Limits.colimit.ι X { as := j } - CategoryTheory.Limits.Sigma.ι_isoColimit_inv 📋 Mathlib.CategoryTheory.Limits.Shapes.Products
{α : Type w₂} {C : Type u} [CategoryTheory.Category.{v, u} C] (X : CategoryTheory.Functor (CategoryTheory.Discrete α) C) [CategoryTheory.Limits.HasCoproduct fun j => X.obj { as := j }] [CategoryTheory.Limits.HasColimit X] (j : α) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι X { as := j }) (CategoryTheory.Limits.Sigma.isoColimit X).inv = CategoryTheory.Limits.Sigma.ι (fun j => X.obj { as := j }) j - CategoryTheory.Limits.Sigma.ι_isoColimit_hom_assoc 📋 Mathlib.CategoryTheory.Limits.Shapes.Products
{α : Type w₂} {C : Type u} [CategoryTheory.Category.{v, u} C] (X : CategoryTheory.Functor (CategoryTheory.Discrete α) C) [CategoryTheory.Limits.HasCoproduct fun j => X.obj { as := j }] [CategoryTheory.Limits.HasColimit X] (j : α) {Z : C} (h : CategoryTheory.Limits.colimit X ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.Sigma.ι (fun j => X.obj { as := j }) j) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.Sigma.isoColimit X).hom h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι X { as := j }) h - CategoryTheory.Limits.Sigma.ι_isoColimit_inv_assoc 📋 Mathlib.CategoryTheory.Limits.Shapes.Products
{α : Type w₂} {C : Type u} [CategoryTheory.Category.{v, u} C] (X : CategoryTheory.Functor (CategoryTheory.Discrete α) C) [CategoryTheory.Limits.HasCoproduct fun j => X.obj { as := j }] [CategoryTheory.Limits.HasColimit X] (j : α) {Z : C} (h : (∐ fun j => X.obj { as := j }) ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι X { as := j }) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.Sigma.isoColimit X).inv h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.Sigma.ι (fun j => X.obj { as := j }) j) h - CategoryTheory.Limits.hasColimit_of_domain_hasTerminal 📋 Mathlib.CategoryTheory.Limits.Shapes.Terminal
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u} [CategoryTheory.Category.{v, u} J] [CategoryTheory.Limits.HasTerminal J] {F : CategoryTheory.Functor J C} : CategoryTheory.Limits.HasColimit F - CategoryTheory.Limits.hasInitialChangeDiagram 📋 Mathlib.CategoryTheory.Limits.Shapes.Terminal
(C : Type u₁) [CategoryTheory.Category.{v₁, u₁} C] {F₁ : CategoryTheory.Functor (CategoryTheory.Discrete PEmpty.{w + 1}) C} {F₂ : CategoryTheory.Functor (CategoryTheory.Discrete PEmpty.{w' + 1}) C} (h : CategoryTheory.Limits.HasColimit F₁) : CategoryTheory.Limits.HasColimit F₂ - CategoryTheory.Limits.instHasColimitObjFunctorConstInitial 📋 Mathlib.CategoryTheory.Limits.Shapes.Terminal
{J : Type u_1} [CategoryTheory.Category.{v_1, u_1} J] {C : Type u_2} [CategoryTheory.Category.{v_2, u_2} C] [CategoryTheory.Limits.HasInitial C] : CategoryTheory.Limits.HasColimit ((CategoryTheory.Functor.const J).obj (⊥_ C)) - CategoryTheory.Limits.isIso_ι_of_isTerminal 📋 Mathlib.CategoryTheory.Limits.Shapes.Terminal
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u} [CategoryTheory.Category.{v, u} J] {j : J} (I : CategoryTheory.Limits.IsTerminal j) (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F] : CategoryTheory.IsIso (CategoryTheory.Limits.colimit.ι F j) - CategoryTheory.Limits.hasColimit_of_domain_hasInitial 📋 Mathlib.CategoryTheory.Limits.Shapes.Terminal
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u} [CategoryTheory.Category.{v, u} J] [CategoryTheory.Limits.HasInitial J] {F : CategoryTheory.Functor J C} [∀ (i j : J) (f : j ⟶ i), CategoryTheory.IsIso (F.map f)] : CategoryTheory.Limits.HasColimit F - CategoryTheory.Limits.isIso_ι_of_isInitial 📋 Mathlib.CategoryTheory.Limits.Shapes.Terminal
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u} [CategoryTheory.Category.{v, u} J] {j : J} (I : CategoryTheory.Limits.IsInitial j) (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F] [∀ (i j : J) (f : j ⟶ i), CategoryTheory.IsIso (F.map f)] : CategoryTheory.IsIso (CategoryTheory.Limits.colimit.ι F j) - CategoryTheory.Limits.hasBinaryCoproducts_of_hasColimit_pair 📋 Mathlib.CategoryTheory.Limits.Shapes.BinaryProducts.BinaryProducts
(C : Type u) [CategoryTheory.Category.{v, u} C] [∀ {X Y : C}, CategoryTheory.Limits.HasColimit (CategoryTheory.Limits.pair X Y)] : CategoryTheory.Limits.HasBinaryCoproducts C - CategoryTheory.Limits.hasPushouts_of_hasColimit_span 📋 Mathlib.CategoryTheory.Limits.Shapes.Pullback.HasPullback
(C : Type u) [CategoryTheory.Category.{v, u} C] [∀ {X Y Z : C} {f : X ⟶ Y} {g : X ⟶ Z}, CategoryTheory.Limits.HasColimit (CategoryTheory.Limits.span f g)] : CategoryTheory.Limits.HasPushouts C - CategoryTheory.Limits.PushoutCocone.inl_colimit_cocone 📋 Mathlib.CategoryTheory.Limits.Shapes.Pullback.HasPullback
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} (f : Z ⟶ X) (g : Z ⟶ Y) [CategoryTheory.Limits.HasColimit (CategoryTheory.Limits.span f g)] : CategoryTheory.Limits.PushoutCocone.inl (CategoryTheory.Limits.colimit.cocone (CategoryTheory.Limits.span f g)) = CategoryTheory.Limits.pushout.inl f g - CategoryTheory.Limits.PushoutCocone.inr_colimit_cocone 📋 Mathlib.CategoryTheory.Limits.Shapes.Pullback.HasPullback
{C : Type u} [CategoryTheory.Category.{v, u} C] {X Y Z : C} (f : Z ⟶ X) (g : Z ⟶ Y) [CategoryTheory.Limits.HasColimit (CategoryTheory.Limits.span f g)] : CategoryTheory.Limits.PushoutCocone.inr (CategoryTheory.Limits.colimit.cocone (CategoryTheory.Limits.span f g)) = CategoryTheory.Limits.pushout.inr f g - CategoryTheory.Limits.hasCoequalizers_of_hasColimit_parallelPair 📋 Mathlib.CategoryTheory.Limits.Shapes.Equalizers
(C : Type u) [CategoryTheory.Category.{v, u} C] [∀ {X Y : C} {f g : X ⟶ Y}, CategoryTheory.Limits.HasColimit (CategoryTheory.Limits.parallelPair f g)] : CategoryTheory.Limits.HasCoequalizers C - CategoryTheory.Limits.isSplitMono_coprod_inl 📋 Mathlib.CategoryTheory.Limits.Shapes.ZeroMorphisms
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasZeroMorphisms C] {X Y : C} [CategoryTheory.Limits.HasColimit (CategoryTheory.Limits.pair X Y)] : CategoryTheory.IsSplitMono CategoryTheory.Limits.coprod.inl - CategoryTheory.Limits.isSplitMono_coprod_inr 📋 Mathlib.CategoryTheory.Limits.Shapes.ZeroMorphisms
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasZeroMorphisms C] {X Y : C} [CategoryTheory.Limits.HasColimit (CategoryTheory.Limits.pair X Y)] : CategoryTheory.IsSplitMono CategoryTheory.Limits.coprod.inr - CategoryTheory.Limits.isSplitMono_sigma_ι 📋 Mathlib.CategoryTheory.Limits.Shapes.ZeroMorphisms
{C : Type u} [CategoryTheory.Category.{v, u} C] {β : Type u'} [CategoryTheory.Limits.HasZeroMorphisms C] (f : β → C) [CategoryTheory.Limits.HasColimit (CategoryTheory.Discrete.functor f)] (b : β) : CategoryTheory.IsSplitMono (CategoryTheory.Limits.Sigma.ι f b) - CategoryTheory.Limits.PreservesColimit.mk' 📋 Mathlib.CategoryTheory.Limits.Preserves.Basic
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : Type w} [CategoryTheory.Category.{w', w} J] {K : CategoryTheory.Functor J C} {F : CategoryTheory.Functor C D} (h : CategoryTheory.Limits.HasColimit K → CategoryTheory.Limits.PreservesColimit K F) : CategoryTheory.Limits.PreservesColimit K F - CategoryTheory.Limits.instHasColimitCompOfPreservesColimit 📋 Mathlib.CategoryTheory.Limits.Preserves.Basic
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : Type w} [CategoryTheory.Category.{w', w} J] {K : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit K] {F : CategoryTheory.Functor C D} [CategoryTheory.Limits.PreservesColimit K F] : CategoryTheory.Limits.HasColimit (K.comp F) - CategoryTheory.Limits.reflectsColimit_of_reflectsIsomorphisms 📋 Mathlib.CategoryTheory.Limits.Preserves.Basic
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : Type w} [CategoryTheory.Category.{w', w} J] (F : CategoryTheory.Functor J C) (G : CategoryTheory.Functor C D) [G.ReflectsIsomorphisms] [CategoryTheory.Limits.HasColimit F] [CategoryTheory.Limits.PreservesColimit F G] : CategoryTheory.Limits.ReflectsColimit F G - CategoryTheory.Preadditive.epi_of_cokernel_iso_zero 📋 Mathlib.CategoryTheory.Preadditive.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasZeroObject C] {X Y : C} {f : X ⟶ Y} [CategoryTheory.Limits.HasColimit (CategoryTheory.Limits.parallelPair f 0)] (w : CategoryTheory.Limits.cokernel f ≅ 0) : CategoryTheory.Epi f - CategoryTheory.Preadditive.epi_of_cokernel_zero 📋 Mathlib.CategoryTheory.Preadditive.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {X Y : C} {f : X ⟶ Y} [CategoryTheory.Limits.HasColimit (CategoryTheory.Limits.parallelPair f 0)] (w : CategoryTheory.Limits.cokernel.π f = 0) : CategoryTheory.Epi f - CategoryTheory.Limits.HasBinaryBiproduct.hasColimit_pair 📋 Mathlib.CategoryTheory.Limits.Shapes.BinaryBiproducts
{C : Type uC} [CategoryTheory.Category.{uC', uC} C] [CategoryTheory.Limits.HasZeroMorphisms C] {P Q : C} [CategoryTheory.Limits.HasBinaryBiproduct P Q] : CategoryTheory.Limits.HasColimit (CategoryTheory.Limits.pair P Q) - CategoryTheory.Limits.colimit.w_apply 📋 Mathlib.CategoryTheory.ConcreteCategory.Elementwise
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F] {j j' : J} (f : j' ⟶ j) {F✝ : C → C → Type uF} {carrier : C → Type w} {instFunLike : (X Y : C) → FunLike (F✝ X Y) (carrier X) (carrier Y)} [inst : CategoryTheory.ConcreteCategory C F✝] (x : carrier (F.obj j')) : (CategoryTheory.ConcreteCategory.hom (CategoryTheory.Limits.colimit.ι F j)) ((CategoryTheory.ConcreteCategory.hom (F.map f)) x) = (CategoryTheory.ConcreteCategory.hom (CategoryTheory.Limits.colimit.ι F j')) x - CategoryTheory.Limits.colimit.ι_desc_apply 📋 Mathlib.CategoryTheory.ConcreteCategory.Elementwise
{J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {C : Type u} [CategoryTheory.Category.{v, u} C] {F : CategoryTheory.Functor J C} [CategoryTheory.Limits.HasColimit F] (c : CategoryTheory.Limits.Cocone F) (j : J) {F✝ : C → C → Type uF} {carrier : C → Type w} {instFunLike : (X Y : C) → FunLike (F✝ X Y) (carrier X) (carrier Y)} [inst : CategoryTheory.ConcreteCategory C F✝] (x : carrier (F.obj j)) : (CategoryTheory.ConcreteCategory.hom (CategoryTheory.Limits.colimit.desc F c)) ((CategoryTheory.ConcreteCategory.hom (CategoryTheory.Limits.colimit.ι F j)) x) = (CategoryTheory.ConcreteCategory.hom (c.ι.app j)) x - CategoryTheory.Limits.Types.hasColimit 📋 Mathlib.CategoryTheory.Limits.Types.Colimits
{J : Type v} [CategoryTheory.Category.{w, v} J] [Small.{u, v} J] (F : CategoryTheory.Functor J (Type u)) : CategoryTheory.Limits.HasColimit F - CategoryTheory.Limits.Types.small_colimitType_of_hasColimit 📋 Mathlib.CategoryTheory.Limits.Types.Colimits
{J : Type v} [CategoryTheory.Category.{w, v} J] (F : CategoryTheory.Functor J (Type u)) [CategoryTheory.Limits.HasColimit F] : Small.{u, max u v} F.ColimitType - CategoryTheory.Limits.Types.hasColimit_iff_small_colimitType 📋 Mathlib.CategoryTheory.Limits.Types.Colimits
{J : Type v} [CategoryTheory.Category.{w, v} J] (F : CategoryTheory.Functor J (Type u)) : CategoryTheory.Limits.HasColimit F ↔ Small.{u, max u v} F.ColimitType - CategoryTheory.Limits.Types.nonempty_of_nonempty_colimit 📋 Mathlib.CategoryTheory.Limits.Types.Colimits
{J : Type v} [CategoryTheory.Category.{w, v} J] {F : CategoryTheory.Functor J (Type u)} [CategoryTheory.Limits.HasColimit F] : Nonempty (CategoryTheory.Limits.colimit F) → Nonempty J - CategoryTheory.Limits.Types.colimitEquivColimitType 📋 Mathlib.CategoryTheory.Limits.Types.Colimits
{J : Type v} [CategoryTheory.Category.{w, v} J] (F : CategoryTheory.Functor J (Type u)) [CategoryTheory.Limits.HasColimit F] : CategoryTheory.Limits.colimit F ≃ F.ColimitType - CategoryTheory.Limits.Types.jointly_surjective' 📋 Mathlib.CategoryTheory.Limits.Types.Colimits
{J : Type v} [CategoryTheory.Category.{w, v} J] {F : CategoryTheory.Functor J (Type u)} [CategoryTheory.Limits.HasColimit F] (x : CategoryTheory.Limits.colimit F) : ∃ j y, (CategoryTheory.ConcreteCategory.hom (CategoryTheory.Limits.colimit.ι F j)) y = x - CategoryTheory.Limits.Types.colimitEquivColimitType_apply 📋 Mathlib.CategoryTheory.Limits.Types.Colimits
{J : Type v} [CategoryTheory.Category.{w, v} J] (F : CategoryTheory.Functor J (Type u)) [CategoryTheory.Limits.HasColimit F] (j : J) (x : F.obj j) : (CategoryTheory.Limits.Types.colimitEquivColimitType F) ((CategoryTheory.ConcreteCategory.hom (CategoryTheory.Limits.colimit.ι F j)) x) = Quot.mk F.ColimitTypeRel ⟨j, x⟩ - CategoryTheory.Limits.Types.colimitEquivColimitType_symm_apply 📋 Mathlib.CategoryTheory.Limits.Types.Colimits
{J : Type v} [CategoryTheory.Category.{w, v} J] (F : CategoryTheory.Functor J (Type u)) [CategoryTheory.Limits.HasColimit F] (j : J) (x : F.obj j) : (CategoryTheory.Limits.Types.colimitEquivColimitType F).symm (Quot.mk F.ColimitTypeRel ⟨j, x⟩) = (CategoryTheory.ConcreteCategory.hom (CategoryTheory.Limits.colimit.ι F j)) x - CategoryTheory.Limits.Types.colimit_eq 📋 Mathlib.CategoryTheory.Limits.Types.Colimits
{J : Type v} [CategoryTheory.Category.{w, v} J] {F : CategoryTheory.Functor J (Type u)} [CategoryTheory.Limits.HasColimit F] {j j' : J} {x : F.obj j} {x' : F.obj j'} (w : (CategoryTheory.ConcreteCategory.hom (CategoryTheory.Limits.colimit.ι F j)) x = (CategoryTheory.ConcreteCategory.hom (CategoryTheory.Limits.colimit.ι F j')) x') : Relation.EqvGen F.ColimitTypeRel ⟨j, x⟩ ⟨j', x'⟩ - CategoryTheory.Limits.Types.Colimit.w_apply 📋 Mathlib.CategoryTheory.Limits.Types.Colimits
{J : Type v} [CategoryTheory.Category.{w, v} J] {F : CategoryTheory.Functor J (Type u)} [CategoryTheory.Limits.HasColimit F] {j j' : J} {x : F.obj j} (f : j ⟶ j') : (CategoryTheory.ConcreteCategory.hom (CategoryTheory.Limits.colimit.ι F j')) ((CategoryTheory.ConcreteCategory.hom (F.map f)) x) = (CategoryTheory.ConcreteCategory.hom (CategoryTheory.Limits.colimit.ι F j)) x - CategoryTheory.Limits.Types.colimit_sound 📋 Mathlib.CategoryTheory.Limits.Types.Colimits
{J : Type v} [CategoryTheory.Category.{w, v} J] {F : CategoryTheory.Functor J (Type u)} [CategoryTheory.Limits.HasColimit F] {j j' : J} {x : F.obj j} {x' : F.obj j'} (f : j ⟶ j') (w : (CategoryTheory.ConcreteCategory.hom (F.map f)) x = x') : (CategoryTheory.ConcreteCategory.hom (CategoryTheory.Limits.colimit.ι F j)) x = (CategoryTheory.ConcreteCategory.hom (CategoryTheory.Limits.colimit.ι F j')) x' - CategoryTheory.Limits.Types.colimit_sound' 📋 Mathlib.CategoryTheory.Limits.Types.Colimits
{J : Type v} [CategoryTheory.Category.{w, v} J] {F : CategoryTheory.Functor J (Type u)} [CategoryTheory.Limits.HasColimit F] {j j' : J} {x : F.obj j} {x' : F.obj j'} {j'' : J} (f : j ⟶ j'') (f' : j' ⟶ j'') (w : (CategoryTheory.ConcreteCategory.hom (F.map f)) x = (CategoryTheory.ConcreteCategory.hom (F.map f')) x') : (CategoryTheory.ConcreteCategory.hom (CategoryTheory.Limits.colimit.ι F j)) x = (CategoryTheory.ConcreteCategory.hom (CategoryTheory.Limits.colimit.ι F j')) x' - CategoryTheory.Limits.Types.Colimit.ι_desc_apply 📋 Mathlib.CategoryTheory.Limits.Types.Colimits
{J : Type v} [CategoryTheory.Category.{w, v} J] (F : CategoryTheory.Functor J (Type u)) [CategoryTheory.Limits.HasColimit F] (s : CategoryTheory.Limits.Cocone F) (j : J) (x : F.obj j) : (CategoryTheory.ConcreteCategory.hom (CategoryTheory.Limits.colimit.desc F s)) ((CategoryTheory.ConcreteCategory.hom (CategoryTheory.Limits.colimit.ι F j)) x) = (CategoryTheory.ConcreteCategory.hom (s.ι.app j)) x - CategoryTheory.Limits.Types.FilteredColimit.colimit_eq_iff 📋 Mathlib.CategoryTheory.Limits.Types.Filtered
{J : Type v} [CategoryTheory.Category.{w, v} J] (F : CategoryTheory.Functor J (Type u)) [CategoryTheory.IsFilteredOrEmpty J] [CategoryTheory.Limits.HasColimit F] {i j : J} {xi : F.obj i} {xj : F.obj j} : (CategoryTheory.ConcreteCategory.hom (CategoryTheory.Limits.colimit.ι F i)) xi = (CategoryTheory.ConcreteCategory.hom (CategoryTheory.Limits.colimit.ι F j)) xj ↔ ∃ k f g, (CategoryTheory.ConcreteCategory.hom (F.map f)) xi = (CategoryTheory.ConcreteCategory.hom (F.map g)) xj - CategoryTheory.Limits.Types.FilteredColimit.colimit_eq_iff_aux 📋 Mathlib.CategoryTheory.Limits.Types.Filtered
{J : Type v} [CategoryTheory.Category.{w, v} J] (F : CategoryTheory.Functor J (Type u)) [CategoryTheory.IsFilteredOrEmpty J] [CategoryTheory.Limits.HasColimit F] {i j : J} {xi : F.obj i} {xj : F.obj j} : (CategoryTheory.ConcreteCategory.hom ((CategoryTheory.Limits.Types.colimitCocone F).ι.app i)) xi = (CategoryTheory.ConcreteCategory.hom ((CategoryTheory.Limits.Types.colimitCocone F).ι.app j)) xj ↔ CategoryTheory.Limits.Types.FilteredColimit.Rel F ⟨i, xi⟩ ⟨j, xj⟩ - CommRingCat.FilteredColimits.instNontrivialCarrierColimitOfIsFilteredOrEmptyOfObj 📋 Mathlib.Algebra.Category.Ring.FilteredColimits
{J : Type v} [CategoryTheory.SmallCategory J] {F : CategoryTheory.Functor J CommRingCat} [CategoryTheory.IsFilteredOrEmpty J] [CategoryTheory.Limits.HasColimit F] [∀ (i : J), Nontrivial ↑(F.obj i)] : Nontrivial ↑(CategoryTheory.Limits.colimit F) - CategoryTheory.preservesColimitIso 📋 Mathlib.CategoryTheory.Limits.Preserves.Limits
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] (G : CategoryTheory.Functor C D) {J : Type w} [CategoryTheory.Category.{w', w} J] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.PreservesColimit F G] [CategoryTheory.Limits.HasColimit F] : G.obj (CategoryTheory.Limits.colimit F) ≅ CategoryTheory.Limits.colimit (F.comp G) - CategoryTheory.preservesColimit_of_isIso_post 📋 Mathlib.CategoryTheory.Limits.Preserves.Limits
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] (G : CategoryTheory.Functor C D) {J : Type w} [CategoryTheory.Category.{w', w} J] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F] [CategoryTheory.Limits.HasColimit (F.comp G)] [CategoryTheory.IsIso (CategoryTheory.Limits.colimit.post F G)] : CategoryTheory.Limits.PreservesColimit F G - CategoryTheory.instIsIsoPost_1 📋 Mathlib.CategoryTheory.Limits.Preserves.Limits
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] (G : CategoryTheory.Functor C D) {J : Type w} [CategoryTheory.Category.{w', w} J] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.PreservesColimit F G] [CategoryTheory.Limits.HasColimit F] : CategoryTheory.IsIso (CategoryTheory.Limits.colimit.post F G) - CategoryTheory.ι_preservesColimitIso_inv 📋 Mathlib.CategoryTheory.Limits.Preserves.Limits
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] (G : CategoryTheory.Functor C D) {J : Type w} [CategoryTheory.Category.{w', w} J] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.PreservesColimit F G] [CategoryTheory.Limits.HasColimit F] (j : J) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι (F.comp G) j) (CategoryTheory.preservesColimitIso G F).inv = G.map (CategoryTheory.Limits.colimit.ι F j) - CategoryTheory.ι_preservesColimitIso_hom 📋 Mathlib.CategoryTheory.Limits.Preserves.Limits
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] (G : CategoryTheory.Functor C D) {J : Type w} [CategoryTheory.Category.{w', w} J] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.PreservesColimit F G] [CategoryTheory.Limits.HasColimit F] (j : J) : CategoryTheory.CategoryStruct.comp (G.map (CategoryTheory.Limits.colimit.ι F j)) (CategoryTheory.preservesColimitIso G F).hom = CategoryTheory.Limits.colimit.ι (F.comp G) j - CategoryTheory.preservesColimitIso_inv_comp_desc 📋 Mathlib.CategoryTheory.Limits.Preserves.Limits
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] (G : CategoryTheory.Functor C D) {J : Type w} [CategoryTheory.Category.{w', w} J] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.PreservesColimit F G] [CategoryTheory.Limits.HasColimit F] (t : CategoryTheory.Limits.Cocone F) : CategoryTheory.CategoryStruct.comp (CategoryTheory.preservesColimitIso G F).inv (G.map (CategoryTheory.Limits.colimit.desc F t)) = CategoryTheory.Limits.colimit.desc (F.comp G) (G.mapCocone t) - CategoryTheory.ι_preservesColimitIso_inv_assoc 📋 Mathlib.CategoryTheory.Limits.Preserves.Limits
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] (G : CategoryTheory.Functor C D) {J : Type w} [CategoryTheory.Category.{w', w} J] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.PreservesColimit F G] [CategoryTheory.Limits.HasColimit F] (j : J) {Z : D} (h : G.obj (CategoryTheory.Limits.colimit F) ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι (F.comp G) j) (CategoryTheory.CategoryStruct.comp (CategoryTheory.preservesColimitIso G F).inv h) = CategoryTheory.CategoryStruct.comp (G.map (CategoryTheory.Limits.colimit.ι F j)) h - CategoryTheory.ι_preservesColimitIso_hom_assoc 📋 Mathlib.CategoryTheory.Limits.Preserves.Limits
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] (G : CategoryTheory.Functor C D) {J : Type w} [CategoryTheory.Category.{w', w} J] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.PreservesColimit F G] [CategoryTheory.Limits.HasColimit F] (j : J) {Z : D} (h : CategoryTheory.Limits.colimit (F.comp G) ⟶ Z) : CategoryTheory.CategoryStruct.comp (G.map (CategoryTheory.Limits.colimit.ι F j)) (CategoryTheory.CategoryStruct.comp (CategoryTheory.preservesColimitIso G F).hom h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι (F.comp G) j) h - CategoryTheory.preservesColimitIso_inv_comp_desc_assoc 📋 Mathlib.CategoryTheory.Limits.Preserves.Limits
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] (G : CategoryTheory.Functor C D) {J : Type w} [CategoryTheory.Category.{w', w} J] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.PreservesColimit F G] [CategoryTheory.Limits.HasColimit F] (t : CategoryTheory.Limits.Cocone F) {Z : D} (h : G.obj t.pt ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.preservesColimitIso G F).inv (CategoryTheory.CategoryStruct.comp (G.map (CategoryTheory.Limits.colimit.desc F t)) h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.desc (F.comp G) (G.mapCocone t)) h - CategoryTheory.Limits.functorCategoryHasColimit 📋 Mathlib.CategoryTheory.Limits.FunctorCategory.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] (F : CategoryTheory.Functor J (CategoryTheory.Functor K C)) [∀ (k : K), CategoryTheory.Limits.HasColimit (F.flip.obj k)] : CategoryTheory.Limits.HasColimit F - CategoryTheory.Limits.evaluation_preservesColimit 📋 Mathlib.CategoryTheory.Limits.FunctorCategory.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] (F : CategoryTheory.Functor J (CategoryTheory.Functor K C)) [∀ (k : K), CategoryTheory.Limits.HasColimit (F.flip.obj k)] (k : K) : CategoryTheory.Limits.PreservesColimit F ((CategoryTheory.evaluation K C).obj k) - CategoryTheory.Limits.hasColimitCompEvaluation 📋 Mathlib.CategoryTheory.Limits.FunctorCategory.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] (F : CategoryTheory.Functor J (CategoryTheory.Functor K C)) (k : K) [CategoryTheory.Limits.HasColimit (F.flip.obj k)] : CategoryTheory.Limits.HasColimit (F.comp ((CategoryTheory.evaluation K C).obj k)) - CategoryTheory.Limits.colimit.ι_desc_app 📋 Mathlib.CategoryTheory.Limits.FunctorCategory.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] (H : CategoryTheory.Functor J (CategoryTheory.Functor K C)) [CategoryTheory.Limits.HasColimit H] (c : CategoryTheory.Limits.Cocone H) (j : J) (k : K) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.Limits.colimit.ι H j).app k) ((CategoryTheory.Limits.colimit.desc H c).app k) = (c.ι.app j).app k - CategoryTheory.Limits.colimit.ι_desc_app_assoc 📋 Mathlib.CategoryTheory.Limits.FunctorCategory.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] (H : CategoryTheory.Functor J (CategoryTheory.Functor K C)) [CategoryTheory.Limits.HasColimit H] (c : CategoryTheory.Limits.Cocone H) (j : J) (k : K) {Z : C} (h : c.pt.obj k ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.Limits.colimit.ι H j).app k) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Limits.colimit.desc H c).app k) h) = CategoryTheory.CategoryStruct.comp ((c.ι.app j).app k) h - CategoryTheory.hasColimit_of_created 📋 Mathlib.CategoryTheory.Limits.Creates
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : Type w} [CategoryTheory.Category.{w', w} J] (K : CategoryTheory.Functor J C) (F : CategoryTheory.Functor C D) [CategoryTheory.Limits.HasColimit (K.comp F)] [CategoryTheory.CreatesColimit K F] : CategoryTheory.Limits.HasColimit K - CategoryTheory.createsColimitOfReflectsIsomorphismsOfPreserves 📋 Mathlib.CategoryTheory.Limits.Creates
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : Type w} [CategoryTheory.Category.{w', w} J] {K : CategoryTheory.Functor J C} {F : CategoryTheory.Functor C D} [F.ReflectsIsomorphisms] [CategoryTheory.Limits.HasColimit K] [CategoryTheory.Limits.PreservesColimit K F] : CategoryTheory.CreatesColimit K F - CategoryTheory.preservesColimit_of_createsColimit_and_hasColimit 📋 Mathlib.CategoryTheory.Limits.Creates
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : Type w} [CategoryTheory.Category.{w', w} J] (K : CategoryTheory.Functor J C) (F : CategoryTheory.Functor C D) [CategoryTheory.CreatesColimit K F] [CategoryTheory.Limits.HasColimit (K.comp F)] : CategoryTheory.Limits.PreservesColimit K F - CategoryTheory.createsColimitOfFullyFaithfulOfIso 📋 Mathlib.CategoryTheory.Limits.Creates
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : Type w} [CategoryTheory.Category.{w', w} J] {K : CategoryTheory.Functor J C} {F : CategoryTheory.Functor C D} [F.Full] [F.Faithful] [CategoryTheory.Limits.HasColimit (K.comp F)] (X : C) (i : F.obj X ≅ CategoryTheory.Limits.colimit (K.comp F)) : CategoryTheory.CreatesColimit K F - CategoryTheory.createsColimitOfFullyFaithfulOfLift 📋 Mathlib.CategoryTheory.Limits.Creates
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {J : Type w} [CategoryTheory.Category.{w', w} J] {K : CategoryTheory.Functor J C} {F : CategoryTheory.Functor C D} [F.Full] [F.Faithful] [CategoryTheory.Limits.HasColimit (K.comp F)] (c : CategoryTheory.Limits.Cocone K) (i : F.mapCocone c ≅ CategoryTheory.Limits.colimit.cocone (K.comp F)) : CategoryTheory.CreatesColimit K F - CategoryTheory.Coyoneda.instHasColimitObjOppositeFunctorTypeCoyoneda 📋 Mathlib.CategoryTheory.Limits.Yoneda
{C : Type u} [CategoryTheory.Category.{v, u} C] (X : Cᵒᵖ) : CategoryTheory.Limits.HasColimit (CategoryTheory.coyoneda.obj X) - CategoryTheory.Limits.Concrete.colimit_exists_rep 📋 Mathlib.CategoryTheory.Limits.ConcreteCategory.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {FC : C → C → Type u_1} {CC : C → Type t} [(X Y : C) → FunLike (FC X Y) (CC X) (CC Y)] [CategoryTheory.ConcreteCategory C FC] {J : Type w} [CategoryTheory.Category.{r, w} J] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.PreservesColimit F (CategoryTheory.forget C)] [CategoryTheory.Limits.HasColimit F] (x : CategoryTheory.ToType (CategoryTheory.Limits.colimit F)) : ∃ j y, (CategoryTheory.ConcreteCategory.hom (CategoryTheory.Limits.colimit.ι F j)) y = x - CategoryTheory.Limits.Concrete.colimit_rep_eq_of_exists 📋 Mathlib.CategoryTheory.Limits.ConcreteCategory.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {FC : C → C → Type u_1} {CC : C → Type t} [(X Y : C) → FunLike (FC X Y) (CC X) (CC Y)] [CategoryTheory.ConcreteCategory C FC] {J : Type w} [CategoryTheory.Category.{r, w} J] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F] {i j : J} (x : CategoryTheory.ToType (F.obj i)) (y : CategoryTheory.ToType (F.obj j)) (h : ∃ k f g, (CategoryTheory.ConcreteCategory.hom (F.map f)) x = (CategoryTheory.ConcreteCategory.hom (F.map g)) y) : (CategoryTheory.ConcreteCategory.hom (CategoryTheory.Limits.colimit.ι F i)) x = (CategoryTheory.ConcreteCategory.hom (CategoryTheory.Limits.colimit.ι F j)) y - CategoryTheory.Limits.Concrete.colimit_exists_of_rep_eq 📋 Mathlib.CategoryTheory.Limits.ConcreteCategory.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {FC : C → C → Type u_1} {CC : C → Type s} [(X Y : C) → FunLike (FC X Y) (CC X) (CC Y)] [CategoryTheory.ConcreteCategory C FC] {J : Type w} [CategoryTheory.Category.{r, w} J] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.PreservesColimit F (CategoryTheory.forget C)] [CategoryTheory.IsFiltered J] [CategoryTheory.Limits.HasColimit F] {i j : J} (x : CategoryTheory.ToType (F.obj i)) (y : CategoryTheory.ToType (F.obj j)) (h : (CategoryTheory.ConcreteCategory.hom (CategoryTheory.Limits.colimit.ι F i)) x = (CategoryTheory.ConcreteCategory.hom (CategoryTheory.Limits.colimit.ι F j)) y) : ∃ k f g, (CategoryTheory.ConcreteCategory.hom (F.map f)) x = (CategoryTheory.ConcreteCategory.hom (F.map g)) y - CategoryTheory.Limits.Concrete.colimit_rep_eq_iff_exists 📋 Mathlib.CategoryTheory.Limits.ConcreteCategory.Basic
{C : Type u} [CategoryTheory.Category.{v, u} C] {FC : C → C → Type u_1} {CC : C → Type s} [(X Y : C) → FunLike (FC X Y) (CC X) (CC Y)] [CategoryTheory.ConcreteCategory C FC] {J : Type w} [CategoryTheory.Category.{r, w} J] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.PreservesColimit F (CategoryTheory.forget C)] [CategoryTheory.IsFiltered J] [CategoryTheory.Limits.HasColimit F] {i j : J} (x : CategoryTheory.ToType (F.obj i)) (y : CategoryTheory.ToType (F.obj j)) : (CategoryTheory.ConcreteCategory.hom (CategoryTheory.Limits.colimit.ι F i)) x = (CategoryTheory.ConcreteCategory.hom (CategoryTheory.Limits.colimit.ι F j)) y ↔ ∃ k f g, (CategoryTheory.ConcreteCategory.hom (F.map f)) x = (CategoryTheory.ConcreteCategory.hom (F.map g)) y - CategoryTheory.Limits.hasColimit_of_hasLimit_op 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasLimit F.op] : CategoryTheory.Limits.HasColimit F - CategoryTheory.Limits.hasColimit_op_of_hasLimit 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasLimit F] : CategoryTheory.Limits.HasColimit F.op - CategoryTheory.Limits.hasLimit_of_hasColimit_op 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F.op] : CategoryTheory.Limits.HasLimit F - CategoryTheory.Limits.hasLimit_op_of_hasColimit 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F] : CategoryTheory.Limits.HasLimit F.op - CategoryTheory.Limits.hasColimit_op_iff_hasLimit 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] {F : CategoryTheory.Functor J C} : CategoryTheory.Limits.HasColimit F.op ↔ CategoryTheory.Limits.HasLimit F - CategoryTheory.Limits.hasLimit_op_iff_hasColimit 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] {F : CategoryTheory.Functor J C} : CategoryTheory.Limits.HasLimit F.op ↔ CategoryTheory.Limits.HasColimit F - CategoryTheory.Limits.hasColimit_leftOp_of_hasLimit 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor J Cᵒᵖ) [CategoryTheory.Limits.HasLimit F] : CategoryTheory.Limits.HasColimit F.leftOp - CategoryTheory.Limits.hasColimit_of_hasLimit_leftOp 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor J Cᵒᵖ) [CategoryTheory.Limits.HasLimit F.leftOp] : CategoryTheory.Limits.HasColimit F - CategoryTheory.Limits.hasColimit_of_hasLimit_rightOp 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor Jᵒᵖ C) [CategoryTheory.Limits.HasLimit F.rightOp] : CategoryTheory.Limits.HasColimit F - CategoryTheory.Limits.hasColimit_rightOp_of_hasLimit 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor Jᵒᵖ C) [CategoryTheory.Limits.HasLimit F] : CategoryTheory.Limits.HasColimit F.rightOp - CategoryTheory.Limits.hasLimit_leftOp_of_hasColimit 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor J Cᵒᵖ) [CategoryTheory.Limits.HasColimit F] : CategoryTheory.Limits.HasLimit F.leftOp - CategoryTheory.Limits.hasLimit_of_hasColimit_leftOp 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor J Cᵒᵖ) [CategoryTheory.Limits.HasColimit F.leftOp] : CategoryTheory.Limits.HasLimit F - CategoryTheory.Limits.hasLimit_of_hasColimit_rightOp 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor Jᵒᵖ C) [CategoryTheory.Limits.HasColimit F.rightOp] : CategoryTheory.Limits.HasLimit F - CategoryTheory.Limits.hasLimit_rightOp_of_hasColimit 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor Jᵒᵖ C) [CategoryTheory.Limits.HasColimit F] : CategoryTheory.Limits.HasLimit F.rightOp - CategoryTheory.Limits.hasColimit_leftOp_iff_hasLimit 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] {F : CategoryTheory.Functor J Cᵒᵖ} : CategoryTheory.Limits.HasColimit F.leftOp ↔ CategoryTheory.Limits.HasLimit F - CategoryTheory.Limits.hasColimit_rightOp_iff_hasLimit 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] {F : CategoryTheory.Functor Jᵒᵖ C} : CategoryTheory.Limits.HasColimit F.rightOp ↔ CategoryTheory.Limits.HasLimit F - CategoryTheory.Limits.hasLimit_leftOp_iff_hasColimit 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] {F : CategoryTheory.Functor J Cᵒᵖ} : CategoryTheory.Limits.HasLimit F.leftOp ↔ CategoryTheory.Limits.HasColimit F - CategoryTheory.Limits.hasLimit_rightOp_iff_hasColimit 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] {F : CategoryTheory.Functor Jᵒᵖ C} : CategoryTheory.Limits.HasLimit F.rightOp ↔ CategoryTheory.Limits.HasColimit F - CategoryTheory.Limits.hasColimit_of_hasLimit_unop 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor Jᵒᵖ Cᵒᵖ) [CategoryTheory.Limits.HasLimit F.unop] : CategoryTheory.Limits.HasColimit F - CategoryTheory.Limits.hasColimit_unop_of_hasLimit 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor Jᵒᵖ Cᵒᵖ) [CategoryTheory.Limits.HasLimit F] : CategoryTheory.Limits.HasColimit F.unop - CategoryTheory.Limits.hasLimit_of_hasColimit_unop 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor Jᵒᵖ Cᵒᵖ) [CategoryTheory.Limits.HasColimit F.unop] : CategoryTheory.Limits.HasLimit F - CategoryTheory.Limits.hasLimit_unop_of_hasColimit 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor Jᵒᵖ Cᵒᵖ) [CategoryTheory.Limits.HasColimit F] : CategoryTheory.Limits.HasLimit F.unop - CategoryTheory.Limits.limitOpIsoOpColimit 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F] : CategoryTheory.Limits.limit F.op ≅ Opposite.op (CategoryTheory.Limits.colimit F) - CategoryTheory.Limits.limitLeftOpIsoUnopColimit 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor J Cᵒᵖ) [CategoryTheory.Limits.HasColimit F] : CategoryTheory.Limits.limit F.leftOp ≅ Opposite.unop (CategoryTheory.Limits.colimit F) - CategoryTheory.Limits.limitRightOpIsoOpColimit 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor Jᵒᵖ C) [CategoryTheory.Limits.HasColimit F] : CategoryTheory.Limits.limit F.rightOp ≅ Opposite.op (CategoryTheory.Limits.colimit F) - CategoryTheory.Limits.limitUnopIsoUnopColimit 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor Jᵒᵖ Cᵒᵖ) [CategoryTheory.Limits.HasColimit F] : CategoryTheory.Limits.limit F.unop ≅ Opposite.unop (CategoryTheory.Limits.colimit F) - CategoryTheory.Limits.limitOpIsoOpColimit_hom_comp_ι 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F] (j : J) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.limitOpIsoOpColimit F).hom (CategoryTheory.Limits.colimit.ι F j).op = CategoryTheory.Limits.limit.π F.op (Opposite.op j) - CategoryTheory.Limits.limitLeftOpIsoUnopColimit_hom_comp_ι 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor J Cᵒᵖ) [CategoryTheory.Limits.HasColimit F] (j : J) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.limitLeftOpIsoUnopColimit F).hom (CategoryTheory.Limits.colimit.ι F j).unop = CategoryTheory.Limits.limit.π F.leftOp (Opposite.op j) - CategoryTheory.Limits.limitLeftOpIsoUnopColimit_inv_comp_π 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor J Cᵒᵖ) [CategoryTheory.Limits.HasColimit F] (j : Jᵒᵖ) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.limitLeftOpIsoUnopColimit F).inv (CategoryTheory.Limits.limit.π F.leftOp j) = (CategoryTheory.Limits.colimit.ι F (Opposite.unop j)).unop - CategoryTheory.Limits.limitOpIsoOpColimit_inv_comp_π 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F] (j : Jᵒᵖ) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.limitOpIsoOpColimit F).inv (CategoryTheory.Limits.limit.π F.op j) = (CategoryTheory.Limits.colimit.ι F (Opposite.unop j)).op - CategoryTheory.Limits.limitUnopIsoUnopColimit_inv_comp_π 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor Jᵒᵖ Cᵒᵖ) [CategoryTheory.Limits.HasColimit F] (j : J) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.limitUnopIsoUnopColimit F).inv (CategoryTheory.Limits.limit.π F.unop j) = (CategoryTheory.Limits.colimit.ι F (Opposite.op j)).unop - CategoryTheory.Limits.limitRightOpIsoOpColimit_inv_comp_π 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor Jᵒᵖ C) [CategoryTheory.Limits.HasColimit F] (j : J) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.limitRightOpIsoOpColimit F).inv (CategoryTheory.Limits.limit.π F.rightOp j) = (CategoryTheory.Limits.colimit.ι F (Opposite.op j)).op - CategoryTheory.Limits.limitRightOpIsoOpColimit_hom_comp_ι 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor Jᵒᵖ C) [CategoryTheory.Limits.HasColimit F] (j : Jᵒᵖ) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.limitRightOpIsoOpColimit F).hom (CategoryTheory.Limits.colimit.ι F j).op = CategoryTheory.Limits.limit.π F.rightOp (Opposite.unop j) - CategoryTheory.Limits.limitUnopIsoUnopColimit_hom_comp_ι 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor Jᵒᵖ Cᵒᵖ) [CategoryTheory.Limits.HasColimit F] (j : Jᵒᵖ) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.limitUnopIsoUnopColimit F).hom (CategoryTheory.Limits.colimit.ι F j).unop = CategoryTheory.Limits.limit.π F.unop (Opposite.unop j) - CategoryTheory.Limits.limitLeftOpIsoUnopColimit_hom_comp_ι_assoc 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor J Cᵒᵖ) [CategoryTheory.Limits.HasColimit F] (j : J) {Z : C} (h : Opposite.unop (F.obj j) ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.limitLeftOpIsoUnopColimit F).hom (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F j).unop h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.limit.π F.leftOp (Opposite.op j)) h - CategoryTheory.Limits.limitLeftOpIsoUnopColimit_inv_comp_π_assoc 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor J Cᵒᵖ) [CategoryTheory.Limits.HasColimit F] (j : Jᵒᵖ) {Z : C} (h : F.leftOp.obj j ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.limitLeftOpIsoUnopColimit F).inv (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.limit.π F.leftOp j) h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F (Opposite.unop j)).unop h - CategoryTheory.Limits.limitOpIsoOpColimit_hom_comp_ι_assoc 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F] (j : J) {Z : Cᵒᵖ} (h : Opposite.op (F.obj j) ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.limitOpIsoOpColimit F).hom (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F j).op h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.limit.π F.op (Opposite.op j)) h - CategoryTheory.Limits.limitUnopIsoUnopColimit_inv_comp_π_assoc 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor Jᵒᵖ Cᵒᵖ) [CategoryTheory.Limits.HasColimit F] (j : J) {Z : C} (h : F.unop.obj j ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.limitUnopIsoUnopColimit F).inv (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.limit.π F.unop j) h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F (Opposite.op j)).unop h - CategoryTheory.Limits.limitUnopIsoUnopColimit_hom_comp_ι_assoc 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor Jᵒᵖ Cᵒᵖ) [CategoryTheory.Limits.HasColimit F] (j : Jᵒᵖ) {Z : C} (h : Opposite.unop (F.obj j) ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.limitUnopIsoUnopColimit F).hom (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F j).unop h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.limit.π F.unop (Opposite.unop j)) h - CategoryTheory.Limits.limitOpIsoOpColimit_inv_comp_π_assoc 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor J C) [CategoryTheory.Limits.HasColimit F] (j : Jᵒᵖ) {Z : Cᵒᵖ} (h : F.op.obj j ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.limitOpIsoOpColimit F).inv (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.limit.π F.op j) h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F (Opposite.unop j)).op h - CategoryTheory.Limits.limitRightOpIsoOpColimit_hom_comp_ι_assoc 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor Jᵒᵖ C) [CategoryTheory.Limits.HasColimit F] (j : Jᵒᵖ) {Z : Cᵒᵖ} (h : Opposite.op (F.obj j) ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.limitRightOpIsoOpColimit F).hom (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F j).op h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.limit.π F.rightOp (Opposite.unop j)) h - CategoryTheory.Limits.limitRightOpIsoOpColimit_inv_comp_π_assoc 📋 Mathlib.CategoryTheory.Limits.Opposites
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {J : Type u₂} [CategoryTheory.Category.{v₂, u₂} J] (F : CategoryTheory.Functor Jᵒᵖ C) [CategoryTheory.Limits.HasColimit F] (j : J) {Z : Cᵒᵖ} (h : F.rightOp.obj j ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.limitRightOpIsoOpColimit F).inv (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.limit.π F.rightOp j) h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.colimit.ι F (Opposite.op j)).op h - AddCommGrpCat.hasColimit 📋 Mathlib.Algebra.Category.Grp.Colimits
{J : Type u} [CategoryTheory.Category.{v, u} J] [Small.{w, u} J] (F : CategoryTheory.Functor J AddCommGrpCat) : CategoryTheory.Limits.HasColimit F - AddCommGrpCat.hasColimit_of_small_quot 📋 Mathlib.Algebra.Category.Grp.Colimits
{J : Type u} [CategoryTheory.Category.{v, u} J] (F : CategoryTheory.Functor J AddCommGrpCat) [DecidableEq J] (h : Small.{w, max u w} (AddCommGrpCat.Colimits.Quot F)) : CategoryTheory.Limits.HasColimit F - ModuleCat.HasColimit.colimitCocone 📋 Mathlib.Algebra.Category.ModuleCat.Colimits
{R : Type w} [Ring R] {J : Type u} [CategoryTheory.Category.{v, u} J] (F : CategoryTheory.Functor J (ModuleCat R)) [CategoryTheory.Limits.HasColimit (F.comp (CategoryTheory.forget₂ (ModuleCat R) AddCommGrpCat))] : CategoryTheory.Limits.Cocone F
About
Loogle searches Lean and Mathlib definitions and theorems.
You can use Loogle from within the Lean4 VSCode language extension
using the Loogle command from the command palette. You can also try the
#loogle command from LeanSearchClient,
the CLI version, the Loogle
VS Code extension, the lean.nvim
integration or the Zulip bot.
Usage
Loogle finds definitions and lemmas in various ways:
By constant:
🔍Real.sin
finds all lemmas whose statement somehow mentions the sine function.By lemma name substring:
🔍"differ"
finds all lemmas that have"differ"somewhere in their lemma name.By subexpression:
🔍_ * (_ ^ _)
finds all lemmas whose statements somewhere include a product where the second argument is raised to some power.The pattern can also be non-linear, as in
🔍Real.sqrt ?a * Real.sqrt ?aIf the pattern has parameters, they are matched in any order. Both of these will find
List.map:
🔍(?a -> ?b) -> List ?a -> List ?b
🔍List ?a -> (?a -> ?b) -> List ?bBy main conclusion:
🔍|- tsum _ = _ * tsum _
finds all lemmas where the conclusion (the subexpression to the right of all→and∀) has the given shape.As before, if the pattern has parameters, they are matched against the hypotheses of the lemma in any order; for example,
🔍|- _ < _ → tsum _ < tsum _
will findtsum_lt_tsumeven though the hypothesisf i < g iis not the last.You can filter for definitions vs theorems: Using
⊢ (_ : Type _)finds all definitions which provide data while⊢ (_ : Prop)finds all theorems (and definitions of proofs).
If you pass more than one such search filter, separated by commas
Loogle will return lemmas which match all of them. The
search
🔍 Real.sin, "two", tsum, _ * _, _ ^ _, |- _ < _ → _
would find all lemmas which mention the constants Real.sin
and tsum, have "two" as a substring of the
lemma name, include a product and a power somewhere in the type,
and have a hypothesis of the form _ < _ (if
there were any such lemmas). Metavariables (?a) are
assigned independently in each filter.
The #lucky button will directly send you to the
documentation of the first hit.
Source code
You can find the source code for this service at https://github.com/nomeata/loogle. The https://loogle.lean-lang.org/ service is provided by the Lean FRO. Please review the Lean FRO Terms of Use and Privacy Policy.
This is Loogle revision 9f11169 serving mathlib revision ce5dd8c