54 "LEFT_TABLE_DEGREE_CHECK_1",
55 "LEFT_TABLE_DEGREE_CHECK_2",
56 "LEFT_TABLE_DEGREE_CHECK_3" };
59 "SHPLONK_MERGE_BATCHING_CHALLENGE_0",
"SHPLONK_MERGE_BATCHING_CHALLENGE_1",
60 "SHPLONK_MERGE_BATCHING_CHALLENGE_2",
"SHPLONK_MERGE_BATCHING_CHALLENGE_3",
61 "SHPLONK_MERGE_BATCHING_CHALLENGE_4",
"SHPLONK_MERGE_BATCHING_CHALLENGE_5",
62 "SHPLONK_MERGE_BATCHING_CHALLENGE_6",
"SHPLONK_MERGE_BATCHING_CHALLENGE_7",
63 "SHPLONK_MERGE_BATCHING_CHALLENGE_8",
"SHPLONK_MERGE_BATCHING_CHALLENGE_9",
64 "SHPLONK_MERGE_BATCHING_CHALLENGE_10",
"SHPLONK_MERGE_BATCHING_CHALLENGE_11",
65 "SHPLONK_MERGE_BATCHING_CHALLENGE_12"
81 const std::vector<FF>& degree_check_challenges);
97 const std::vector<FF>& shplonk_batching_challenges,
100 const Polynomial& reversed_batched_left_tables,
101 const std::vector<FF>& evals);
116 const FF& shplonk_opening_challenge,
120 const std::vector<FF>& shplonk_batching_challenges,
124 const std::vector<FF>& evals);
Common transcript class for both parties. Stores the data for the current round, as well as the manif...
CommitmentKey object over a pairing group 𝔾₁.
static constexpr size_t NUM_WIRES
Defines the circuit block types for the Mega arithmetization.
Prover class for the Goblin ECC op queue transcript merge protocol.
static constexpr size_t NUM_WIRES
Curve::AffineElement Commitment
std::shared_ptr< ECCOpQueue > op_queue
std::vector< FF > MergeProof
BB_PROFILE MergeProof construct_proof()
Prove proper construction of the aggregate Goblin ECC op queue polynomials T_j.
std::vector< std::string > labels_degree_check
static OpeningClaim compute_shplonk_opening_claim(Polynomial &shplonk_batched_quotient, const FF &shplonk_opening_challenge, const std::array< Polynomial, NUM_WIRES > &left_table, const std::array< Polynomial, NUM_WIRES > &right_table, const std::array< Polynomial, NUM_WIRES > &merged_table, const std::vector< FF > &shplonk_batching_challenges, const FF &kappa, const FF &kappa_inv, Polynomial &reversed_batched_left_tables, const std::vector< FF > &evals)
Compute the partially evaluated Shplonk batched quotient and the resulting opening claim.
std::vector< std::string > labels_shplonk_batching_challenges
std::shared_ptr< Transcript > transcript
CommitmentKey pcs_commitment_key
static Polynomial compute_shplonk_batched_quotient(const std::array< Polynomial, NUM_WIRES > &left_table, const std::array< Polynomial, NUM_WIRES > &right_table, const std::array< Polynomial, NUM_WIRES > &merged_table, const std::vector< FF > &shplonk_batching_challenges, const FF &kappa, const FF &kappa_inv, const Polynomial &reversed_batched_left_tables, const std::vector< FF > &evals)
Compute the batched Shplonk quotient polynomial.
static Polynomial compute_degree_check_polynomial(const std::array< Polynomial, NUM_WIRES > &left_table, const std::vector< FF > °ree_check_challenges)
Compute the batched polynomial for the degree check.
bb::CommitmentKey< Curve > CommitmentKey
Unverified claim (C,r,v) for some witness polynomial p(X) such that.
Opening pair (r,v) for some witness polynomial p(X) such that p(r) = v.
Polynomial p and an opening pair (r,v) such that p(r) = v.
typename Group::affine_element AffineElement
Entry point for Barretenberg command-line interface.
MergeSettings
The MergeSettings define whether an current subtable will be added at the beginning (PREPEND) or at t...
BaseTranscript< FrCodec, bb::crypto::Poseidon2< bb::crypto::Poseidon2Bn254ScalarFieldParams > > NativeTranscript
constexpr decltype(auto) get(::tuplet::tuple< T... > &&t) noexcept