Profinite sets as limits of finite sets. #
We show that any profinite set is isomorphic to the limit of its discrete (hence finite) quotients.
Definitions #
There are a handful of definitions in this file, given X : Profinite:
X.fintypeDiagramis the functorDiscreteQuotient X ⥤ FintypeCatwhose limit is isomorphic toX(the limit taking place inProfiniteviaFintypeCat.toProfinite, see 2).X.diagramis an abbreviation forX.fintypeDiagram ⋙ FintypeCat.toProfinite.X.asLimitConeis the cone overX.diagramwhose cone point isX.X.isoAsLimitConeLiftis the isomorphismX ≅ (Profinite.limitCone X.diagram).Xinduced by liftingX.asLimitCone.X.asLimitConeIsois the isomorphismX.asLimitCone ≅ (Profinite.limitCone X.diagram)induced byX.isoAsLimitConeLift.X.asLimitis a term of typeIsLimit X.asLimitCone.X.lim : CategoryTheory.Limits.LimitCone X.asLimitConeis a bundled combination of 3 and 6.
def
Profinite.fintypeDiagram
(X : Profinite)
:
CategoryTheory.Functor (DiscreteQuotient ↑X.toCompHaus.toTop) FintypeCat
The functor DiscreteQuotient X ⥤ Fintype whose limit is isomorphic to X.
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[inline, reducible]
abbrev
Profinite.diagram
(X : Profinite)
:
CategoryTheory.Functor (DiscreteQuotient ↑X.toCompHaus.toTop) Profinite
An abbreviation for X.fintypeDiagram ⋙ FintypeCat.toProfinite.
Equations
Instances For
A cone over X.diagram whose cone point is X.
Equations
- Profinite.asLimitCone X = { pt := X, π := CategoryTheory.NatTrans.mk fun (S : DiscreteQuotient ↑X.toCompHaus.toTop) => ContinuousMap.mk (DiscreteQuotient.proj S) }
Instances For
Equations
- One or more equations did not get rendered due to their size.
def
Profinite.isoAsLimitConeLift
(X : Profinite)
:
X ≅ (Profinite.limitCone (Profinite.diagram X)).pt
The isomorphism between X and the explicit limit of X.diagram,
induced by lifting X.asLimitCone.
Equations
Instances For
The isomorphism of cones X.asLimitCone and Profinite.limitCone X.diagram.
The underlying isomorphism is defeq to X.isoAsLimitConeLift.
Equations
Instances For
A bundled version of X.asLimitCone and X.asLimit.
Equations
- Profinite.lim X = { cone := Profinite.asLimitCone X, isLimit := Profinite.asLimit X }