Lemma 4.6, entrywise (round six, `E_entry_bound`)
ProvedIntMul.HvdH.Res.E_entry_boundcomplexity-theoryinteger-multiplicationkappa-improvement
Lemma 4.6, entrywise. With x = α² θ ≥ 1,
|(N u)_l - u_l| ≤ 2 e^{-πx/2}/(1 - e^{-2πx}) ‖u‖.
The following holds (Lean statement, in the scope of module Solutions.KFMBaseP47):
theorem IntMul.HvdH.Res.E_entry_bound (hst : s < t) (α : ℝ) (hα : 0 < α)
(hx : 1 ≤ α ^ 2 * ((t : ℝ) / s - 1)) (u : ZMod s → ℂ) (l : ZMod s) :
‖rowSel s t (resT s t α (diagD s t α 1 u)) l - u l‖ ≤
2 * Real.exp (-π * (α ^ 2 * ((t : ℝ) / s - 1)) / 2) /
(1 - Real.exp (-2 * π * (α ^ 2 * ((t : ℝ) / s - 1)))) * ‖u‖
Context. Definitions (HvdH §2.4, §4.1)
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*).
Preamble
-- Round-six κ development (integer-multiplication-kappa), generated by skeleton subtraction.
import Definitions.Def_IntMul_Kappa_K_Defs33
import Definitions.Def_IntMul_Kappa_R6_Defs1
import Definitions.Def_IntMul_HvdH_Numeric
import Definitions.Def_IntMul_HvdH_ExpApprox
import Definitions.Def_IntMul_HvdH_Twiddle
import Definitions.Def_IntMul_HvdH_RealExp
import Definitions.Def_IntMul_HvdH_SApprox
import Definitions.Def_IntMul_HvdH_DiagApprox
import Definitions.Def_IntMul_HvdH_EApprox
import Definitions.Def_IntMul_HvdH_JApprox
import Mathlib
import Definitions.Def_IntMul_HvdH_BApprox
import Definitions.Def_IntMul_HvdH_FPApprox
set_option autoImplicit false
set_option relaxedAutoImplicit false
set_option maxHeartbeats 1000000
open IntMul IntMul.HvdH IntMul.HvdH.Res
open Complex Real
variable {s t : ℕ} [NeZero s] [NeZero t]
Formal statement
theorem IntMul.HvdH.Res.E_entry_bound (hst : s < t) (α : ℝ) (hα : 0 < α)
(hx : 1 ≤ α ^ 2 * ((t : ℝ) / s - 1)) (u : ZMod s → ℂ) (l : ZMod s) :
‖rowSel s t (resT s t α (diagD s t α 1 u)) l - u l‖ ≤
2 * Real.exp (-π * (α ^ 2 * ((t : ℝ) / s - 1)) / 2) /
(1 - Real.exp (-2 * π * (α ^ 2 * ((t : ℝ) / s - 1)))) * ‖u‖ := by sorrySource
S. Jain, round-six networks for the integer-multiplication κ-improvement campaign (https://github.com/Swapnil-jain/integer-mult-kappa, commit 5868dc7) and D. Colkitt, integer-mult-bounds (https://github.com/CrocSwap/integer-mult-bounds); target `IntMul.Kappa.jain_round6_framework`. Lean declaration `IntMul.HvdH.Res.E_entry_bound`, Solutions/KFMBaseP47.lean (lines 599–681) of the round-six development.