|
static Polynomial | compute_batched_quotient (const size_t virtual_log_n, std::span< const ProverOpeningClaim< Curve > > opening_claims, const Fr &nu, std::span< Fr > gemini_fold_pos_evaluations, std::span< const ProverOpeningClaim< Curve > > libra_opening_claims, std::span< const ProverOpeningClaim< Curve > > sumcheck_round_claims) |
| Compute batched quotient polynomial Q(X) = ∑ⱼ νʲ ⋅ ( fⱼ(X) − vⱼ) / ( X − xⱼ )
|
|
static ProverOpeningClaim< Curve > | compute_partially_evaluated_batched_quotient (const size_t virtual_log_n, std::span< ProverOpeningClaim< Curve > > opening_claims, Polynomial &batched_quotient_Q, const Fr &nu_challenge, const Fr &z_challenge, std::span< Fr > gemini_fold_pos_evaluations, std::span< ProverOpeningClaim< Curve > > libra_opening_claims={}, std::span< ProverOpeningClaim< Curve > > sumcheck_opening_claims={}) |
| Compute partially evaluated batched quotient polynomial difference Q(X) - Q_z(X)
|
|
static std::vector< Fr > | compute_gemini_fold_pos_evaluations (std::span< const ProverOpeningClaim< Curve > > opening_claims) |
| Compute evaluations of fold polynomials Fold_i at r^{2^i} for i>0. TODO(https://github.com/AztecProtocol/barretenberg/issues/1223): Reconsider minor performance/memory optimizations in Gemini.
|
|
template<typename Transcript > |
static ProverOpeningClaim< Curve > | prove (const CommitmentKey< Curve > &commitment_key, std::span< ProverOpeningClaim< Curve > > opening_claims, const std::shared_ptr< Transcript > &transcript, std::span< ProverOpeningClaim< Curve > > libra_opening_claims={}, std::span< ProverOpeningClaim< Curve > > sumcheck_round_claims={}, const size_t virtual_log_n=0) |
| Returns a batched opening claim equivalent to a set of opening claims consisting of polynomials, each opened at a single point.
|
|
template<typename
Curve>
class bb::ShplonkProver_< Curve >
Shplonk Prover.
- Template Parameters
-
Definition at line 36 of file shplonk.hpp.