barretenberg
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Public Attributes | Static Public Attributes | List of all members
proof_system::plonk::proving_key Struct Reference

Public Types

enum  LookupType { NONE , ABSOLUTE_LOOKUP , RELATIVE_LOOKUP }
 

Public Member Functions

 proving_key (proving_key_data &&data, std::shared_ptr< barretenberg::srs::factories::ProverCrs< curve::BN254 > > const &crs)
 Construct a new proving key from a proving_key_data object.
 
 proving_key (const size_t num_gates, const size_t num_inputs, std::shared_ptr< barretenberg::srs::factories::ProverCrs< curve::BN254 > > const &crs, CircuitType type=CircuitType::UNDEFINED)
 
 proving_key (std::ostream &is, std::string const &crs_path)
 
void init ()
 

Public Attributes

CircuitType circuit_type
 
size_t circuit_size
 
size_t log_circuit_size
 
size_t num_public_inputs
 
bool contains_recursive_proof = false
 
std::vector< uint32_t > recursive_proof_public_input_indices
 
std::vector< uint32_t > memory_read_records
 
std::vector< uint32_t > memory_write_records
 
PolynomialStore< barretenberg::frpolynomial_store
 
barretenberg::evaluation_domain small_domain
 
barretenberg::evaluation_domain large_domain
 
std::shared_ptr< barretenberg::srs::factories::ProverCrs< curve::BN254 > > reference_string
 
barretenberg::polynomial quotient_polynomial_parts [plonk::NUM_QUOTIENT_PARTS]
 
PolynomialManifest polynomial_manifest
 

Static Public Attributes

static constexpr size_t min_thread_block = 4UL
 

Constructor & Destructor Documentation

◆ proving_key() [1/2]

proof_system::plonk::proving_key::proving_key ( proving_key_data &&  data,
std::shared_ptr< barretenberg::srs::factories::ProverCrs< curve::BN254 > > const &  crs 
)

Construct a new proving key from a proving_key_data object.

Parameters
data
crs

◆ proving_key() [2/2]

proof_system::plonk::proving_key::proving_key ( const size_t  num_gates,
const size_t  num_inputs,
std::shared_ptr< barretenberg::srs::factories::ProverCrs< curve::BN254 > > const &  crs,
CircuitType  type = CircuitType::UNDEFINED 
)

proving_key constructor.

Delegates to proving_key::init

Member Function Documentation

◆ init()

void proof_system::plonk::proving_key::init ( )

Initialize proving key.

  1. Compute lookup tables for small, mid and large domains
  2. Set capacity for polynomial store cache
  3. Initialize quotient_polynomial_parts(n+1) to zeroes.

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