Extending cones in LightProfinite
#
Let (Sₙ)_{n : ℕᵒᵖ}
be a sequential inverse system of finite sets and let S
be
its limit in Profinite
. Let G
be a functor from LightProfinite
to a category C
and suppose
that G
preserves the limit described above. Suppose further that the projection maps S ⟶ Sₙ
are
epimorphic for all n
. Then G.obj S
is isomorphic to a limit indexed by
StructuredArrow S toLightProfinite
(see LightProfinite.Extend.isLimitCone
).
We also provide the dual result for a functor of the form G : LightProfiniteᵒᵖ ⥤ C
.
We apply this to define LightProfinite.diagram'
, LightProfinite.asLimitCone'
, and
LightProfinite.asLimit'
, analogues to their unprimed versions in
Mathlib.Topology.Category.LightProfinite.AsLimit
, in which the
indexing category is StructuredArrow S toLightProfinite
instead of ℕᵒᵖ
.
Given a sequential cone in LightProfinite
consisting of finite sets,
we obtain a functor from the indexing category to StructuredArrow c.pt toLightProfinite
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Given a sequential cone in LightProfinite
consisting of finite sets,
we obtain a functor from the opposite of the indexing category to
CostructuredArrow toProfinite.op ⟨c.pt⟩
.
Equations
Instances For
If the projection maps in the cone are epimorphic and the cone is limiting, then
LightProfinite.Extend.functor
is initial.
If the projection maps in the cone are epimorphic and the cone is limiting, then
LightProfinite.Extend.functorOp
is final.
Given a functor G
from LightProfinite
and S : LightProfinite
, we obtain a cone on
(StructuredArrow.proj S toLightProfinite ⋙ toLightProfinite ⋙ G)
with cone point G.obj S
.
Whiskering this cone with LightProfinite.Extend.functor c
gives G.mapCone c
as we check in the
example below.
Equations
- LightProfinite.Extend.cone G S = { pt := G.obj S, π := { app := fun (i : CategoryTheory.StructuredArrow S FintypeCat.toLightProfinite) => G.map i.hom, naturality := ⋯ } }
Instances For
If c
and G.mapCone c
are limit cones and the projection maps in c
are epimorphic,
then cone G c.pt
is a limit cone.
Equations
Instances For
Given a functor G
from LightProfiniteᵒᵖ
and S : LightProfinite
, we obtain a cocone on
(CostructuredArrow.proj toLightProfinite.op ⟨S⟩ ⋙ toLightProfinite.op ⋙ G)
with cocone point
G.obj ⟨S⟩
.
Whiskering this cocone with LightProfinite.Extend.functorOp c
gives G.mapCocone c.op
as we
check in the example below.
Equations
- One or more equations did not get rendered due to their size.
Instances For
If c
is a limit cone, G.mapCocone c.op
is a colimit cone and the projection maps in c
are epimorphic, then cocone G c.pt
is a colimit cone.
Equations
- One or more equations did not get rendered due to their size.
Instances For
A functor StructuredArrow S toLightProfinite ⥤ FintypeCat
whose limit in LightProfinite
is
isomorphic to S
.
Equations
- S.fintypeDiagram' = CategoryTheory.StructuredArrow.proj S FintypeCat.toLightProfinite
Instances For
An abbreviation for S.fintypeDiagram' ⋙ toLightProfinite
.
Equations
- S.diagram' = S.fintypeDiagram'.comp FintypeCat.toLightProfinite
Instances For
A cone over S.diagram'
whose cone point is S
.
Equations
- S.asLimitCone' = LightProfinite.Extend.cone (CategoryTheory.Functor.id LightProfinite) S
Instances For
Equations
- ⋯ = ⋯
S.asLimitCone'
is a limit cone.
Equations
- S.asLimit' = LightProfinite.Extend.isLimitCone S.asLimitCone (CategoryTheory.Functor.id LightProfinite) S.asLimit S.asLimit
Instances For
A bundled version of S.asLimitCone'
and S.asLimit'
.
Equations
- S.lim' = { cone := S.asLimitCone', isLimit := S.asLimit' }