NTTFast multiplication correctness #
Plan-level and one-shot correctness theorems for NTTFast multiplication.
A well-formed plan's forward transform computes the bit-reversed forward NTT.
A plan built from a domain has a correct forward transform.
The paired forward transform equals the pair of individual forward transforms.
The paired forward transform computes the two bit-reversed forward NTT outputs.
Plan normalization agrees with NTT.Inverse.normalize for the same domain.
A well-formed plan's inverse transform computes the inverse NTT spec.
Pointwise multiplication commutes with applying the bit-reversal permutation.
The planned raw multiplication implementation computes the raw NTT multiplication spec.
The planned raw multiplication implementation trims to ordinary multiplication.
The planned multiplication implementation computes the NTT multiplication spec.
The planned multiplication implementation agrees with ordinary multiplication.
The one-shot raw multiplication implementation computes the raw NTT multiplication spec.
The one-shot raw multiplication implementation trims to ordinary multiplication.
The one-shot multiplication implementation computes the NTT multiplication spec.
The one-shot multiplication implementation agrees with ordinary multiplication.
The safe one-shot wrapper agrees with ordinary multiplication.
withFallback agrees with canonical polynomial multiplication.