Common transcript class for both parties. Stores the data for the current round, as well as the manif...
std::vector< FF > MergeProof
Unified batch verifier for the batch Goblin ECC op queue merge protocol.
typename Curve::ScalarField FF
std::array< Commitment, NUM_WIRES > TableCommitments
Manages ECC operations for the Goblin proving system.
The proving key is responsible for storing the polynomials used by the prover.
ECCVMCircuitBuilder CircuitBuilder
FixedVKAndHash_< PrecomputedEntities< Commitment >, BF, ECCVMHardcodedVKAndHash > VerificationKey
The verification key stores commitments to the precomputed polynomials used by the verifier.
Simple verification key class for fixed-size circuits (ECCVM, Translator, AVM).
fq evaluation_challenge_x
MergeRecursiveVerifier::Commitment RecursiveCommitment
MergeProof prove_merge(const std::shared_ptr< Transcript > &transcript=std::make_shared< Transcript >()) const
Construct a single-step merge proof for the most recently merged subtable.
void prove_eccvm()
Construct an ECCVM proof and IPA opening proof.
fq translation_batching_challenge_v
MergeVerifier::TableCommitments TableCommitments
GoblinProof prove()
Constuct a full Goblin proof (ECCVM, Translator, merge)
void prove_batch_merge()
Construct a batched merge proof for all subtables accumulated during the IVC.
MergeRecursiveVerifier::PairingPoints PairingPoints
BatchMergeRecursiveVerifier::TableCommitments BatchRecursiveTableCommitments
BatchMergeProof batch_merge_proof
std::shared_ptr< OpQueue > op_queue
void prove_translator()
Construct a translator proof.
MegaFlavor::Commitment Commitment
MergeProver::MergeProof MergeProof
BatchMergeProver::MergeProof BatchMergeProof
std::pair< PairingPoints, RecursiveTableCommitments > recursively_verify_merge(MegaBuilder &builder, const RecursiveMergeCommitments &merge_commitments, const std::shared_ptr< RecursiveTranscript > &transcript)
Recursively verify the most recent single-step merge proof.
std::shared_ptr< Transcript > transcript
MergeRecursiveVerifier::TableCommitments RecursiveTableCommitments
std::pair< PairingPoints, BatchRecursiveTableCommitments > recursively_verify_batch_merge(MegaBuilder &builder, const BatchMergeRecursiveVerifier::FF &hash) const
Recursively verify the batched merge proof inside the hiding kernel.
IPA (inner product argument) commitment scheme class.
Curve::AffineElement Commitment
std::vector< FF > MergeProof
Verifier for the single-step Goblin ECC op queue merge protocol.
typename Curve::AffineElement Commitment
std::conditional_t< Curve::is_stdlib_type, stdlib::recursion::PairingPoints< Curve >, bb::PairingPoints< Curve > > PairingPoints
std::array< Commitment, NUM_WIRES > TableCommitments
TranslatorCircuitBuilder creates a circuit that evaluates the correctness of the evaluation of EccOpQ...
FixedVKAndHash_< VKEntities< Commitment >, FF, TranslatorHardcodedVKAndHash > VerificationKey
The verification key stores commitments to the precomputed polynomials used by the verifier.
Entry point for Barretenberg command-line interface.
field< Bn254FrParams > fr
BaseTranscript< FrCodec, bb::crypto::Poseidon2< bb::crypto::Poseidon2Bn254ScalarFieldParams > > NativeTranscript
MegaCircuitBuilder_< field< Bn254FrParams > > MegaCircuitBuilder
BaseTranscript< stdlib::StdlibCodec< stdlib::field_t< MegaCircuitBuilder > >, stdlib::poseidon2< MegaCircuitBuilder > > MegaStdlibTranscript
constexpr decltype(auto) get(::tuplet::tuple< T... > &&t) noexcept
std::shared_ptr< TranslatorVerificationKey > translator_verification_key
std::shared_ptr< ECCVMVerificationKey > eccvm_verification_key