Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
bb::avm2::AvmProver Class Reference

#include <prover.hpp>

Public Types

using Flavor = AvmFlavor
 
using FF = Flavor::FF
 
using PCS = Flavor::PCS
 
using Curve = Flavor::Curve
 
using PCSCommitmentKey = Flavor::CommitmentKey
 
using ProvingKey = Flavor::ProvingKey
 
using VerificationKey = Flavor::VerificationKey
 
using Polynomial = Flavor::Polynomial
 
using ProverPolynomials = Flavor::ProverPolynomials
 
using Transcript = Flavor::Transcript
 
using Proof = HonkProof
 

Public Member Functions

 AvmProver (std::shared_ptr< ProvingKey > input_key, std::shared_ptr< VerificationKey > vk, const PCSCommitmentKey &commitment_key)
 
 AvmProver (AvmProver &&prover)=default
 
virtual ~AvmProver ()=default
 
virtual void execute_preamble_round ()
 Add circuit size, public input size, and public inputs to transcript.
 
virtual void execute_wire_commitments_round ()
 Compute commitments to all of the witness wires (apart from the logderivative inverse wires)
 
virtual void execute_log_derivative_inverse_round ()
 
virtual void execute_log_derivative_inverse_commitments_round ()
 
virtual void execute_relation_check_rounds ()
 Run Sumcheck resulting in u = (u_1,...,u_d) challenges and all evaluations at u being calculated.
 
virtual void execute_pcs_rounds ()
 
virtual HonkProof export_proof ()
 
virtual HonkProof construct_proof ()
 

Public Attributes

std::shared_ptr< Transcripttranscript = std::make_shared<Transcript>()
 
std::vector< FFpublic_inputs
 
bb::RelationParameters< FFrelation_parameters
 
std::shared_ptr< ProvingKeykey
 
std::shared_ptr< VerificationKeyvk
 
ProverPolynomials prover_polynomials
 
Flavor::WitnessCommitments witness_commitments
 
Polynomial quotient_W
 
SumcheckOutput< Flavorsumcheck_output
 
PCSCommitmentKey commitment_key
 

Detailed Description

Definition at line 11 of file prover.hpp.

Member Typedef Documentation

◆ Curve

Definition at line 16 of file prover.hpp.

◆ FF

Definition at line 14 of file prover.hpp.

◆ Flavor

Definition at line 13 of file prover.hpp.

◆ PCS

Definition at line 15 of file prover.hpp.

◆ PCSCommitmentKey

◆ Polynomial

Definition at line 20 of file prover.hpp.

◆ Proof

Definition at line 23 of file prover.hpp.

◆ ProverPolynomials

◆ ProvingKey

Definition at line 18 of file prover.hpp.

◆ Transcript

Definition at line 22 of file prover.hpp.

◆ VerificationKey

Constructor & Destructor Documentation

◆ AvmProver() [1/2]

bb::avm2::AvmProver::AvmProver ( std::shared_ptr< ProvingKey input_key,
std::shared_ptr< VerificationKey vk,
const PCSCommitmentKey commitment_key 
)
explicit

Create AvmProver from proving key, witness and manifest.

Parameters
input_keyProving key.
input_manifestInput manifest
Template Parameters
settingsSettings class.

Definition at line 28 of file prover.cpp.

◆ AvmProver() [2/2]

bb::avm2::AvmProver::AvmProver ( AvmProver &&  prover)
default

◆ ~AvmProver()

virtual bb::avm2::AvmProver::~AvmProver ( )
virtualdefault

Member Function Documentation

◆ construct_proof()

HonkProof bb::avm2::AvmProver::construct_proof ( )
virtual

Definition at line 144 of file prover.cpp.

◆ execute_log_derivative_inverse_commitments_round()

void bb::avm2::AvmProver::execute_log_derivative_inverse_commitments_round ( )
virtual

Definition at line 84 of file prover.cpp.

◆ execute_log_derivative_inverse_round()

void bb::avm2::AvmProver::execute_log_derivative_inverse_round ( )
virtual

Definition at line 65 of file prover.cpp.

◆ execute_pcs_rounds()

void bb::avm2::AvmProver::execute_pcs_rounds ( )
virtual

Definition at line 124 of file prover.cpp.

◆ execute_preamble_round()

void bb::avm2::AvmProver::execute_preamble_round ( )
virtual

Add circuit size, public input size, and public inputs to transcript.

Definition at line 41 of file prover.cpp.

◆ execute_relation_check_rounds()

void bb::avm2::AvmProver::execute_relation_check_rounds ( )
virtual

Run Sumcheck resulting in u = (u_1,...,u_d) challenges and all evaluations at u being calculated.

Definition at line 102 of file prover.cpp.

◆ execute_wire_commitments_round()

void bb::avm2::AvmProver::execute_wire_commitments_round ( )
virtual

Compute commitments to all of the witness wires (apart from the logderivative inverse wires)

Definition at line 53 of file prover.cpp.

◆ export_proof()

HonkProof bb::avm2::AvmProver::export_proof ( )
virtual

Definition at line 139 of file prover.cpp.

Member Data Documentation

◆ commitment_key

PCSCommitmentKey bb::avm2::AvmProver::commitment_key

Definition at line 61 of file prover.hpp.

◆ key

std::shared_ptr<ProvingKey> bb::avm2::AvmProver::key

Definition at line 49 of file prover.hpp.

◆ prover_polynomials

ProverPolynomials bb::avm2::AvmProver::prover_polynomials

Definition at line 53 of file prover.hpp.

◆ public_inputs

std::vector<FF> bb::avm2::AvmProver::public_inputs

Definition at line 45 of file prover.hpp.

◆ quotient_W

Polynomial bb::avm2::AvmProver::quotient_W

Definition at line 57 of file prover.hpp.

◆ relation_parameters

bb::RelationParameters<FF> bb::avm2::AvmProver::relation_parameters

Definition at line 47 of file prover.hpp.

◆ sumcheck_output

SumcheckOutput<Flavor> bb::avm2::AvmProver::sumcheck_output

Definition at line 59 of file prover.hpp.

◆ transcript

std::shared_ptr<Transcript> bb::avm2::AvmProver::transcript = std::make_shared<Transcript>()

Definition at line 43 of file prover.hpp.

◆ vk

std::shared_ptr<VerificationKey> bb::avm2::AvmProver::vk

Definition at line 50 of file prover.hpp.

◆ witness_commitments

Flavor::WitnessCommitments bb::avm2::AvmProver::witness_commitments

Definition at line 55 of file prover.hpp.


The documentation for this class was generated from the following files: