#include <translator_extra_relations.hpp>
|
template<typename AllEntities > |
static bool | skip (const AllEntities &in) |
| Returns true if the contribution from all subrelations for the provided inputs is identically zero.
|
|
template<typename ContainerOverSubrelations , typename AllEntities , typename Parameters > |
static void | accumulate (ContainerOverSubrelations &accumulators, const AllEntities &in, const Parameters &, const FF &scaling_factor) |
| Expression for enforcing the value of the Opcode to be {0,3,4,8}.
|
|
template<typename FF_>
class bb::TranslatorOpcodeConstraintRelationImpl< FF_ >
Definition at line 12 of file translator_extra_relations.hpp.
◆ FF
◆ accumulate()
template<typename ContainerOverSubrelations , typename AllEntities , typename Parameters >
Expression for enforcing the value of the Opcode to be {0,3,4,8}.
Expression for enforcing the value of the Opcode to be {0,3,4,8} (nop, eq and reset, mul or add)
This relation enforces the opcode to be one of described values. Since we don't care about even values in the opcode wire and usually just set them to zero, we don't use a lagrange polynomial to specify the relation to be enforced just at odd indices, which brings the degree down by 1.
- Parameters
-
evals | transformed to evals + C(in(X)...)*scaling_factor |
in | an std::array containing the fully extended Univariate edges. |
parameters | contains beta, gamma, and public_input_delta, .... |
scaling_factor | optional term to scale the evaluation before adding to evals. |
Definition at line 25 of file translator_extra_relations_impl.hpp.
◆ skip()
template<typename FF_ >
template<typename AllEntities >
Returns true if the contribution from all subrelations for the provided inputs is identically zero.
Definition at line 26 of file translator_extra_relations.hpp.
◆ RELATION_LENGTH
◆ SUBRELATION_PARTIAL_LENGTHS
The documentation for this class was generated from the following files: