76 std::shared_ptr<ProvingKey>
key;
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 container for commitment labels.
The proving key is responsible for storing the polynomials used by the prover.
ECCVMCircuitBuilder CircuitBuilder
typename G1::affine_element Commitment
typename Curve::BaseField BF
bb::Polynomial< FF > Polynomial
bb::CommitmentKey< Curve > CommitmentKey
FixedVKAndHash_< PrecomputedEntities< Commitment >, BF, ECCVMHardcodedVKAndHash > VerificationKey
The verification key stores commitments to the precomputed polynomials used by the verifier.
BaseTranscript< Codec, HashFunction > Transcript
void prove_triple_ipa(const OpeningClaim &prover_opening, const VerifierOpeningClaim &verifier_opening)
Open the sumcheck multilinears together with the single reduced univariate claim via the TripleIPA.
BB_PROFILE void execute_transcript_consistency_univariate_opening_round()
Flavor::Commitment Commitment
std::vector< FF > public_inputs
SumcheckOutput< Flavor > sumcheck_output
typename Flavor::template AllEntities< Commitment > Commitments
BB_PROFILE void execute_log_derivative_commitments_round()
Compute sorted witness-table accumulator.
FF evaluation_challenge_x
void append_libra_opening_claims()
Add the Libra (sumcheck ZK masking) univariate opening claims, produced via the SmallSubgroupIPA prov...
std::shared_ptr< Transcript > transcript
CommitmentLabels commitment_labels
TranslationEvaluations translation_evaluations
void append_translation_opening_claims()
To link the ECCVM Transcript wires op, Px, Py, z1, and z2 to the accumulator computed by the translat...
std::shared_ptr< ProvingKey > key
void append_pow_masking_opening_claim()
Add a small random univariate opening claim that masks the TripleIPA pow tensor.
BB_PROFILE void execute_preamble_round()
Fiat-Shamir the VK.
BB_PROFILE void execute_wire_commitments_round()
Compute commitments to the first three wires.
std::pair< OpeningClaim, VerifierOpeningClaim > reduce_univariate_opening_claims()
Reduce all univariate opening claims to a single opening claim via one Shplonk.
ProverOpeningClaimBatcher< Flavor::Curve > univariate_claims
BB_PROFILE void execute_grand_product_computation_round()
Compute permutation and lookup grand product polynomials and commitments.
BB_PROFILE void execute_relation_check_rounds()
Run Sumcheck resulting in u = (u_1,...,u_d) challenges and all evaluations at u being calculated.
bb::RelationParameters< FF > relation_parameters
void append_sumcheck_round_opening_claims()
Add the committed-sumcheck round univariate opening claims (3 per round: evaluations at 0,...
Simple verification key class for fixed-size circuits (ECCVM, Translator, AVM).
Unverified claim (C,r,v) for some witness polynomial p(X) such that.
Polynomial p and an opening pair (r,v) such that p(r) = v.
A Curve-agnostic ZK protocol to prove inner products of small vectors.
Entry point for Barretenberg command-line interface.
std::vector< fr > HonkProof
constexpr decltype(auto) get(::tuplet::tuple< T... > &&t) noexcept
Container for parameters used by the grand product (permutation, lookup) Honk relations.
Contains the evaluations of multilinear polynomials at the challenge point . These are computed by S...
This structure is created to contain various polynomials and constants required by ZK Sumcheck.