The profinite pro-2 group Π and its unramified marking ν₂ (Stage C, work order C3) #
This file realises the manuscript's maximal pro-2 quotient
Π = ⟨σ, x₀, x₁ ∣ x₀^{σ²} x₀ [x₁,σ] = 1⟩_{pro-2} (reference/q2_manuscript.tex,
Proposition 3.10 prop:pro2, lines ~962–995) as the cofiltered inverse limit, in
ProfiniteGrp, of all finite marked pro-2 boundary quotients — exactly mirroring
the Stage-C construction of the tame group Ttame in Boundary/Ttame.lean, but with
the 3-generator pro-2 marking (σ, x₀, x₁) (carrying the 2-group side condition)
in place of the 2-generator tame marking (s, t).
The finite index objects PiMarkedFinite, their morphisms PiHom, the index category
and PiHom_ext are reused from Boundary/Nielsen.lean (work order C4); this file
only adds the cofiltered structure on that category and the inverse-limit construction
on top of it.
Main contents:
IsCofiltered PiMarkedFinite— binary subdirect objects (piSubdirectObj) plus the subsingleton hom-sets (PiHom_ext) make the index category cofiltered.piDiagram : PiMarkedFinite ⥤ ProfiniteGrp,PiGrp := Limits.limit piDiagram, the bridgepiIso/PiGrp_ext, the universal generatorspiSigma, piX0, piX1 : PiGrp, their projection-eval lemmas, the coordinatewise boundary relationPiGrp_piRel, and dense generationpiGen_topologically_generate.nu_2 : PiGrp ⟶ ProfiniteZ2— the unramified characterσ ↦ 1,x₀ ↦ 0,x₁ ↦ 0(eq:nu2). In a pro-2group the wild generatorsx₀, x₁are killed in the unramified quotient; only the procyclicσ-direction survives. Built as the map intoℤ₂ = lim_n ZMod(2ⁿ)whosen-th layer is the projection ofPiGrpthrough the auxiliary cyclic-2-group boundary quotientcyclicPi n(carrierC2Pow n,σ= additive generator,x₀ = x₁ = 1).
Instance gotcha (inherited from AdmissibleIndex.lean / Nielsen.lean) #
Fin n carries the global Fin.instMul, not the transported group structure
A.groupFin. We thread A.groupFin explicitly (@, letI, projection access) through
every Fin-level construction so Fin.instMul is never synthesized.
Generic transport lemmas (no Fin.instMul) #
The commutator word commutes with any monoid homomorphism.
Skeletalization of an arbitrary pro-2 boundary-marked finite group #
Skeletalization. Any boundary marking (σ, x₀, x₁) of an arbitrary nonempty
finite 2-group G is realised by a PiMarkedFinite on Fin (Nat.card G), transporting
G's group structure along Finite.equivFin G (mirrors tameSkeletalize).
Equations
- One or more equations did not get rendered due to their size.
Instances For
The transport equivalence underlying piSkeletalize, as a MulEquiv
Fin (piSkeletalize …).n ≃* G (mirrors tameSkelEquiv).
Equations
- Q2Presentation.piSkelEquiv G hG2 sigma x0 x1 hgen hrel = (Finite.equivFin G).symm.mulEquiv
Instances For
The morphism-out and morphism-between constructors #
A marking-preserving hom ψ : G →* Fin D.n out of G induces a Π morphism
piSkeletalize G … ⟶ D (mirrors tameSkeletalizeHomOut).
Equations
- Q2Presentation.piSkeletalizeHomOut ψ hψsigma hψx0 hψx1 = { toMonoidHom := ψ.comp (Q2Presentation.piSkelEquiv G hG2 sigma x0 x1 hgen hrel).toMonoidHom, map_sigma := ⋯, map_x0 := ⋯, map_x1 := ⋯ }
Instances For
A marking-preserving group hom φ : G →* H between two boundary-marked groups induces
a Π morphism of their skeletalizations. Stated with both G, H generic so the target
skeleton MulOneClass is resolved (to groupFin) once in this generic context, never
Fin.instMul (mirrors tameSkelHomBetween).
Equations
- Q2Presentation.piSkelHomBetween φ hs h0 h1 = Q2Presentation.piSkeletalizeHomOut ((Q2Presentation.piSkelEquiv H hH2 sH x0H x1H hgH hrH).symm.toMonoidHom.comp φ) ⋯ ⋯ ⋯
Instances For
The induced morphism intertwines the transport equivalences with φ.
Nonemptiness: the trivial pro-2 boundary quotient #
Binary subdirect objects #
The subgroup of ∀ i, G i generated by the diagonal triple (σ, x₀, x₁).
Equations
- Q2Presentation.piFamilySubgroup sigma x0 x1 = Subgroup.closure {sigma, x0, x1}
Instances For
The corestricted diagonal σ.
Equations
- Q2Presentation.piFamilyS sigma x0 x1 = ⟨sigma, ⋯⟩
Instances For
The corestricted diagonal x₀.
Equations
- Q2Presentation.piFamilyX0 sigma x0 x1 = ⟨x0, ⋯⟩
Instances For
The corestricted diagonal x₁.
Equations
- Q2Presentation.piFamilyX1 sigma x0 x1 = ⟨x1, ⋯⟩
Instances For
The σ-component of the binary subdirect family of A, B.
Instances For
The x₀-component of the binary subdirect family of A, B.
Instances For
The x₁-component of the binary subdirect family of A, B.
Instances For
The 2-group certificate for the binary subdirect subgroup of A, B.
The binary subdirect object of A, B: skeletalize the subgroup of ∏ Fin (![A,B] i).n
generated by the diagonal (σ, x₀, x₁), which is a 2-group and satisfies the boundary
relation coordinatewise.
Equations
- One or more equations did not get rendered due to their size.
Instances For
First projection of the binary subdirect object.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Second projection of the binary subdirect object.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The pro-2 boundary index category is cofiltered.
The inverse system of finite marked pro-2 boundary quotients, as a functor into
ProfiniteGrp (mirrors tameDiagram).
Equations
- One or more equations did not get rendered due to their size.
Instances For
The profinite pro-2 group Π, the cofiltered inverse limit (in ProfiniteGrp) of all
finite marked pro-2 boundary quotients (manuscript Π, eq:Pi). Named PiGrp to avoid
clashing with Lean's Pi dependent-function type.
Instances For
Bridge from the opaque categorical limit to mathlib's explicit subtype model.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Two points of PiGrp agree once all coordinate projections agree.
The universal generators σ, x₀, x₁ #
The compatible family underlying σ: coordinate A.sigma at every A.
Equations
- Q2Presentation.piGenSigmaFamily = ⟨fun (A : Q2Presentation.PiMarkedFinite) => A.sigma, ⋯⟩
Instances For
The compatible family underlying x₀: coordinate A.x0 at every A.
Equations
- Q2Presentation.piGenX0Family = ⟨fun (A : Q2Presentation.PiMarkedFinite) => A.x0, ⋯⟩
Instances For
The compatible family underlying x₁: coordinate A.x1 at every A.
Equations
- Q2Presentation.piGenX1Family = ⟨fun (A : Q2Presentation.PiMarkedFinite) => A.x1, ⋯⟩
Instances For
Projecting σ to a coordinate returns A.sigma.
Projecting x₀ to a coordinate returns A.x0.
Projecting x₁ to a coordinate returns A.x1.
The pro-2 boundary relation holds in PiGrp (manuscript x₀^{σ²} x₀ [x₁,σ] = 1,
eq:Pi), in the inverse-limit sense: projecting the universal generators to any finite
boundary quotient A satisfies the relation there (because A does).
Topological generation #
PiGrp is homeomorphic to the explicit limit model via piIso.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Evaluation at coordinate B, as a monoid hom out of the explicit limit.
Equations
- Q2Presentation.piEvalAt B = { toFun := fun (m : ↑(ProfiniteGrp.limit Q2Presentation.piDiagram).toProfinite.toTop) => ↑m B, map_one' := ⋯, map_mul' := ⋯ }
Instances For
The coordinate-B evaluation maps the subgroup generated by σ, x₀, x₁ onto Fin B.n
(its image is closure {B.sigma, B.x0, B.x1} = ⊤, by B.generates).
Finite cofiltered domination.
The subgroup generated by σ, x₀, x₁ is dense in the explicit limit model.
The universal generators σ, x₀, x₁ topologically generate PiGrp.
The unramified character nu_2 : PiGrp ⟶ ℤ₂ #
The unramified character sends σ to the topological generator 1 ∈ ℤ₂ and the wild
generators x₀, x₁ to 0 (in a pro-2 group the wild inertia is killed in the unramified
quotient — Prop 3.10 eq:nu2). It is built as the map into ℤ₂ = lim_n ZMod(2ⁿ) whose
n-th layer is the projection of PiGrp through the auxiliary cyclic-2-group boundary
quotient cyclicPi n (carrier C2Pow n, σ = additive generator, x₀ = x₁ = 1).
The additive generator ofAdd 1 (together with 1, 1) generates the cyclic 2-group
C2Pow n.
The boundary relation holds trivially in C2Pow n (x₀ = x₁ = 1).
The auxiliary cyclic 2-group boundary quotient at layer n: carrier C2Pow n,
σ = additive generator, x₀ = x₁ = 1.
Equations
- Q2Presentation.cyclicPi n = Q2Presentation.piSkeletalize (Q2Presentation.C2Pow n) ⋯ (Multiplicative.ofAdd 1) 1 1 ⋯ ⋯
Instances For
The transport equivalence Fin (cyclicPi n).n ≃* C2Pow n.
Equations
- Q2Presentation.cyclicPiEquiv n = Q2Presentation.piSkelEquiv (Q2Presentation.C2Pow n) ⋯ (Multiplicative.ofAdd 1) 1 1 ⋯ ⋯
Instances For
Reduction maps fix the additive generator ofAdd 1.
The reduction Π morphism cyclicPi n ⟶ cyclicPi m for m ≤ n, underlying the
ℤ₂-layer maps ZMod(2ⁿ) → ZMod(2ᵐ).
Equations
- Q2Presentation.redHomPi n m hmn = Q2Presentation.piSkelHomBetween (Q2Presentation.castCMH ⋯).toMonoidHom ⋯ ⋯ ⋯
Instances For
Layer compatibility: reducing the n-th layer to the m-th agrees with the m-th
layer (m ≤ n). Uses the inverse-limit compatibility of PiGrp through redHomPi.
The unramified character ν₂ : PiGrp ⟶ ℤ₂, σ ↦ 1, x₀ ↦ 0, x₁ ↦ 0. Built as
the map into ℤ₂ = lim_n ZMod(2ⁿ) whose n-th coordinate is piLayerHom n.
Equations
- One or more equations did not get rendered due to their size.
Instances For
ν₂ sends σ to the topological generator 1 ∈ ℤ₂ (the unramified Frobenius
coordinate).
ν₂ sends x₀ to 0 ∈ ℤ₂ (the wild generator is killed in the unramified pro-2
quotient — Prop 3.10).
ν₂ sends x₁ to 0 ∈ ℤ₂ (the wild generator is killed in the unramified pro-2
quotient — Prop 3.10).