@@ -11,6 +11,7 @@ public import Mathlib.MeasureTheory.MeasurableSpace.Defs
1111
1212import AddCombi.Mathlib.Algebra.Order.GroupWithZero.Indicator
1313import APAP.Mathlib.Algebra.Order.Group.Parity
14+ import APAP.Mathlib.Analysis.Fourier.FiniteAbelian.PontryaginDuality
1415import APAP.Physics.AlmostPeriodicity
1516import APAP.Physics.DRC
1617import APAP.Physics.Unbalancing
@@ -189,7 +190,7 @@ public lemma ap_in_ff [DecidableEq G] (hq : q.Prime) (hα₀ : 0 < α) (hα₂ :
189190 let V : Submodule (ZMod q) G := AddSubgroup.toZModSubmodule _ <| ⨅ γ ∈ Δ, γ.toAddMonoidHom.ker
190191 let V' : Finset G := Set.toFinset V
191192 refine ⟨V, inferInstance, ?_, ?_⟩
192- · obtain ⟨Δ', hΔ'Δ , hΔ'card, hfΔ'⟩ : ∃ Δ' ⊆ Δ, _ := chang (mu_ne_zero.2 hT) (by norm_num)
193+ · obtain ⟨Δ', - , hΔ'card, hfΔ'⟩ : ∃ Δ' ⊆ Δ, _ := chang (mu_ne_zero.2 hT) (by norm_num)
193194 let W : Submodule (ZMod q) G := AddSubgroup.toZModSubmodule _ <| ⨅ γ ∈ Δ', γ.toAddMonoidHom.ker
194195 have mem_W {x} : x ∈ W ↔ ∀ γ ∈ Δ', γ x = 1 := by simp [W]
195196 have hWV : W ≤ V := by
@@ -221,10 +222,11 @@ public lemma ap_in_ff [DecidableEq G] (hq : q.Prime) (hα₀ : 0 < α) (hα₂ :
221222 _ = 2 ^ 3 * 𝓛 (ε * α) := by ring
222223 _ = 2 ^ 19 * 𝓛 α ^ 2 * 𝓛 (ε * α) ^ 2 * ε⁻¹ ^ 2 := by ring_nf
223224 calc
224- (↑(finrank (ZMod q) G - finrank (ZMod q) V) : ℝ)
225- ≤ ↑(finrank (ZMod q) G - finrank (ZMod q) W) := by
226- gcongr; exact Submodule.finrank_mono hWV
227- _ ≤ #Δ' := sorry
225+ (↑(finrank (ZMod q) G - V.finrank) : ℝ)
226+ ≤ ↑(finrank (ZMod q) G - W.finrank) := by gcongr; exact Submodule.finrank_mono hWV
227+ _ ≤ #Δ' := by
228+ let : Fact q.Prime := ⟨hq⟩
229+ simpa [W] using AddChar.codim_iInf_ker_le_finsetCard (s := Δ')
228230 _ ≤ ⌈changConst * exp 1 * ⌈𝓛 ↑(‖μ T‖_[1 ] ^ 2 / ‖μ T‖_[2 ] ^ 2 / card G)⌉₊ / 2 ⁻¹ ^ 2 ⌉₊ := by
229231 gcongr
230232 _ = ⌈2 ^ 7 * exp 1 ^ 2 * ⌈𝓛 T.dens⌉₊⌉₊ := by
0 commit comments