Clearmatics Libsnark  0.1
C++ library for zkSNARK proofs
Public Types | Public Member Functions | Public Attributes | Friends | List of all members
libsnark::r1cs_mp_ppzkpcd_processed_verification_key< PCD_ppT > Class Template Reference

#include <r1cs_mp_ppzkpcd.hpp>

Public Types

typedef PCD_ppT::curve_A_pp A_pp
 
typedef PCD_ppT::curve_B_pp B_pp
 

Public Member Functions

 r1cs_mp_ppzkpcd_processed_verification_key ()=default
 
 r1cs_mp_ppzkpcd_processed_verification_key (const r1cs_mp_ppzkpcd_processed_verification_key< PCD_ppT > &other)=default
 
 r1cs_mp_ppzkpcd_processed_verification_key (r1cs_mp_ppzkpcd_processed_verification_key< PCD_ppT > &&other)=default
 
 r1cs_mp_ppzkpcd_processed_verification_key (std::vector< r1cs_ppzksnark_processed_verification_key< A_pp >> &&compliance_step_r1cs_pvks, std::vector< r1cs_ppzksnark_processed_verification_key< B_pp >> &&translation_step_r1cs_pvks, const set_commitment &commitment_to_translation_step_r1cs_vks)
 
r1cs_mp_ppzkpcd_processed_verification_key< PCD_ppT > & operator= (const r1cs_mp_ppzkpcd_processed_verification_key< PCD_ppT > &other)=default
 
size_t size_in_bits () const
 
bool operator== (const r1cs_mp_ppzkpcd_processed_verification_key< PCD_ppT > &other) const
 

Public Attributes

std::vector< r1cs_ppzksnark_processed_verification_key< A_pp > > compliance_step_r1cs_pvks
 
std::vector< r1cs_ppzksnark_processed_verification_key< B_pp > > translation_step_r1cs_pvks
 
set_commitment commitment_to_translation_step_r1cs_vks
 

Friends

std::ostream & operator (std::ostream &out, const r1cs_mp_ppzkpcd_processed_verification_key< PCD_ppT > &pvk)
 
std::istream & operator>> (std::istream &in, r1cs_mp_ppzkpcd_processed_verification_key< PCD_ppT > &pvk)
 

Detailed Description

template<typename PCD_ppT>
class libsnark::r1cs_mp_ppzkpcd_processed_verification_key< PCD_ppT >

A processed verification key for the R1CS (multi-predicate) ppzkPCD.

Compared to a (non-processed) verification key, a processed verification key contains a small constant amount of additional pre-computed information that enables a faster verification time.

Definition at line 194 of file r1cs_mp_ppzkpcd.hpp.

Member Typedef Documentation

◆ A_pp

template<typename PCD_ppT >
typedef PCD_ppT::curve_A_pp libsnark::r1cs_mp_ppzkpcd_processed_verification_key< PCD_ppT >::A_pp

Definition at line 215 of file r1cs_mp_ppzkpcd.hpp.

◆ B_pp

template<typename PCD_ppT >
typedef PCD_ppT::curve_B_pp libsnark::r1cs_mp_ppzkpcd_processed_verification_key< PCD_ppT >::B_pp

Definition at line 216 of file r1cs_mp_ppzkpcd.hpp.

Constructor & Destructor Documentation

◆ r1cs_mp_ppzkpcd_processed_verification_key() [1/4]

◆ r1cs_mp_ppzkpcd_processed_verification_key() [2/4]

◆ r1cs_mp_ppzkpcd_processed_verification_key() [3/4]

◆ r1cs_mp_ppzkpcd_processed_verification_key() [4/4]

template<typename PCD_ppT >
libsnark::r1cs_mp_ppzkpcd_processed_verification_key< PCD_ppT >::r1cs_mp_ppzkpcd_processed_verification_key ( std::vector< r1cs_ppzksnark_processed_verification_key< A_pp >> &&  compliance_step_r1cs_pvks,
std::vector< r1cs_ppzksnark_processed_verification_key< B_pp >> &&  translation_step_r1cs_pvks,
const set_commitment commitment_to_translation_step_r1cs_vks 
)
inline

Member Function Documentation

◆ operator=()

◆ operator==()

template<typename PCD_ppT >
bool libsnark::r1cs_mp_ppzkpcd_processed_verification_key< PCD_ppT >::operator== ( const r1cs_mp_ppzkpcd_processed_verification_key< PCD_ppT > &  other) const

◆ size_in_bits()

template<typename PCD_ppT >
size_t libsnark::r1cs_mp_ppzkpcd_processed_verification_key< PCD_ppT >::size_in_bits ( ) const

Friends And Related Function Documentation

◆ operator

template<typename PCD_ppT >
std::ostream& operator ( std::ostream &  out,
const r1cs_mp_ppzkpcd_processed_verification_key< PCD_ppT > &  pvk 
)
friend

◆ operator>>

template<typename PCD_ppT >
std::istream& operator>> ( std::istream &  in,
r1cs_mp_ppzkpcd_processed_verification_key< PCD_ppT > &  pvk 
)
friend

Member Data Documentation

◆ commitment_to_translation_step_r1cs_vks

template<typename PCD_ppT >
set_commitment libsnark::r1cs_mp_ppzkpcd_processed_verification_key< PCD_ppT >::commitment_to_translation_step_r1cs_vks

Definition at line 222 of file r1cs_mp_ppzkpcd.hpp.

◆ compliance_step_r1cs_pvks

template<typename PCD_ppT >
std::vector<r1cs_ppzksnark_processed_verification_key<A_pp> > libsnark::r1cs_mp_ppzkpcd_processed_verification_key< PCD_ppT >::compliance_step_r1cs_pvks

Definition at line 219 of file r1cs_mp_ppzkpcd.hpp.

◆ translation_step_r1cs_pvks

template<typename PCD_ppT >
std::vector<r1cs_ppzksnark_processed_verification_key<B_pp> > libsnark::r1cs_mp_ppzkpcd_processed_verification_key< PCD_ppT >::translation_step_r1cs_pvks

Definition at line 221 of file r1cs_mp_ppzkpcd.hpp.


The documentation for this class was generated from the following file:
libsnark::r1cs_mp_ppzkpcd_processed_verification_key::compliance_step_r1cs_pvks
std::vector< r1cs_ppzksnark_processed_verification_key< A_pp > > compliance_step_r1cs_pvks
Definition: r1cs_mp_ppzkpcd.hpp:219
libsnark::r1cs_mp_ppzkpcd_processed_verification_key::translation_step_r1cs_pvks
std::vector< r1cs_ppzksnark_processed_verification_key< B_pp > > translation_step_r1cs_pvks
Definition: r1cs_mp_ppzkpcd.hpp:221
libsnark::r1cs_mp_ppzkpcd_processed_verification_key::commitment_to_translation_step_r1cs_vks
set_commitment commitment_to_translation_step_r1cs_vks
Definition: r1cs_mp_ppzkpcd.hpp:222