Native residue-class query lists #
The fixed program calls QueryScan.program for each residue, storing the computed class count
and its row-major coordinate pairs. Each class receives a disjoint block of capacity 2n².
The cost of scanning once per residue is included; no class table is supplied as input.
This adapts the class builder in the pinned Theorem 17 program.
Main definitions #
Classes.program: fixed twenty-register class enumeration.
Main results #
Classes.exec: actual execution, class counts, coordinate readback and a memory frame.
Source residue matrix.
Instances For
Query-scanner output pointer.
Instances For
Matrix side.
Instances For
Query-scanner selected residue.
Instances For
Query-scanner emitted count.
Instances For
Array of class counts.
Instances For
Array of disjoint query blocks.
Instances For
Number of residues to enumerate.
Instances For
Current class.
Instances For
Constant one.
Instances For
Count address.
Instances For
Capacity in words of a query block.
Instances For
Reuse the certified scanner with a disjoint register bank for the outer loop.
Instances For
Compute the class's output pointer, scan, record its count, and advance.
Instances For
The modulus is runtime data; the program itself is independent of it.
Instances For
Fixed instruction graph, with no physical-width reads.
Enumerate every residue class into actual count and coordinate arrays. The source matrix, count array and query capacity blocks must occur in that order. The final halt is excluded.