The register part of a pad (round six, `cost_padH`)
ProvedIntMul.Kappa.R6.IL3H.cost_padHcomplexity-theoryinteger-multiplicationkappa-improvement
The register part of a pad.
The following holds (Lean statement, in the scope of module Solutions.R6IL3Cost2):
theorem IntMul.Kappa.R6.IL3H.cost_padH {L0 Q Z w dw r H Nn : ℕ} (hL : L0 ≤ 2 * (Nn * r)) (hQ : Q ≤ 2 * (Nn * r))
(hw : w + dw ≤ H) (hZ : zsz (L0 : ℤ) ≤ Z) (hN : 1 ≤ Nn) :
400 * (cPadC L0 Q Z w dw (fun _ => 0) + 0) ≤ 10 ^ 8 * (Nn * Yu r Z H)
Context. Round six, item language (I3): cost bounds of the pads
With Y = Yu r Z H:
cost_padH: the register part of a pad (padCU) on≤ 2 Nn rentries costs≤ 10^8 Nn Y;cost_scaleH: the scale pad onNrecords costs≤ 10^16 N Y.
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 Mathlib import Definitions.Def_IntMul_HvdH_M_Defs8 import Definitions.Def_IntMul_MultitapeModel import Definitions.Def_IntMul_HvdH_MachineRef import Definitions.Def_IntMul_KappaFramework set_option autoImplicit false set_option relaxedAutoImplicit false set_option maxHeartbeats 1000000 open IntMul IntMul.Kappa IntMul.Kappa.R6 open IntMul NLogN NLogN.KIL NLogN.KFD NLogN.KFB NLogN.KFG NLogN.KFH NLogN.KFN NLogN.KFW Complex P8Lift Butterfly
Formal statement
theorem IntMul.Kappa.R6.IL3H.cost_padH {L0 Q Z w dw r H Nn : ℕ} (hL : L0 ≤ 2 * (Nn * r)) (hQ : Q ≤ 2 * (Nn * r))
(hw : w + dw ≤ H) (hZ : zsz (L0 : ℤ) ≤ Z) (hN : 1 ≤ Nn) :
400 * (cPadC L0 Q Z w dw (fun _ => 0) + 0) ≤ 10 ^ 8 * (Nn * Yu r Z H) := 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.Kappa.R6.IL3H.cost_padH`, Solutions/R6IL3Cost2.lean (lines 27–70) of the round-six development.