Barretenberg
The ZK-SNARK library at the core of Aztec
|
#include "barretenberg/commitment_schemes/utils/test_settings.hpp"
#include "barretenberg/constants.hpp"
#include "barretenberg/ecc/curves/bn254/bn254.hpp"
#include "barretenberg/eccvm/eccvm_translation_data.hpp"
#include "barretenberg/polynomials/polynomial.hpp"
#include "barretenberg/polynomials/univariate.hpp"
#include "barretenberg/stdlib/primitives/curves/grumpkin.hpp"
#include "barretenberg/sumcheck/zk_sumcheck_data.hpp"
#include "small_subgroup_ipa_utils.hpp"
#include <array>
#include <vector>
Go to the source code of this file.
Classes | |
class | bb::SmallSubgroupIPAProver< Flavor > |
A Curve-agnostic ZK protocol to prove inner products of small vectors. More... | |
class | bb::SmallSubgroupIPAVerifier< Curve > |
Verifies the consistency of polynomial evaluations provided by the the prover. More... | |
Namespaces | |
namespace | bb |
Entry point for Barretenberg command-line interface. | |
Functions | |
template<typename Curve > | |
std::vector< typename Curve::ScalarField > | bb::compute_eccvm_challenge_coeffs (const typename Curve::ScalarField &evaluation_challenge_x, const typename Curve::ScalarField &batching_challenge_v) |
Denote \( M = \text{NUM_DISABLED_ROWS_IN_SUMCHECK} \) and \( N = NUM_SMALL_IPA_EVALUTIONS\). Given an evaluation challenge \( x \) and a batching challenge \(v\), compute the polynomial whose coefficients are given by the vector \( (1, x , x^2 , \ldots, x^{M - 1 }, v\cdot x, \ldots, v^{N-1} \cdot x^{M-2}, v^{N-1}, \cdot x^{M-1},
0, \ldots, 0)\) in the Lagrange basis over the Small Subgroup. | |