5#include "barretenberg/common/constexpr_utils.hpp"
6#include "barretenberg/polynomials/polynomial.hpp"
7#include "barretenberg/polynomials/univariate.hpp"
8#include "barretenberg/relations/relation_types.hpp"
10namespace proof_system::honk::sumcheck {
16 static constexpr std::array<size_t, 2> SUBRELATION_PARTIAL_LENGTHS{
21 template <
typename Accumulator>
static Accumulator convert_to_wnaf(
const auto& s0,
const auto& s1)
27 auto naf = t + t - 15;
31 inline static auto& get_grand_product_polynomial(
auto& input) {
return input.z_perm; }
32 inline static auto& get_shifted_grand_product_polynomial(
auto& input) {
return input.z_perm_shift; }
34 template <
typename Accumulator,
typename AllEntities,
typename Parameters>
37 template <
typename Accumulator,
typename AllEntities,
typename Parameters>
40 template <
typename ContainerOverSubrelations,
typename AllEntities,
typename Parameters>
41 static void accumulate(ContainerOverSubrelations& accumulator,
42 const AllEntities& in,
43 const Parameters& params,
44 const FF& scaling_factor);
The templates defined herein facilitate sharing the relation arithmetic between the prover and the ve...
Definition: relation_types.hpp:121
Definition: ecc_set_relation.hpp:12
static Accumulator compute_permutation_numerator(const AllEntities &in, const Parameters ¶ms)
Performs list-equivalence checks for the ECCVM.
Definition: ecc_set_relation.cpp:37
static void accumulate(ContainerOverSubrelations &accumulator, const AllEntities &in, const Parameters ¶ms, const FF &scaling_factor)
Expression for the StandardArithmetic gate. @dbetails The relation is defined as C(in(X)....
Definition: ecc_set_relation.cpp:367
static Accumulator compute_permutation_denominator(const AllEntities &in, const Parameters ¶ms)
Definition: ecc_set_relation.cpp:230