One chirp row keeps `GB (p + 2)` (round six, `chirpC_gb`)
ProvedJ6A.chirpC_gbOne chirp row keeps GB (p + 2).
The following holds (Lean statement, in the scope of module Solutions.J6PipeGBA1):
theorem J6A.chirpC_gb (p s t α H : ℕ) [NeZero s] [NeZero t] (hst : s ≤ t) (hα : 2 ≤ α)
(hαp : α ^ 2 ≤ p) (hH : 1 ≤ H) (hH2 : H ≤ 2 * sWidth p α) (hθ : 300 * (t - s) ≤ s)
(hp : 24 ≤ p) (hWp : 12 * (H + sWidth p α + 3) ≤ 2 ^ (p / 2))
(U : ℕ → ℤ × ℤ) (hU : ∀ i, zsz (U i).1 ≤ p + 2 ∧ zsz (U i).2 ≤ p + 2) (k : ℕ) :
zsz (chirpC p s t α H U k).1 ≤ p + 2 ∧ zsz (chirpC p s t α H U k).2 ≤ p + 2
Context. PipeGBA6, part 1: one chirp row keeps GB (p + 2)
chirpC_gb: if every input entry has parts of bit size ≤ p + 2 (so ‖U_i‖ ≤ 4√2 · 2^p),
every output entry of chirpC p s t α H has parts of bit size ≤ p + 2:
‖out‖ ≤ 2^p ‖S'(U/2^p)‖ + E ≤ 0.55 · 5.66 · 2^p + 10 < 2^{p+2} (chirpA_err8 with ex = 3,
Sexact_norm, the window error E ≤ 8 · 1 + 2 as in chirpC_fp).
Formalization Note. Part of the Lean formalization of the round-six κ-improvement (integer-multiplication-kappa campaign, target IntMul.Kappa.jain_round6_framework). The statement is copied verbatim from the Lean development; the platform node carries the same declaration name. Definitions it mentions live in the IntMul_Kappa_R6_Defs* bundles (on top of the published κ bundles IntMul_Kappa_K_Defs*).
-- Round-six κ development (integer-multiplication-kappa), generated by skeleton subtraction. import Definitions.Def_IntMul_Kappa_R6_Defs61 set_option autoImplicit false set_option relaxedAutoImplicit false set_option maxHeartbeats 1000000 open J6A open Complex open IntMul.HvdH IntMul.HvdH.SPf open NLogN (zsz)
theorem J6A.chirpC_gb (p s t α H : ℕ) [NeZero s] [NeZero t] (hst : s ≤ t) (hα : 2 ≤ α)
(hαp : α ^ 2 ≤ p) (hH : 1 ≤ H) (hH2 : H ≤ 2 * sWidth p α) (hθ : 300 * (t - s) ≤ s)
(hp : 24 ≤ p) (hWp : 12 * (H + sWidth p α + 3) ≤ 2 ^ (p / 2))
(U : ℕ → ℤ × ℤ) (hU : ∀ i, zsz (U i).1 ≤ p + 2 ∧ zsz (U i).2 ≤ p + 2) (k : ℕ) :
zsz (chirpC p s t α H U k).1 ≤ p + 2 ∧ zsz (chirpC p s t α H U k).2 ≤ p + 2 := by sorry