FoxDifferential/Completed/FiniteStage/RelationIdeal.lean

1import FoxDifferential.Completed.FiniteStage.RelationAction
2import FoxDifferential.Completed.FiniteStage.Stage.Source
4/-
5PUBLIC_PAGE_SNAPSHOT
6generated_at: 2026-05-27T09:47:29+09:00
7lean_source: lean4/FoxDifferential/Completed/FiniteStage/RelationIdeal.lean
8translation_root: data/translation
9purpose: identifies the local data snapshot used to build pages/
10placement: after imports, never before imports
11-/
12/-!
13# Finite-stage relation augmentation ideal
15The finite-stage source quotient
16`F / ([N,N] N^n)` maps onto the target quotient `F/N`. The kernel of the induced group-algebra
17map is the two-sided ideal generated by the augmentation elements `q - 1` for relations
18`q ∈ ker(F/([N,N]N^n) -> F/N)`.
20This is the algebraic input used before the remaining finite Fox exactness step: a lifted target
21boundary cycle has source boundary in this concrete relation ideal, not merely in an anonymous
22kernel ideal.
23-/
25namespace FoxDifferential
27noncomputable section
29open ProCGroups.InverseSystems
30open ProCGroups.ProC
32universe u
34variable {X : Type u} [DecidableEq X]
35variable (N : Subgroup (FreeGroup X)) [N.Normal] (n : ℕ)
37/-- The augmentation generator `q - 1` attached to a finite-stage relation
38`q ∈ ker(F/[N,N]N^n -> F/N)`. -/
40 (q : finiteFoxStageRelationGroup (X := X) N n) :
42 MonoidAlgebra.of (ModNCompletedCoeff n)
43 (FreeGroup X ⧸ finiteFoxCommutatorPowerSubgroup (F := FreeGroup X) N n) q.1 - 1
45/-- The source group-algebra ideal generated by finite-stage relation augmentation generators. -/
47 Ideal (finiteFoxStageSourceGroupAlgebra (X := X) N n) :=
48 Ideal.span
51omit [DecidableEq X] in
52/-- A relation augmentation generator belongs to the relation augmentation ideal. -/
54 (q : finiteFoxStageRelationGroup (X := X) N n) :
57 exact Ideal.subset_span ⟨q, rfl
59omit [DecidableEq X] in
60/-- A relation augmentation generator maps to zero in the target group algebra. -/
62 (q : finiteFoxStageRelationGroup (X := X) N n) :
66 change finiteFoxCommutatorPowerGroupAlgebraMap (F := FreeGroup X) N n
67 (MonoidAlgebra.of (ModNCompletedCoeff n)
68 (FreeGroup X ⧸ finiteFoxCommutatorPowerSubgroup (F := FreeGroup X) N n) q.1 - 1) = 0
71 simp only [MonoidAlgebra.of, MonoidHom.coe_mk, OneHom.coe_mk, MonoidAlgebra.one_def, sub_self]
73omit [DecidableEq X] in
74/-- The generated relation augmentation ideal is contained in the kernel of the source-to-target
75finite group-algebra map. -/
79 refine Ideal.span_le.2 ?_
80 rintro x ⟨q, rfl
83/-- A section of the source-to-target finite group-algebra map, obtained by choosing a source
84quotient lift for each target quotient basis element. This is only a `Z/nZ`-linear section; no
85multiplicativity is asserted. -/
89 Finsupp.linearCombination (ModNCompletedCoeff n)
90 (fun h : finiteFoxStageTargetQuotient (X := X) N =>
91 MonoidAlgebra.of (ModNCompletedCoeff n)
92 (FreeGroup X ⧸ finiteFoxCommutatorPowerSubgroup (F := FreeGroup X) N n)
95omit [DecidableEq X] in
96@[simp]
98 (h : finiteFoxStageTargetQuotient (X := X) N) :
100 (MonoidAlgebra.of (ModNCompletedCoeff n)
102 MonoidAlgebra.of (ModNCompletedCoeff n)
103 (FreeGroup X ⧸ finiteFoxCommutatorPowerSubgroup (F := FreeGroup X) N n)
105 change
106 (Finsupp.linearCombination (ModNCompletedCoeff n)
107 (fun h : finiteFoxStageTargetQuotient (X := X) N =>
108 MonoidAlgebra.of (ModNCompletedCoeff n)
109 (FreeGroup X ⧸ finiteFoxCommutatorPowerSubgroup (F := FreeGroup X) N n)
111 (Finsupp.single h (1 : ModNCompletedCoeff n)) = _
112 rw [Finsupp.linearCombination_single, one_smul]
114omit [DecidableEq X] in
115/-- The chosen group-algebra section is a right inverse to the finite source-to-target map. -/
119 (finiteFoxStageTargetGroupAlgebraSection (X := X) N n y) = y := by
120 classical
121 refine MonoidAlgebra.induction_on
122 (p := fun y : finiteFoxStageTargetGroupAlgebra (X := X) N n =>
125 y ?single ?add ?smul
126 · intro h
130 · intro x y hx hy
131 simp only [map_add, hx, hy]
132 · intro a x hx
134 simp only [hx]
136omit [DecidableEq X] in
137/-- The finite source-to-target group-algebra map is surjective. -/
139 Function.Surjective (finiteFoxCommutatorPowerGroupAlgebraMap (F := FreeGroup X) N n) := by
140 intro y
144omit [DecidableEq X] in
145/-- For a source basis element `s`, subtracting the chosen lift of its target image gives a
146relation-augmentation element. -/
148 (s : FreeGroup X ⧸ finiteFoxCommutatorPowerSubgroup (F := FreeGroup X) N n) :
149 MonoidAlgebra.of (ModNCompletedCoeff n)
150 (FreeGroup X ⧸ finiteFoxCommutatorPowerSubgroup (F := FreeGroup X) N n) s -
153 (MonoidAlgebra.of (ModNCompletedCoeff n)
154 (FreeGroup X ⧸ finiteFoxCommutatorPowerSubgroup (F := FreeGroup X) N n) s)) ∈
156 let t : finiteFoxStageTargetQuotient (X := X) N :=
158 let lift : FreeGroup X ⧸ finiteFoxCommutatorPowerSubgroup (F := FreeGroup X) N n :=
160 let q : finiteFoxStageRelationGroup (X := X) N n :=
161 ⟨lift⁻¹ * s, by
163 (lift⁻¹ * s) = 1
164 rw [map_mul, map_inv]
165 have hlift :
166 finiteFoxCommutatorPowerQuotientMapToNormalQuotient (F := FreeGroup X) N n lift = t := by
168 rw [hlift]
169 simp only [inv_mul_cancel, t]⟩
170 have hsection :
173 (MonoidAlgebra.of (ModNCompletedCoeff n)
174 (FreeGroup X ⧸ finiteFoxCommutatorPowerSubgroup (F := FreeGroup X) N n) s)) =
175 MonoidAlgebra.of (ModNCompletedCoeff n)
176 (FreeGroup X ⧸ finiteFoxCommutatorPowerSubgroup (F := FreeGroup X) N n) lift := by
179 rw [hsection]
180 have hmul :
181 MonoidAlgebra.of (ModNCompletedCoeff n)
182 (FreeGroup X ⧸ finiteFoxCommutatorPowerSubgroup (F := FreeGroup X) N n) lift *
184 MonoidAlgebra.of (ModNCompletedCoeff n)
185 (FreeGroup X ⧸ finiteFoxCommutatorPowerSubgroup (F := FreeGroup X) N n) s -
186 MonoidAlgebra.of (ModNCompletedCoeff n)
187 (FreeGroup X ⧸ finiteFoxCommutatorPowerSubgroup (F := FreeGroup X) N n) lift := by
188 simp only [finiteFoxStageRelationAugmentationGenerator, q, MonoidAlgebra.of_apply]
189 rw [mul_sub, MonoidAlgebra.single_mul_single, mul_one]
190 simp only [mul_inv_cancel_left, mul_one]
191 rw [← hmul]
192 exact (finiteFoxStageRelationAugmentationIdeal (X := X) N n).mul_mem_left _
195omit [DecidableEq X] in
196/-- Every source group-algebra element differs from the chosen lift of its target image by a
197relation-augmentation element. -/
201 (finiteFoxCommutatorPowerGroupAlgebraMap (F := FreeGroup X) N n x) ∈
203 classical
204 refine MonoidAlgebra.induction_on
205 (p := fun x : finiteFoxStageSourceGroupAlgebra (X := X) N n =>
207 (finiteFoxCommutatorPowerGroupAlgebraMap (F := FreeGroup X) N n x) ∈
209 x ?single ?add ?smul
210 · intro s
212 · intro x y hx hy
213 have hcalc :
215 (finiteFoxCommutatorPowerGroupAlgebraMap (F := FreeGroup X) N n (x + y)) =
217 (finiteFoxCommutatorPowerGroupAlgebraMap (F := FreeGroup X) N n x)) +
219 (finiteFoxCommutatorPowerGroupAlgebraMap (F := FreeGroup X) N n y)) := by
221 abel
222 rw [hcalc]
223 exact (finiteFoxStageRelationAugmentationIdeal (X := X) N n).add_mem hx hy
224 · intro a x hx
225 have hcalc :
227 (finiteFoxCommutatorPowerGroupAlgebraMap (F := FreeGroup X) N n (a • x)) =
229 (finiteFoxCommutatorPowerGroupAlgebraMap (F := FreeGroup X) N n x)) := by
231 rw [hcalc]
232 rw [Algebra.smul_def]
233 exact (finiteFoxStageRelationAugmentationIdeal (X := X) N n).mul_mem_left _ hx
235omit [DecidableEq X] in
236/-- The kernel ideal of the finite source-to-target group-algebra map is exactly the ideal
237spanned by relation augmentation generators. -/
241 apply le_antisymm
242 · intro x hx
243 have hxmap :
244 finiteFoxCommutatorPowerGroupAlgebraMap (F := FreeGroup X) N n x = 0 :=
245 (mem_finiteFoxStageGroupAlgebraMapKernelIdeal (X := X) (N := N) (n := n)).1 hx
246 have hdiff :=
248 rw [hxmap, map_zero, sub_zero] at hdiff
249 exact hdiff
252omit [DecidableEq X] in
253/-- Kernel membership may be rewritten as membership in the explicit relation augmentation ideal. -/
260end
262end FoxDifferential