Limits of eventually constant functors #
If F : J ⥤ C
is a functor from a cofiltered category, and j : J
,
we introduce a property F.IsEventuallyConstantTo j
which says
that for any f : i ⟶ j
, the induced morphism F.map f
is an isomorphism.
Under this assumption, it is shown that F
admits F.obj j
as a limit
(Functor.IsEventuallyConstantTo.isLimitCone
).
A typeclass Cofiltered.IsEventuallyConstant
is also introduced, and
the dual results for filtered categories and colimits are also obtained.
A functor F : J ⥤ C
is eventually constant to j : J
if
for any map f : i ⟶ j
, the induced morphism F.map f
is an isomorphism.
If J
is cofiltered, this implies F
has a limit.
Equations
- F.IsEventuallyConstantTo j = ∀ ⦃i : J⦄ (f : i ⟶ j), CategoryTheory.IsIso (F.map f)
Instances For
A functor F : J ⥤ C
is eventually constant from i : J
if
for any map f : i ⟶ j
, the induced morphism F.map f
is an isomorphism.
If J
is filtered, this implies F
has a colimit.
Equations
- F.IsEventuallyConstantFrom i = ∀ ⦃j : J⦄ (f : i ⟶ j), CategoryTheory.IsIso (F.map f)
Instances For
The isomorphism F.obj i ≅ F.obj j
induced by φ : i ⟶ j
,
when h : F.IsEventuallyConstantTo i₀
and there exists a map j ⟶ i₀
.
Equations
- h.isoMap φ hφ = CategoryTheory.asIso (F.map φ)
Instances For
Auxiliary definition for IsEventuallyConstantTo.cone
.
Equations
- h.coneπApp j = CategoryTheory.CategoryStruct.comp (h.isoMap (CategoryTheory.IsCofiltered.minToLeft i₀ j) ⋯).inv (F.map (CategoryTheory.IsCofiltered.minToRight i₀ j))
Instances For
Given h : F.IsEventuallyConstantTo i₀
, this is the (limit) cone for F
whose
point is F.obj i₀
.
Equations
- h.cone = { pt := F.obj i₀, π := { app := h.coneπApp, naturality := ⋯ } }
Instances For
When h : F.IsEventuallyConstantTo i₀
, the limit of F
exists and is F.obj i₀
.
Equations
- h.isLimitCone = { lift := fun (s : CategoryTheory.Limits.Cone F) => s.π.app i₀, fac := ⋯, uniq := ⋯ }
Instances For
More general version of isIso_π_of_isLimit
.
The isomorphism F.obj i ≅ F.obj j
induced by φ : i ⟶ j
,
when h : F.IsEventuallyConstantFrom i₀
and there exists a map i₀ ⟶ i
.
Equations
- h.isoMap φ hφ = CategoryTheory.asIso (F.map φ)
Instances For
Auxiliary definition for IsEventuallyConstantFrom.cocone
.
Equations
- h.coconeιApp j = CategoryTheory.CategoryStruct.comp (F.map (CategoryTheory.IsFiltered.rightToMax i₀ j)) (h.isoMap (CategoryTheory.IsFiltered.leftToMax i₀ j) ⋯).inv
Instances For
Given h : F.IsEventuallyConstantFrom i₀
, this is the (limit) cocone for F
whose
point is F.obj i₀
.
Equations
- h.cocone = { pt := F.obj i₀, ι := { app := h.coconeιApp, naturality := ⋯ } }
Instances For
When h : F.IsEventuallyConstantFrom i₀
, the colimit of F
exists and is F.obj i₀
.
Equations
- h.isColimitCocone = { desc := fun (s : CategoryTheory.Limits.Cocone F) => s.ι.app i₀, fac := ⋯, uniq := ⋯ }
Instances For
More general version of isIso_ι_of_isColimit
.
A functor F : J ⥤ C
from a cofiltered category is eventually constant if there
exists j : J
, such that for any f : i ⟶ j
, the induced map F.map f
is an isomorphism.
- exists_isEventuallyConstantTo : ∃ (j : J), F.IsEventuallyConstantTo j
Instances
A functor F : J ⥤ C
from a filtered category is eventually constant if there
exists i : J
, such that for any f : i ⟶ j
, the induced map F.map f
is an isomorphism.
- exists_isEventuallyConstantFrom : ∃ (i : J), F.IsEventuallyConstantFrom i