Compact subsets of products as limits in Profinite #
This file exhibits a compact subset C of a product (i : ι) → X i of totally disconnected
Hausdorff spaces as a cofiltered limit in Profinite indexed by Finset ι.
Main definitions #
Profinite.indexFunctoris the functor(Finset ι)ᵒᵖ ⥤ Profiniteindexing the limit. It mapsJto the restriction ofCtoJProfinite.indexConeis a cone onProfinite.indexFunctorwith cone pointC
Main results #
Profinite.isIso_indexCone_liftsays that the natural map from the cone point of the explicit limit cone inProfiniteonindexFunctorto the cone point ofindexConeis an isomorphismProfinite.asLimitindexConeIsois the induced isomorphism of cones.Profinite.indexCone_isLimitsays thatindexConeis a limit cone.
def
Profinite.IndexFunctor.obj
{ι : Type u}
{X : ι → Type}
[(i : ι) → TopologicalSpace (X i)]
(C : Set ((i : ι) → X i))
(J : ι → Prop)
:
Set ((i : { i : ι // J i }) → X ↑i)
The object part of the functor indexFunctor : (Finset ι)ᵒᵖ ⥤ Profinite.
Equations
- Profinite.IndexFunctor.obj C J = ⇑(ContinuousMap.precomp Subtype.val) '' C
Instances For
def
Profinite.IndexFunctor.π_app
{ι : Type u}
{X : ι → Type}
[(i : ι) → TopologicalSpace (X i)]
(C : Set ((i : ι) → X i))
(J : ι → Prop)
:
C(↑C, ↑(Profinite.IndexFunctor.obj C J))
The projection maps in the limit cone indexCone.
Equations
- Profinite.IndexFunctor.π_app C J = { toFun := Set.MapsTo.restrict (⇑(ContinuousMap.precomp Subtype.val)) C (Profinite.IndexFunctor.obj C J) ⋯, continuous_toFun := ⋯ }
Instances For
def
Profinite.IndexFunctor.map
{ι : Type u}
{X : ι → Type}
[(i : ι) → TopologicalSpace (X i)]
(C : Set ((i : ι) → X i))
{J : ι → Prop}
{K : ι → Prop}
(h : ∀ (i : ι), J i → K i)
:
C(↑(Profinite.IndexFunctor.obj C K), ↑(Profinite.IndexFunctor.obj C J))
The morphism part of the functor indexFunctor : (Finset ι)ᵒᵖ ⥤ Profinite.
Equations
- One or more equations did not get rendered due to their size.
Instances For
theorem
Profinite.IndexFunctor.surjective_π_app
{ι : Type u}
{X : ι → Type}
[(i : ι) → TopologicalSpace (X i)]
(C : Set ((i : ι) → X i))
{J : ι → Prop}
:
theorem
Profinite.IndexFunctor.map_comp_π_app
{ι : Type u}
{X : ι → Type}
[(i : ι) → TopologicalSpace (X i)]
(C : Set ((i : ι) → X i))
{J : ι → Prop}
{K : ι → Prop}
(h : ∀ (i : ι), J i → K i)
:
⇑(Profinite.IndexFunctor.map C h) ∘ ⇑(Profinite.IndexFunctor.π_app C K) = ⇑(Profinite.IndexFunctor.π_app C J)
theorem
Profinite.IndexFunctor.eq_of_forall_π_app_eq
{ι : Type u}
{X : ι → Type}
[(i : ι) → TopologicalSpace (X i)]
{C : Set ((i : ι) → X i)}
(a : ↑C)
(b : ↑C)
(h : ∀ (J : Finset ι),
(Profinite.IndexFunctor.π_app C fun (x : ι) => x ∈ J) a = (Profinite.IndexFunctor.π_app C fun (x : ι) => x ∈ J) b)
:
a = b
noncomputable def
Profinite.indexFunctor
{ι : Type u}
{X : ι → Type}
[(i : ι) → TopologicalSpace (X i)]
{C : Set ((i : ι) → X i)}
[∀ (i : ι), T2Space (X i)]
[∀ (i : ι), TotallyDisconnectedSpace (X i)]
(hC : IsCompact C)
:
The functor from the poset of finsets of ι to Profinite, indexing the limit.
Equations
- One or more equations did not get rendered due to their size.
Instances For
noncomputable def
Profinite.indexCone
{ι : Type u}
{X : ι → Type}
[(i : ι) → TopologicalSpace (X i)]
{C : Set ((i : ι) → X i)}
[∀ (i : ι), T2Space (X i)]
[∀ (i : ι), TotallyDisconnectedSpace (X i)]
(hC : IsCompact C)
:
The limit cone on indexFunctor
Equations
- Profinite.indexCone hC = { pt := Profinite.of ↑C, π := { app := fun (J : (Finset ι)ᵒᵖ) => Profinite.IndexFunctor.π_app C fun (x : ι) => x ∈ J.unop, naturality := ⋯ } }
Instances For
instance
Profinite.isIso_indexCone_lift
{ι : Type u}
{X : ι → Type}
[(i : ι) → TopologicalSpace (X i)]
{C : Set ((i : ι) → X i)}
[∀ (i : ι), T2Space (X i)]
[∀ (i : ι), TotallyDisconnectedSpace (X i)]
(hC : IsCompact C)
:
CategoryTheory.IsIso ((Profinite.limitConeIsLimit (Profinite.indexFunctor hC)).lift (Profinite.indexCone hC))
Equations
- ⋯ = ⋯
noncomputable def
Profinite.isoindexConeLift
{ι : Type u}
{X : ι → Type}
[(i : ι) → TopologicalSpace (X i)]
{C : Set ((i : ι) → X i)}
[∀ (i : ι), T2Space (X i)]
[∀ (i : ι), TotallyDisconnectedSpace (X i)]
(hC : IsCompact C)
:
Profinite.of ↑C ≅ (Profinite.limitCone (Profinite.indexFunctor hC)).pt
The canonical map from C to the explicit limit as an isomorphism.
Equations
Instances For
noncomputable def
Profinite.asLimitindexConeIso
{ι : Type u}
{X : ι → Type}
[(i : ι) → TopologicalSpace (X i)]
{C : Set ((i : ι) → X i)}
[∀ (i : ι), T2Space (X i)]
[∀ (i : ι), TotallyDisconnectedSpace (X i)]
(hC : IsCompact C)
:
The isomorphism of cones induced by isoindexConeLift.
Equations
Instances For
noncomputable def
Profinite.indexCone_isLimit
{ι : Type u}
{X : ι → Type}
[(i : ι) → TopologicalSpace (X i)]
{C : Set ((i : ι) → X i)}
[∀ (i : ι), T2Space (X i)]
[∀ (i : ι), TotallyDisconnectedSpace (X i)]
(hC : IsCompact C)
:
indexCone is a limit cone.