This module includes the AND gadget implementation and the witness creation code.
Note that this module does not need any new gate type for the AND operation.
Implementation of the EndomulScalar gate for the endomul scalar multiplication.
This gate checks 8 rounds of the Algorithm 2 in the Halo paper per row.
This module includes the definition of the NOT gadget and the witness code generation,
for both the implementation running with Xor16 gates and the one with Generic gates.
Note that this module does not include a Not gate type.
This module includes the definition of the XOR gadget for 64, 32, and 16 bits,
the definition of the constraints of the Xor16 circuit gate,
and the code for witness generation for the XOR gadget.