Native ExactTriangle instance preparation #
The input header is (D,g,n,p), followed by the three signed weight matrices. The program first
computes the real class/chunk catalogue. It then visits each actual chunk and piece, reads that
chunk's descriptor, computes the piece boundaries and writes its record and two zero/one matrices.
The records share the already computed query arrays. Every visit uses the existing native
InstancePair.program rather than assuming a matrix-preparation routine.
The output records and matrices occupy consecutive variable-size blocks. Register output names
the first record, produced gives their actual number and heap is their final allocation end.
Each block has six record words followed by 2nD matrix words. This module prepares instances;
it does not choose a prime, evaluate their queried products or decide ExactTriangle.
Main definitions #
Instances.program: fixed sixty-four-register initialized instance-preparation program.Instances.visit: one computed class/chunk/piece visit, including both native matrix calls.Instances.timeBound: the catalogue cost plus the full native visit and loop budgets, including the final halt.Instances.Output: actual catalogue, record, matrix and frame readback.
Main results #
Instances.exec_at: complete native execution from the original header and weight arrays.
PreparationInput supplies the initialized flat-program interface and derived width bounds;
PreparationBounds proves the preparation time bound in the source's parameter regime.
Code-stage definitions are exposed for kernel-checked interpreter clients.
Proof helpers are private.
References #
The matrix geometry follows the pinned Theorem 17 matrix construction. The native controller and resource proofs are original.
Outer matrix dimension.
Instances For
Target padded middle dimension.
Instances For
Residue modulus.
Instances For
Computed maximum vertices per piece.
Instances For
Computed number of pieces.
Instances For
Actual number of nonempty query chunks.
Instances For
Computed chunk-descriptor array.
Instances For
First output record.
Instances For
Number of completely written instance blocks.
Instances For
Actual chunk count times piece count.
Instances For
Next free output record.
Instances For
Words per record and its two matrices.
Instances For
Constant one.
Instances For
Words per chunk descriptor.
Instances For
Words per instance record.
Instances For
Words in one matrix.
Instances For
Original A–C residue matrix.
Instances For
Original B–C residue matrix.
Instances For
Descriptor/header address temporary.
Instances For
Current chunk ordinal.
Instances For
Current piece ordinal.
Instances For
Residue loaded from the actual chunk descriptor.
Instances For
Query pointer loaded from the actual chunk descriptor.
Instances For
Query count loaded from the actual chunk descriptor.
Instances For
First vertex of the current piece.
Instances For
Actual length of the current piece.
Instances For
Original weight-matrix area temporary.
Instances For
Existing catalogue computation in the lower thirty-two registers.
Instances For
Save the actual catalogue outputs and compute the allocation stride and residue bases.
Instances For
Compute the chunk and piece ordinals, then load the real query reference and piece bounds.
Instances For
Deliver every actual pointer, coordinate and count to the existing instance-pair ABI.
Instances For
Existing native record and matrix-pair writer.
Instances For
Advance only after the complete pair has been written.
Instances For
One actual instance; every selection, argument-delivery and matrix instruction is native.
Instances For
Prepare every actual chunk/piece pair after computing the catalogue.
Instances For
The catalogue prefix, twenty-six setup instructions, each 40nD+66 visit and its two loop
instructions, the two loop-exit instructions and the final halt are accounted separately.
Instances For
Original-header bound for all arithmetic and allocated addresses. The conservative maximum
p*n² chunk count and n pieces cover every actual catalogue entry. Signed weights have their
separate magnitude fit premise; no layout information is supplied by the caller.
Instances For
One bounded instruction graph with no word-size reads.
Exact computed catalogue, record and raw zero/one matrix readback, with the complete input/output frame. The matrix predicates reuse the existing writer arguments and entry semantics.
Instances For
Execute the complete preparation from the real header and signed matrices. Every output record refers to the actual computed query chunk, followed by its raw zero/one matrix pair. The only resource premises concern the original signed values and the explicit numeric budget; neither a catalogue nor a layout or execution certificate is an input. The final halt is excluded here and added by the initialized flat-program client.