Error bound for the segmented inverse of the resampling system (real form)
ProvedJ6Seg.segInv_errLet be lengths with , let be the Gaussian parameter and assume (xθ s t α). Let be a valid block structure (BlocksOK s t B: wrap-free runs partitioning with coupling width ) whose blocks all have length at most , and let be precomputed fixed-point tables of precision accurate to ulps with per-block constants bounded by (TabOK P s t α B T E Dm). Put (segG), where is the number of near-boundary positions of the block structure. Let be a fixed-point input with () for , and let satisfy , the resampling system (NxR s t α w i = v i) for , and . If , then for every the output of the segmented inverse segInv P T B U satisfies
In Lean:
theorem J6Seg.segInv_err {P s t α lam : ℕ} {B : Blocks} {T : Tables} {E Dm Bu εin Wm : ℝ}
(hs : 0 < s) (hst : s ≤ t) (hα : 2 ≤ α) (hx : 3 ≤ xθ s t α)
(hB : BlocksOK s t B) (hlam : ∀ i < s, B.len i ≤ lam)
(hT : TabOK P s t α B T E Dm) (hE : 0 ≤ E)
(U : ℕ → ℤ) (hBu : 0 ≤ Bu) (hU : ∀ i < s, |(U i : ℝ) / 2 ^ P| ≤ Bu)
(v w : ℕ → ℝ) (hw : ∀ i < s, |w i| ≤ Wm) (hsys : ∀ i < s, NxR s t α w i = v i)
(hin : ∀ i < s, |(U i : ℝ) / 2 ^ P - v i| ≤ εin)
(hP : 1000 * segG B lam E Dm Bu ≤ 2 ^ P) :
∀ i < s, |(segInv P T B U i : ℝ) / 2 ^ P - w i| ≤
60 * segG B lam E Dm Bu / 2 ^ P +
3 * (4 * exp (-(π * (α : ℝ) ^ 2 * (B.w * (B.w + 1))))) * (Bu + 1) + 8 / 7 * εin
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_Defs3 set_option autoImplicit false set_option relaxedAutoImplicit false set_option maxHeartbeats 1000000 open J6Seg open Finset Real open IntMul.HvdH IntMul.HvdH.JPf J6QLU
theorem J6Seg.segInv_err {P s t α lam : ℕ} {B : Blocks} {T : Tables} {E Dm Bu εin Wm : ℝ}
(hs : 0 < s) (hst : s ≤ t) (hα : 2 ≤ α) (hx : 3 ≤ xθ s t α)
(hB : BlocksOK s t B) (hlam : ∀ i < s, B.len i ≤ lam)
(hT : TabOK P s t α B T E Dm) (hE : 0 ≤ E)
(U : ℕ → ℤ) (hBu : 0 ≤ Bu) (hU : ∀ i < s, |(U i : ℝ) / 2 ^ P| ≤ Bu)
(v w : ℕ → ℝ) (hw : ∀ i < s, |w i| ≤ Wm) (hsys : ∀ i < s, NxR s t α w i = v i)
(hin : ∀ i < s, |(U i : ℝ) / 2 ^ P - v i| ≤ εin)
(hP : 1000 * segG B lam E Dm Bu ≤ 2 ^ P) :
∀ i < s, |(segInv P T B U i : ℝ) / 2 ^ P - w i| ≤
60 * segG B lam E Dm Bu / 2 ^ P +
3 * (4 * exp (-(π * (α : ℝ) ^ 2 * (B.w * (B.w + 1))))) * (Bu + 1) + 8 / 7 * εin := by sorry