Skip to content

Add four-point Kronecker multiplication - #9606

Open
kim-em wants to merge 9 commits into
mainfrom
poly-fast-kronecker-four
Open

Add four-point Kronecker multiplication#9606
kim-em wants to merge 9 commits into
mainfrom
poly-fast-kronecker-four

Conversation

@kim-em

@kim-em kim-em commented Aug 25, 2026

Copy link
Copy Markdown
Owner

Implements the SPEC KS4 kernel in HexPolyZ:

  • performs forward, negated, reciprocal, and negated-reciprocal packed products
  • separates even/odd streams and pairs reciprocal streams correctly for both output parities
  • reconstructs each stream with the checked reciprocal recovery
  • proves kronecker4_identity and mulKronecker4_eq without axioms or sorries
  • extends conformance and the crossover driver with KS4

The restored 276-cell sweep found KS4 slower than KS1 in every stable cell (3.09x median, 1.95x best). KS4 therefore remains a forced kernel and production dispatch is unchanged. The factorization runtime-freshness exemption records that exact fact.

Depends on #9605 (and transitively #9602). This targets upstream main per repository convention and includes the stacked base until those PRs merge.

Kim Morrison and others added 9 commits August 25, 2026 04:06
Cost model: KS2 performs two packed integer multiplications at roughly half the KS1 bit width, plus linear packing, signed recovery, and interleaving. Slot width derives from min(size) * maxAbs(p) * maxAbs(q). The crossover sweep keeps this as a forced kernel because it rarely beats the existing KS1 implementation on the current grid.
# Conflicts:
#	scripts/bench/proof_only_runtime_exemptions.json
# Conflicts:
#	scripts/bench/proof_only_runtime_exemptions.json
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant