Round-six lemma `cost_final6`
ProvedIntMul.Kappa.R6.cost_final6complexity-theoryinteger-multiplicationkappa-improvement
An auxiliary lemma of the round-six development, published as a separate node because its proof is long or shared.
The following holds (Lean statement, in the scope of module Solutions.R6ZCost):
theorem IntMul.Kappa.R6.cost_final6 (hP : Q.P.Ok) (C18 : ℝ) (hC18 : 0 ≤ C18) (A18 c18 : ℕ)
(hc : (c18 : ℝ) ≤ C18 * cU6 Q.P Q.n A18) :
((c18 + NLogN.KFZ.cBody (BN6 Q) (BN6 Q) (Q.p / 6) (dsG Q.p Q.h (D + 1) (σ6 Q) Q.K).length Q.p Q.h
D (σ6 Q) (Q.sB D) (Q.tB D) + 2 : ℕ) : ℝ) ≤
(C18 + Kc * ((Q.P.x : ℝ) + 4) ^ 2) * cU6 Q.P Q.n (A18 + 2)
Context. Round six, chirp: the cost of the chirp procedure against cU6
Ncost6_ge_one,lgp_le:Ncost6 ≥ 1,log p + 1 ≤ (x + 4)(log lg n + 1).body_le6: the body without the Prop 18 call isO(T p (log p + 1)^2).cost_final6: the Prop 18 call withinC₁₈ · cU6 A₁₈plus the body and the call is at most(C₁₈ + Kc (x+4)^2) · cU6 (A₁₈ + 2).
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_R6_Defs17
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.KFB NLogN.KFM IntMul.OpenAI.Glue NLogN.KFZ
attribute [local irreducible] fmA Cfm
variable {Q : Q6} (hQ : QOk Q) {D : ℕ} (hD : Q.d = D + 1)
include hQ hD
Formal statement
theorem IntMul.Kappa.R6.cost_final6 (hP : Q.P.Ok) (C18 : ℝ) (hC18 : 0 ≤ C18) (A18 c18 : ℕ)
(hc : (c18 : ℝ) ≤ C18 * cU6 Q.P Q.n A18) :
((c18 + NLogN.KFZ.cBody (BN6 Q) (BN6 Q) (Q.p / 6) (dsG Q.p Q.h (D + 1) (σ6 Q) Q.K).length Q.p Q.h
D (σ6 Q) (Q.sB D) (Q.tB D) + 2 : ℕ) : ℝ) ≤
(C18 + Kc * ((Q.P.x : ℝ) + 4) ^ 2) * cU6 Q.P Q.n (A18 + 2) := 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.cost_final6`, Solutions/R6ZCost.lean (lines 149–211) of the round-six development.