nil::crypto3::zk::snark::r1cs_mp_ppzkpcd_processed_verification_key< PCD_ppT > Class Template Reference
#include <r1cs_mp_ppzkpcd.hpp>
Collaboration diagram for nil::crypto3::zk::snark::r1cs_mp_ppzkpcd_processed_verification_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_mp_ppzkpcd_processed_verification_key< PCD_ppT > & | operator= (const r1cs_mp_ppzkpcd_processed_verification_key< PCD_ppT > &other)=default |
bool | operator== (const r1cs_mp_ppzkpcd_processed_verification_key< PCD_ppT > &other) const |
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< typename r1cs_ppzksnark< A_pp >::processed_verification_key_type > &&compliance_step_r1cs_pvks, std::vector< typename r1cs_ppzksnark< B_pp >::processed_verification_key_type > &&translation_step_r1cs_pvks, const set_commitment &commitment_to_translation_step_r1cs_vks) | |
std::size_t | size_in_bits () const |
Public Attributes | |
set_commitment | commitment_to_translation_step_r1cs_vks |
std::vector< typename r1cs_ppzksnark< A_pp >::processed_verification_key_type > | compliance_step_r1cs_pvks |
std::vector< typename r1cs_ppzksnark< B_pp >::processed_verification_key_type > | translation_step_r1cs_pvks |
Detailed Description
template<typename PCD_ppT>
class nil::crypto3::zk::snark::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.
Member Typedef Documentation
◆ A_pp
template<typename PCD_ppT >
typedef PCD_ppT::curve_A_pp nil::crypto3::zk::snark::r1cs_mp_ppzkpcd_processed_verification_key< PCD_ppT >::A_pp |
◆ B_pp
template<typename PCD_ppT >
typedef PCD_ppT::curve_B_pp nil::crypto3::zk::snark::r1cs_mp_ppzkpcd_processed_verification_key< PCD_ppT >::B_pp |
Constructor & Destructor Documentation
◆ r1cs_mp_ppzkpcd_processed_verification_key() [1/4]
template<typename PCD_ppT >
|
default |
◆ r1cs_mp_ppzkpcd_processed_verification_key() [2/4]
template<typename PCD_ppT >
|
default |
◆ r1cs_mp_ppzkpcd_processed_verification_key() [3/4]
template<typename PCD_ppT >
|
default |
◆ r1cs_mp_ppzkpcd_processed_verification_key() [4/4]
template<typename PCD_ppT >
|
inline |
Member Function Documentation
◆ operator=()
template<typename PCD_ppT >
|
default |
◆ operator==()
template<typename PCD_ppT >
bool nil::crypto3::zk::snark::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 >
std::size_t nil::crypto3::zk::snark::r1cs_mp_ppzkpcd_processed_verification_key< PCD_ppT >::size_in_bits |
Member Data Documentation
◆ commitment_to_translation_step_r1cs_vks
template<typename PCD_ppT >
set_commitment nil::crypto3::zk::snark::r1cs_mp_ppzkpcd_processed_verification_key< PCD_ppT >::commitment_to_translation_step_r1cs_vks |
◆ compliance_step_r1cs_pvks
template<typename PCD_ppT >
std::vector<typename r1cs_ppzksnark<A_pp>::processed_verification_key_type> nil::crypto3::zk::snark::r1cs_mp_ppzkpcd_processed_verification_key< PCD_ppT >::compliance_step_r1cs_pvks |
◆ translation_step_r1cs_pvks
template<typename PCD_ppT >
std::vector<typename r1cs_ppzksnark<B_pp>::processed_verification_key_type> nil::crypto3::zk::snark::r1cs_mp_ppzkpcd_processed_verification_key< PCD_ppT >::translation_step_r1cs_pvks |
The documentation for this class was generated from the following file: