Correctness of one Harvey–van der Hoeven multiplication step
ProvedIntMul.HvdH.Ref.refStep_mkParamsFix a number of axes . There is such that for every and all natural numbers ,
Here is one recursive step of the Harvey–van der Hoeven integer multiplication algorithm as a computable list program: split into base- digits, Agarwal–Cooley reindexing onto a -dimensional box with pairwise coprime odd side lengths, exact cyclic convolution via Gaussian resampling to a power-of-two box, a Bluestein DFT whose inner convolution is computed exactly in a Fermat ring, and a final rounding; is the parameter choice for -bit inputs. The statement says that, with these parameters and large inputs, all fixed-point errors stay below the rounding threshold so the step returns the exact product. It is the functional correctness half of Theorem 1.1 (the multitape machine implements refStep).
import Definitions.Def_IntMul_HvdH_MachineRef
namespace IntMul.HvdH.Ref
theorem refStep_mkParams (K : ℕ) (hK : 1 ≤ K) :
∃ n₀, ∀ N, n₀ ≤ N → ∀ x y : ℕ, x < 2 ^ N → y < 2 ^ N → refStep (mkParams K N) x y = x * y := by sorry
end IntMul.HvdH.Ref