|
| template<typename ContainerOverSubrelations , typename AllEntities , typename Parameters > |
| static void | accumulate (ContainerOverSubrelations &accumulators, const AllEntities &in, const Parameters &, const FF &scaling_factor) |
| | Expression for the generalized permutation sort gate.
|
| |
◆ accumulate()
template<typename FF_ >
template<typename ContainerOverSubrelations , typename AllEntities , typename Parameters >
| static void proof_system::EccOpQueueRelationImpl< FF_ >::accumulate |
( |
ContainerOverSubrelations & |
accumulators, |
|
|
const AllEntities & |
in, |
|
|
const Parameters & |
, |
|
|
const FF & |
scaling_factor |
|
) |
| |
|
inlinestatic |
Expression for the generalized permutation sort gate.
The relation is defined as C(in(X)...) = \alpha_{base} * ( \Sum_{i=0}^3 \alpha^i * (w_i - w_{op,i}) * \chi_{ecc_op} + \Sum_{i=0}^3 \alpha^{i+4} w_{op,i} * \bar{\chi}_{ecc_op} )
where w_{op,i} are the ecc op gate wires, \chi_{ecc_op} is the indicator for the portion of the domain representing ecc op gates and \bar{\chi} is the indicator on the complementary domain.
The first four sub-relations check that the values in the conventional wires are identical to the values in the ecc op wires over the portion of the execution trace representing ECC op queue gates. The next four check that the op wire polynomials are identically zero everywhere else.
- 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. |
◆ SUBRELATION_PARTIAL_LENGTHS
Initial value:{
3,
3,
3,
3,
3,
3,
3,
3
}
The documentation for this class was generated from the following file: