#include <translator_decomposition_relation.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 decomposition of various values into smaller limbs or microlimbs.
|
|
template<typename FF_>
class bb::TranslatorDecompositionRelationImpl< FF_ >
Definition at line 13 of file translator_decomposition_relation.hpp.
◆ FF
◆ accumulate()
template<typename ContainerOverSubrelations , typename AllEntities , typename Parameters >
Expression for decomposition of various values into smaller limbs or microlimbs.
This relation enforces three types of subrelations: 1) A subrelation decomposing a value from the transcript (for example, z1) into 68-bit limbs. These relations will have the structure lagrange_even_in_minicircuit⋅(a - a_low - a_high⋅2⁶⁸)
2) A subrelation decomposing a value of one of the limbs used in bigfield computation (for example, the lower wide relation limb) into 14-bit limbs. These relations will have the structure lagrange_even_in_minicircuit⋅(a - a_0 - a_1⋅2¹⁴ - ....)
3) A subrelation making a microlimb range constraint more constraining. For example, we want to constrain some values to 12 bits instead of 14. So we add a constraint lagrange_even_in_minicircuit⋅(a_highest⋅4 - a_tail)
. In a separate relation both a_highest and a_tail are constrained to be 14 bits, but this relation changes the constraint on a_highest to be 12 bits.
- 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 32 of file translator_decomposition_relation_impl.hpp.
◆ skip()
template<typename FF_ >
template<typename AllEntities >
◆ RELATION_LENGTH
◆ SUBRELATION_PARTIAL_LENGTHS
The documentation for this class was generated from the following files: