Round-six lemma `umt3_chk`
ProvedR6Chk.Bit.umt3_chkcomplexity-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.R6ChkBitBase):
theorem R6Chk.Bit.umt3_chk : umtOK UMT3 3 = true
Context. Bit round six (h = 23): support trees and triple tables
BT: a binary tree of numbers;btGet t d ifollows the lowdbits ofi(most significant first). Node supports (bitmasks over the 1771 triples ofFin 23) are stored 16 per leaf in 1792-bit fields (R6BitDataSup*), read byfieldOf.TRIPL: rowi(32-bit field) is the bitmask of thei-th triple (lexicographic order);STARL: fieldc(1792 bits) isstar c, the set of triples containingc;UMT0..3: fieldbofUMTjis the set of triples meeting the 6-bit chunkbof points6j, …, 6j+5(soum P= triples meetingPis four lookups).- Table facts are proved by one kernel evaluation each (
star_spec,umt_spec).
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_Defs9 set_option autoImplicit false set_option relaxedAutoImplicit false set_option maxHeartbeats 1000000 open R6Chk R6Chk.Bit open R6Chk
Formal statement
theorem R6Chk.Bit.umt3_chk : umtOK UMT3 3 = true := by sorry
Source
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 `R6Chk.Bit.umt3_chk`, Solutions/R6ChkBitBase.lean (lines 109–109) of the round-six development.