124 const std::shared_ptr<Transcript>&
transcript,
Common transcript class for both parties. Stores the data for the current round, as well as the manif...
CommitmentKey object over a pairing group 𝔾₁.
Used to construct execution trace representations of elliptic curve operations.
The proving key is responsible for storing the polynomials used by the prover.
The verification key is responsible for storing the commitments to the precomputed (non-witnessk) pol...
ECCVMCircuitBuilder CircuitBuilder
fq evaluation_challenge_x
static bool verify(const GoblinProof &proof, const MergeCommitments &merge_commitments, const std::shared_ptr< Transcript > &transcript, const MergeSettings merge_settings=MergeSettings::PREPEND)
Verify a full Goblin proof (ECCVM, Translator, merge)
std::pair< PairingPoints, RecursiveTableCommitments > recursively_verify_merge(MegaBuilder &builder, const RecursiveMergeCommitments &merge_commitments, const std::shared_ptr< RecursiveTranscript > &transcript, const MergeSettings merge_settings=MergeSettings::PREPEND)
Recursively verify the next merge proof in the merge verification queue.
MergeRecursiveVerifier::Commitment RecursiveCommitment
void prove_eccvm()
Construct an ECCVM proof and the translation polynomial evaluations.
fq translation_batching_challenge_v
MergeVerifier::TableCommitments TableCommitments
void prove_merge(const std::shared_ptr< Transcript > &transcript=std::make_shared< Transcript >(), const MergeSettings merge_settings=MergeSettings::PREPEND)
Construct a merge proof for the goblin ECC ops in the provided circuit; append the proof to the merge...
std::shared_ptr< OpQueue > op_queue
void prove_translator()
Construct a translator proof.
MegaFlavor::Commitment Commitment
GoblinProof prove(const MergeSettings merge_settings=MergeSettings::PREPEND)
Constuct a full Goblin proof (ECCVM, Translator, merge)
MergeProver::MergeProof MergeProof
CommitmentKey< curve::BN254 > commitment_key
std::deque< MergeProof > merge_verification_queue
std::shared_ptr< Transcript > transcript
MergeRecursiveVerifier::TableCommitments RecursiveTableCommitments
Curve::AffineElement Commitment
std::vector< FF > MergeProof
std::array< Commitment, NUM_WIRES > TableCommitments
TranslatorCircuitBuilder creates a circuit that evaluates the correctness of the evaluation of EccOpQ...
The verification key is responsible for storing the commitments to the precomputed (non-witnessk) pol...
typename Curve::Element Commitment
std::array< Commitment, NUM_WIRES > TableCommitments
stdlib::recursion::PairingPoints< CircuitBuilder > PairingPoints
Entry point for Barretenberg command-line interface.
field< Bn254FrParams > fr
MergeSettings
The MergeSettings define whether an current subtable will be added at the beginning (PREPEND) or at t...
MegaCircuitBuilder_< field< Bn254FrParams > > MegaCircuitBuilder
BaseTranscript< NativeTranscriptParams > NativeTranscript
constexpr decltype(auto) get(::tuplet::tuple< T... > &&t) noexcept
std::shared_ptr< TranslatorVerificationKey > translator_verification_key
std::shared_ptr< ECCVMVerificationKey > eccvm_verification_key
An object storing two EC points that represent the inputs to a pairing check.