MUL Constraints
Enforcing unsigned-integer-multiplication relations
Multiplication constraints let us capture the unsigned integer multiplication of 64-bit words. We now fix a total number of MUL constraints, . For each , the th MUL constraint is a tuple of four lists of shifted value indices.
The Constraint Arrays
Immediately adopting the constraint array formalism, we now obtain length- arrays , , , and of 64-bit words, defined, for each , by:
The prover data fulfills the constraint system's MUL constraints if, for each ,
holds over the integers. We interpret all of the words , , and as as elements of , and interpret the symbol as integer multiplication. That is, the product is double-width; its high and low halves are given by and .