FoxDifferential/Completed/FiniteStage/SourceCycleReduction.lean

1import FoxDifferential.Completed.FiniteStage.RelationIdealPrimitive
3/-
4PUBLIC_PAGE_SNAPSHOT
5generated_at: 2026-05-27T09:47:29+09:00
6lean_source: lean4/FoxDifferential/Completed/FiniteStage/SourceCycleReduction.lean
7translation_root: data/translation
8purpose: identifies the local data snapshot used to build pages/
9placement: after imports, never before imports
10-/
11/-!
12# Source-cycle reduction for finite-stage Crowell exactness
14This file isolates the exact remaining finite algebra problem into two independent statements.
15First, relation-ideal boundary terms should have relation-compatible source primitives. Second,
16source boundary cycles should project to the relation-boundary submodule. Together they imply the
17source-boundary relation-ideal reduction used by `SourceBoundary.lean` and hence the finite-stage
18coverage statement.
19-/
21namespace FoxDifferential
23noncomputable section
25open ProCGroups.InverseSystems
26open ProCGroups.ProC
28universe u
30variable {X : Type u} [DecidableEq X]
31variable (N : Subgroup (FreeGroup X)) [N.Normal] (n : ℕ)
33/-- Source boundary cycles in the source coordinate module. -/
35 Submodule (finiteFoxStageSourceGroupAlgebra (X := X) N n)
37 LinearMap.ker (finiteFoxStageSourceFoxBoundary (X := X) N n)
39omit [DecidableEq X] [N.Normal] in
40@[simp]
44 finiteFoxStageSourceFoxBoundary (X := X) N n p = 0 :=
45 Iff.rfl
47/-- Source-cycle projection exactness: every source Fox cycle maps to the target relation-boundary
48submodule. This is the source-quotient analogue of exactness before the relation-ideal
49correction. -/
56/-- Left-submodule version of the source-boundary reduction. -/
64/-- Source-cycle projection exactness implies the reduction for the left relation-augmentation
65submodule, because elements of the left relation-augmentation submodule have explicit
66relation-compatible primitives. -/
68 [Fintype X]
71 intro a ha
73 (X := X) N n ha with ⟨p, hpboundary, hprel⟩
74 have hcycle_ap :
75 a - p ∈ finiteFoxStageSourceBoundaryCycleSubmodule (X := X) N n := by
76 change finiteFoxStageSourceFoxBoundary (X := X) N n (a - p) = 0
77 rw [map_sub, hpboundary]
78 exact sub_self _
79 have haprel := hcycle (a - p) hcycle_ap
80 have hmap :
83 finiteFoxStageCoordinateSourceToTarget (X := X) N n (a - p) := by
84 have hsub := map_sub (finiteFoxStageCoordinateSourceToTarget (X := X) N n) a p
85 calc
90 abel
92 finiteFoxStageCoordinateSourceToTarget (X := X) N n (a - p) := by
93 rw [← hsub]
94 rw [hmap]
95 exact (finiteFoxStageRelationBoundarySubmodule (X := X) N n).add_mem hprel haprel
97/-- If the two-sided relation augmentation ideal is already generated by the same relation
98augmentation elements as a left source-submodule, source-cycle projection exactness implies the
99source-boundary relation-ideal reduction used in the finite-stage exactness file. -/
101 [Fintype X]
102 (hideal_left :
108 intro a ha
110 (X := X) N n hcycle a (hideal_left _ ha)
112/-- Finite-stage source-cycle projection exactness gives relation-boundary module exactness. -/
114 [Fintype X]
115 (hideal_left :
122 (X := X) N n
124 (X := X) N n hideal_left hcycle)
126/-- The same inputs give finite coordinate coverage. -/
128 [Fintype X]
129 (hideal_left :
136 (X := X) N n
138 (X := X) N n hideal_left hcycle)
140/-- The same inputs give finite semidirect coverage. -/
142 [Fintype X]
143 (hideal_left :
150 (X := X) N n
152 (X := X) N n hideal_left hcycle)
154end
156end FoxDifferential