nil::crypto3::zk::snark::r1cs_sp_ppzkpcd_proving_key< PCD_ppT > Class Template Reference

#include <r1cs_sp_ppzkpcd.hpp>

+ Collaboration diagram for nil::crypto3::zk::snark::r1cs_sp_ppzkpcd_proving_key< PCD_ppT >:

Public Types

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

Public Member Functions

r1cs_sp_ppzkpcd_proving_key< PCD_ppT > & operator= (const r1cs_sp_ppzkpcd_proving_key< PCD_ppT > &other)=default
 
bool operator== (const r1cs_sp_ppzkpcd_proving_key< PCD_ppT > &other) const
 
 r1cs_sp_ppzkpcd_proving_key ()
 
 r1cs_sp_ppzkpcd_proving_key (const r1cs_sp_ppzkpcd_compliance_predicate< PCD_ppT > &compliance_predicate, typename r1cs_ppzksnark< A_pp >::proving_key_type &&compliance_step_r1cs_pk, typename r1cs_ppzksnark< B_pp >::proving_key &_type &translation_step_r1cs_pk, const typename r1cs_ppzksnark< A_pp >::verification_key_type &compliance_step_r1cs_vk, const typename r1cs_ppzksnark< B_pp >::verification_key_type &translation_step_r1cs_vk)
 
 r1cs_sp_ppzkpcd_proving_key (const r1cs_sp_ppzkpcd_proving_key< PCD_ppT > &other)=default
 
 r1cs_sp_ppzkpcd_proving_key (r1cs_sp_ppzkpcd_proving_key< PCD_ppT > &&other)=default
 
std::size_t size_in_bits () const
 

Public Attributes

r1cs_sp_ppzkpcd_compliance_predicate< PCD_ppT > compliance_predicate
 
r1cs_ppzksnark< A_pp >::proving_key_type compliance_step_r1cs_pk
 
r1cs_ppzksnark< A_pp >::verification_key_type compliance_step_r1cs_vk
 
r1cs_ppzksnark< B_pp >::proving_key_type translation_step_r1cs_pk
 
r1cs_ppzksnark< B_pp >::verification_key_type translation_step_r1cs_vk
 

Detailed Description

template<typename PCD_ppT>
class nil::crypto3::zk::snark::r1cs_sp_ppzkpcd_proving_key< PCD_ppT >

A proving key for the R1CS (single-predicate) ppzkPCD.

Member Typedef Documentation

◆ A_pp

template<typename PCD_ppT >
typedef PCD_ppT::curve_A_pp nil::crypto3::zk::snark::r1cs_sp_ppzkpcd_proving_key< PCD_ppT >::A_pp

◆ B_pp

template<typename PCD_ppT >
typedef PCD_ppT::curve_B_pp nil::crypto3::zk::snark::r1cs_sp_ppzkpcd_proving_key< PCD_ppT >::B_pp

Constructor & Destructor Documentation

◆ r1cs_sp_ppzkpcd_proving_key() [1/4]

template<typename PCD_ppT >
nil::crypto3::zk::snark::r1cs_sp_ppzkpcd_proving_key< PCD_ppT >::r1cs_sp_ppzkpcd_proving_key ( )
inline

◆ r1cs_sp_ppzkpcd_proving_key() [2/4]

template<typename PCD_ppT >
nil::crypto3::zk::snark::r1cs_sp_ppzkpcd_proving_key< PCD_ppT >::r1cs_sp_ppzkpcd_proving_key ( const r1cs_sp_ppzkpcd_proving_key< PCD_ppT > &  other)
default

◆ r1cs_sp_ppzkpcd_proving_key() [3/4]

template<typename PCD_ppT >
nil::crypto3::zk::snark::r1cs_sp_ppzkpcd_proving_key< PCD_ppT >::r1cs_sp_ppzkpcd_proving_key ( r1cs_sp_ppzkpcd_proving_key< PCD_ppT > &&  other)
default

◆ r1cs_sp_ppzkpcd_proving_key() [4/4]

template<typename PCD_ppT >
nil::crypto3::zk::snark::r1cs_sp_ppzkpcd_proving_key< PCD_ppT >::r1cs_sp_ppzkpcd_proving_key ( const r1cs_sp_ppzkpcd_compliance_predicate< PCD_ppT > &  compliance_predicate,
typename r1cs_ppzksnark< A_pp >::proving_key_type &&  compliance_step_r1cs_pk,
typename r1cs_ppzksnark< B_pp >::proving_key &_type &  translation_step_r1cs_pk,
const typename r1cs_ppzksnark< A_pp >::verification_key_type &  compliance_step_r1cs_vk,
const typename r1cs_ppzksnark< B_pp >::verification_key_type &  translation_step_r1cs_vk 
)
inline

Member Function Documentation

◆ operator=()

template<typename PCD_ppT >
r1cs_sp_ppzkpcd_proving_key<PCD_ppT>& nil::crypto3::zk::snark::r1cs_sp_ppzkpcd_proving_key< PCD_ppT >::operator= ( const r1cs_sp_ppzkpcd_proving_key< PCD_ppT > &  other)
default

◆ operator==()

template<typename PCD_ppT >
bool nil::crypto3::zk::snark::r1cs_sp_ppzkpcd_proving_key< PCD_ppT >::operator== ( const r1cs_sp_ppzkpcd_proving_key< PCD_ppT > &  other) const

◆ size_in_bits()

template<typename PCD_ppT >
std::size_t nil::crypto3::zk::snark::r1cs_sp_ppzkpcd_proving_key< PCD_ppT >::size_in_bits ( ) const
inline

Member Data Documentation

◆ compliance_predicate

template<typename PCD_ppT >
r1cs_sp_ppzkpcd_compliance_predicate<PCD_ppT> nil::crypto3::zk::snark::r1cs_sp_ppzkpcd_proving_key< PCD_ppT >::compliance_predicate

◆ compliance_step_r1cs_pk

template<typename PCD_ppT >
r1cs_ppzksnark<A_pp>::proving_key_type nil::crypto3::zk::snark::r1cs_sp_ppzkpcd_proving_key< PCD_ppT >::compliance_step_r1cs_pk

◆ compliance_step_r1cs_vk

template<typename PCD_ppT >
r1cs_ppzksnark<A_pp>::verification_key_type nil::crypto3::zk::snark::r1cs_sp_ppzkpcd_proving_key< PCD_ppT >::compliance_step_r1cs_vk

◆ translation_step_r1cs_pk

template<typename PCD_ppT >
r1cs_ppzksnark<B_pp>::proving_key_type nil::crypto3::zk::snark::r1cs_sp_ppzkpcd_proving_key< PCD_ppT >::translation_step_r1cs_pk

◆ translation_step_r1cs_vk

template<typename PCD_ppT >
r1cs_ppzksnark<B_pp>::verification_key_type nil::crypto3::zk::snark::r1cs_sp_ppzkpcd_proving_key< PCD_ppT >::translation_step_r1cs_vk

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