Preparing the native Convolution-3SUM host #
The host reads the standard length header and computes a polynomial magnitude bound using the existing native parameter program. It then computes the matrix side and consecutive matrix addresses. The parameter program's additional computations are included in the instruction count.
This directly adapts the setup of Anthropic's pinned
c3Body.
The complete reduction must also fill every instance and invoke a concrete certified solver.
Main definitions #
Host.ParametersAt,Host.Parameters: caller-owned and standalone register interfaces.Host.prepare: native header, magnitude, square-root and layout computation.
Main results #
Host.exec_prepare: exact prepared parameters and a charged setup bound.
References #
Input length.
Instances For
Polynomial magnitude bound.
Instances For
Input base address.
Instances For
AB matrix base address.
Instances For
BC matrix base address.
Instances For
AC matrix base address.
Instances For
Solver workspace starts after the three matrices.
Instances For
Number of vertices per part.
Instances For
Current instance number.
Instances For
Number of instances.
Instances For
Accumulated Boolean verdict.
Instances For
Constant one.
Instances For
Unsigned filler magnitude.
Instances For
Signed-encoded positive filler.
Instances For
Number of entries per matrix.
Instances For
Square-root argument.
Instances For
Square-root output.
Instances For
Register embedding for the existing parameter routine.
Instances For
Register embedding for successive squares.
Instances For
The mathematical side length used by the reduction.
Instances For
Runtime source and caller-owned matrix workspace retained throughout the instance loop.
Input length.
Magnitude bound.
Caller-supplied input pointer.
AB starts in the caller-owned matrix workspace.
BC follows AB.
AC follows BC.
Solver scratch follows AC.
Side length.
Two instances per possible low-index sum.
Positive invalid-index filler.
Sign-and-magnitude representation of that filler.
Loop increment.
Instances For
Standalone layout: input starts after header zero and matrices immediately follow it.
Instances For
Input-length output of the parameter bank.
Instances For
Magnitude output of the parameter bank.
Instances For
Copy the two needed parameter outputs and initialize constants.
Instances For
Consecutive output blocks and the two loop counters.
Instances For
All initialization consists of actual native subprograms and charged register operations.
Instances For
Existing layout code also supports arbitrary source placement.
Exact initialization from the ordinary length header. The existing parameter program
computes U = (N+2)^κ; its entire execution is charged, including the unused extra parameters.
The additional fit premises cover matrix addresses and the encoded filler, and are independent
of any solver execution contract.