barretenberg
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Public Attributes | Static Public Attributes | List of all members
proof_system::honk::ECCVMComposer_< Flavor > Class Template Reference

Public Types

using FF = typename Flavor::FF
 
using CircuitConstructor = ECCVMCircuitBuilder< Flavor >
 
using ProvingKey = typename Flavor::ProvingKey
 
using VerificationKey = typename Flavor::VerificationKey
 
using PCS = typename Flavor::PCS
 
using CommitmentKey = typename Flavor::CommitmentKey
 
using VerifierCommitmentKey = typename Flavor::VerifierCommitmentKey
 
using Transcript = typename Flavor::Transcript
 

Public Member Functions

 ECCVMComposer_ (std::shared_ptr< barretenberg::srs::factories::CrsFactory< typename Flavor::Curve > > crs_factory)
 
 ECCVMComposer_ (std::shared_ptr< ProvingKey > p_key, std::shared_ptr< VerificationKey > v_key)
 
 ECCVMComposer_ (ECCVMComposer_ &&other) noexcept=default
 
 ECCVMComposer_ (ECCVMComposer_ const &other) noexcept=default
 
ECCVMComposer_operator= (ECCVMComposer_ &&other) noexcept=default
 
ECCVMComposer_operator= (ECCVMComposer_ const &other) noexcept=default
 
std::shared_ptr< ProvingKey > compute_proving_key (CircuitConstructor &circuit_constructor)
 
std::shared_ptr< VerificationKey > compute_verification_key (CircuitConstructor &circuit_constructor)
 
void compute_witness (CircuitConstructor &circuit_constructor)
 Compute witness polynomials.
 
ECCVMProver_< Flavorcreate_prover (CircuitConstructor &circuit_constructor, const std::shared_ptr< Transcript > &transcript=std::make_shared< Transcript >())
 
ECCVMVerifier_< Flavorcreate_verifier (CircuitConstructor &circuit_constructor, const std::shared_ptr< Transcript > &transcript=std::make_shared< Transcript >())
 
void add_table_column_selector_poly_to_proving_key (barretenberg::polynomial &small, const std::string &tag)
 
void compute_commitment_key (size_t circuit_size)
 

Public Attributes

std::shared_ptr< ProvingKey > proving_key
 
std::shared_ptr< VerificationKey > verification_key
 
std::shared_ptr< barretenberg::srs::factories::CrsFactory< typename Flavor::Curve > > crs_factory_
 
std::shared_ptr< CommitmentKey > commitment_key
 
std::vector< uint32_t > recursive_proof_public_input_indices
 
bool contains_recursive_proof = false
 
bool computed_witness = false
 

Static Public Attributes

static constexpr std::string_view NAME_STRING = "ECCVM"
 
static constexpr size_t NUM_RESERVED_GATES = 0
 
static constexpr size_t NUM_WIRES = CircuitConstructor::NUM_WIRES
 

Member Function Documentation

◆ compute_verification_key()

template<ECCVMFlavor Flavor>
std::shared_ptr< typename Flavor::VerificationKey > proof_system::honk::ECCVMComposer_< Flavor >::compute_verification_key ( CircuitConstructor circuit_constructor)

Compute verification key consisting of selector precommitments.

Returns
Pointer to created circuit verification key.

◆ compute_witness()

template<ECCVMFlavor Flavor>
void proof_system::honk::ECCVMComposer_< Flavor >::compute_witness ( CircuitConstructor circuit_constructor)

Compute witness polynomials.

◆ create_verifier()

template<ECCVMFlavor Flavor>
ECCVMVerifier_< Flavor > proof_system::honk::ECCVMComposer_< Flavor >::create_verifier ( CircuitConstructor circuit_constructor,
const std::shared_ptr< Transcript > &  transcript = std::make_shared<Transcript>() 
)

Create verifier: compute verification key, initialize verifier with it and an initial manifest and initialize commitment_scheme.

Returns
The verifier.

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