37 static constexpr bool HasZK =
false;
54 template <
typename FF>
67 static constexpr size_t NUM_SUBRELATIONS = compute_number_of_subrelations<Relations>();
73 static constexpr size_t num_frs_comm = FrCodec::calc_num_fields<Commitment>();
74 static constexpr size_t num_frs_fr = FrCodec::calc_num_fields<FF>();
89 batched_unshifted_accumulator,
90 batched_unshifted_instance,
103 batched_unshifted_accumulator,
104 batched_unshifted_instance,
115 batched_shifted_accumulator,
116 batched_shifted_instance
130 template <
typename DataType>
165 if (poly.is_empty()) {
178 for (
auto& polynomial : this->get_all()) {
179 polynomial.increase_virtual_size(size_in);
219 for (
auto [poly, full_poly] :
zip_view(get_all(), full_polynomials.get_all())) {
221 size_t desired_size = full_poly.end_index() / 2 + full_poly.end_index() % 2;
222 poly =
Polynomial(desired_size, circuit_size / 2);
253 batched_unshifted_accumulator =
"BATCHED_UNSHIFTED_ACCUMULATOR";
254 batched_unshifted_instance =
"BATCHED_UNSHIFTED_INSTANCE";
255 eq_accumulator =
"EQ_ACCUMULATOR";
256 eq_instance =
"EQ_INSTANCE";
257 batched_shifted_accumulator =
"BATCHED_SHIFTED_ACCUMULATOR";
258 batched_shifted_instance =
"BATCHED_SHIFTED_INSTANCE";
#define BB_BENCH_NAME(name)
Common transcript class for both parties. Stores the data for the current round, as well as the manif...
CommitmentKey object over a pairing group 𝔾₁.
A base class labelling all entities (for instance, all of the polynomials used by the prover during s...
A field element for each entity of the flavor. These entities represent the prover polynomials evalua...
A container for commitment labels.
A container for storing the partially evaluated multivariates produced by sumcheck.
PartiallyEvaluatedMultivariates()=default
PartiallyEvaluatedMultivariates(const ProverPolynomials &full_polynomials, size_t circuit_size)
A container for the prover polynomials handles.
void increase_polynomials_virtual_size(const size_t size_in)
ProverPolynomials(size_t circuit_size)
ProverPolynomials()=default
size_t get_polynomial_size() const
The proving key is responsible for storing the polynomials used by the prover.
std::vector< FF > instance_evaluations
std::vector< FF > accumulator_challenge
ProvingKey(ProverPolynomials &&polynomials, std::vector< FF > accumulator_challenge, std::vector< FF > instance_challenge, std::vector< FF > accumulator_evaluations, std::vector< FF > instance_evaluations)
ProverPolynomials polynomials
std::vector< FF > accumulator_evaluations
std::vector< FF > instance_challenge
Class for ShiftedEntities, containing the shifted witness polynomials.
DEFINE_FLAVOR_MEMBERS(DataType, batched_shifted_accumulator, batched_shifted_instance)
DEFINE_FLAVOR_MEMBERS(DataType, batched_unshifted_accumulator, batched_unshifted_instance, eq_accumulator, eq_instance)
Container for all witness polynomials used/constructed by the prover.
DEFINE_FLAVOR_MEMBERS(DataType, batched_unshifted_accumulator, batched_unshifted_instance, eq_accumulator, eq_instance)
Curve::AffineElement Commitment
static constexpr size_t NUM_WIRES
static constexpr size_t NUM_WITNESS_ENTITIES
static constexpr size_t NUM_SUBRELATIONS
static constexpr size_t BATCHED_RELATION_PARTIAL_LENGTH
static constexpr size_t MAX_PARTIAL_RELATION_LENGTH
static constexpr size_t NUM_SHIFTED_ENTITIES
static constexpr bool IS_MULTILINEAR_BATCHING
Relations_< FF > Relations
static constexpr bool USE_PADDING
static constexpr size_t num_frs_fr
static constexpr bool has_zero_row
static constexpr bool HasZK
Curve::Element GroupElement
static constexpr bool USE_SHORT_MONOMIALS
static constexpr size_t NUM_ALL_ENTITIES
static constexpr size_t PROOF_LENGTH_WITHOUT_PUB_INPUTS()
static constexpr size_t NUM_RELATIONS
bb::Polynomial< FF > Polynomial
std::tuple< bb::MultilinearBatchingAccumulatorRelation< FF >, bb::MultilinearBatchingInstanceRelation< FF > > Relations_
static constexpr size_t VIRTUAL_LOG_N
static constexpr size_t num_frs_comm
A template class for a reference array. Behaves as if std::array<T&, N> was possible.
A wrapper for Relations to expose methods used by the Sumcheck prover or verifier to add the contribu...
Representation of the Grumpkin Verifier Commitment Key inside a bn254 circuit.
typename Group::element Element
typename Group::affine_element AffineElement
Base class templates for structures that contain data parameterized by the fundamental polynomials of...
#define DEFINE_COMPOUND_GET_ALL(...)
Entry point for Barretenberg command-line interface.
BaseTranscript< FrCodec, bb::crypto::Poseidon2< bb::crypto::Poseidon2Bn254ScalarFieldParams > > NativeTranscript
constexpr decltype(auto) get(::tuplet::tuple< T... > &&t) noexcept