Deterministic mask tables for matrix bands #
Size-m level sets are ordered by their binary masks. The first K0² masks are assigned
in row-major order to block pairs. This specifies a deterministic instance of the existing
Layout; a native scan can compute the table without receiving indexing data as an input.
Main definitions #
MaskTable.maskSet,MaskTable.maskCode: explicit binary masks and level sets.MaskTable.population: the truncated binary population count computed by division loops.MaskTable.validMasks: the masks with the required cardinality.
Main results #
MaskTable.card_validMasks: exactlyL.choose mvalid masks exist.
Number of one digits among exactly the first L binary digits.
Instances For
A zero-depth scan has population zero.
One native remainder/division step removes the lowest digit.
There are at most L one digits, even for an unbounded natural argument.
The loop's digit sum is the cardinality of the represented level set.
Every size-m subset occurs once in the bounded mask scan.
Number of valid masks strictly below the scan counter.
Instances For
The scan begins without any accepted mask.
A scan accepts at most one mask in each iteration.
The actual scalar counter update for one mask.
Extending a scan cannot decrease the accepted-mask counter.
Earlier valid masks have strictly smaller accepted-mask ranks.
The finite complete scan has exactly the binomial count.
The scalar scan count equals the rank among the bounded valid masks.
The dense inverse-table word: zero for an unselected mask, otherwise rank plus one.
Instances For
Both decoded block indices are in range whenever the inverse-table word is nonzero.
Distinct block pairs receive distinct level sets.
Explicit base-three outer strings and base-four strings of index pairs, with the first
K0² binary masks in increasing order as the shared block table.