103 vk_hash = native_vk->get_hash();
135 const std::vector<FF>& multilinear_challenge,
136 const FF& claimed_libra_evaluation);
139 const std::vector<std::array<FF, 3>>& sumcheck_round_evaluations,
140 const std::vector<FF>& multilinear_challenge);
148 std::shared_ptr<VerificationKey>
key;
Common transcript class for both parties. Stores the data for the current round, as well as the manif...
A container for commitment labels.
static constexpr size_t ECCVM_FIXED_SIZE
bb::VerifierCommitmentKey< Curve > VerifierCommitmentKey
typename Curve::ScalarField FF
VerifierCommitments_< Commitment, VerificationKey > VerifierCommitments
typename G1::affine_element Commitment
typename Curve::BaseField BF
FixedVKAndHash_< PrecomputedEntities< Commitment >, BF, ECCVMHardcodedVKAndHash > VerificationKey
The verification key stores commitments to the precomputed polynomials used by the verifier.
BaseTranscript< Codec, HashFunction > Transcript
Unified ECCVM verifier class for both native and recursive verification.
void append_pow_masking_opening_claim()
bool translation_masking_consistency_checked
TripleIpaClaim compute_triple_ipa_claim(VerifierCommitments &commitments, SumcheckOutput< Flavor > &sumcheck_output, const OpeningClaim< Curve > &univariate_opening_claim)
std::shared_ptr< Transcript > transcript
FF translation_masking_term_eval
ReductionResult reduce_to_triple_ipa_claim()
Reduce the ECCVM proof to a compact TripleIPA verifier claim.
std::conditional_t< IsRecursive, Builder *, void * > builder
TranslationEvaluations_< FF > translation_evaluations
typename TripleIPA::TripleIpaClaim TripleIpaClaim
typename TripleIPA::VerifierAccumulator TripleIpaAccumulator
void append_sumcheck_round_opening_claims(const std::vector< Commitment > &sumcheck_round_commitments, const std::vector< std::array< FF, 3 > > &sumcheck_round_evaluations, const std::vector< FF > &multilinear_challenge)
bool append_libra_opening_claims(const std::array< Commitment, NUM_SMALL_IPA_COMMITMENTS > &libra_commitments, const std::vector< FF > &multilinear_challenge, const FF &claimed_libra_evaluation)
std::vector< OpeningClaim< Curve > > univariate_opening_claims
ECCVMVerifier_(const std::shared_ptr< Transcript > &transcript, const Proof &proof)
std::conditional_t< IsRecursive, typename Flavor::CircuitBuilder, void > Builder
static bool verify_accumulator(const TripleIpaAccumulator &accumulator)
OpeningClaim< Curve > reduce_univariate_opening_claims()
std::shared_ptr< VerificationKey > key
static constexpr bool IsRecursive
FF evaluation_challenge_x
std::shared_ptr< VerificationKey > get_verification_key() const
std::conditional_t< IsRecursive, stdlib::Proof< UltraCircuitBuilder >, HonkProof > TripleIpaProof
TranslatorInputData get_translator_input_data() const
Get the data required by the TranslatorVerifier.
Flavor::VerifierCommitments VerifierCommitments
Flavor::Commitment Commitment
std::shared_ptr< Transcript > get_transcript() const
void compute_accumulated_result()
Commitment pcs_g1_identity
static bool batch_verify_accumulators(std::span< const TripleIpaAccumulator > accumulators)
void append_translation_opening_claims(const std::vector< Commitment > &translation_commitments)
To link the ECCVM Transcript wires op, Px, Py, z1, and z2 to the accumulator computed by the translat...
Simple verification key class for fixed-size circuits (ECCVM, Translator, AVM).
IPA (inner product argument) commitment scheme class.
Unverified claim (C,r,v) for some witness polynomial p(X) such that.
static NativeAccumulator reduce_to_accumulator(const TripleIpaClaim &claim, const auto &transcript)
static bool batch_verify_accumulators(const VK &vk, std::span< const NativeAccumulator > accumulators)
static bool verify_accumulator(const VK &vk, const NativeAccumulator &accumulator)
static bool reduce_verify(const VK &vk, const TripleIpaClaim &claim, const std::shared_ptr< Transcript > &transcript)
std::conditional_t< Curve::is_stdlib_type, typename IPAProtocol::VerifierAccumulator, NativeAccumulator > VerifierAccumulator
bb::TripleIpaClaim< Curve > TripleIpaClaim
Representation of the Grumpkin Verifier Commitment Key inside a bn254 circuit.
static constexpr bool is_stdlib_type
Entry point for Barretenberg command-line interface.
std::vector< fr > HonkProof
ECCVMVerifier_< ECCVMRecursiveFlavor > ECCVMRecursiveVerifier
ECCVMVerifier_< ECCVMFlavor > ECCVMVerifier
constexpr decltype(auto) get(::tuplet::tuple< T... > &&t) noexcept
TripleIpaAccumulator Accumulator
TripleIpaAccumulator reduce_verify() const
TripleIpaAccumulator reduce_to_accumulator() const
Result of reducing ECCVM proof to a compact TripleIPA claim.
TripleIpaClaim triple_ipa_claim
Contains the evaluations of multilinear polynomials at the challenge point . These are computed by S...
Stores the evaluations of op, Px, Py, z1, and z2 computed by the ECCVM Prover. These evaluations are ...
The compact TripleIPA opening claim: the statement that crosses verifier boundaries.