nil::crypto3::zk::snark::r1cs_sp_ppzkpcd_processed_verification_key< PCD_ppT > Class Template Reference
#include <r1cs_sp_ppzkpcd.hpp>
Collaboration diagram for nil::crypto3::zk::snark::r1cs_sp_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_sp_ppzkpcd_processed_verification_key< PCD_ppT > & | operator= (const r1cs_sp_ppzkpcd_processed_verification_key< PCD_ppT > &other)=default |
bool | operator== (const r1cs_sp_ppzkpcd_processed_verification_key< PCD_ppT > &other) const |
r1cs_sp_ppzkpcd_processed_verification_key () | |
r1cs_sp_ppzkpcd_processed_verification_key (const r1cs_sp_ppzkpcd_processed_verification_key< PCD_ppT > &other)=default | |
r1cs_sp_ppzkpcd_processed_verification_key (r1cs_sp_ppzkpcd_processed_verification_key< PCD_ppT > &&other)=default | |
r1cs_sp_ppzkpcd_processed_verification_key (typename r1cs_ppzksnark< A_pp >::processed_verification_key_type &&compliance_step_r1cs_pvk, typename r1cs_ppzksnark< B_pp >::processed_verification_key_type &&translation_step_r1cs_pvk, const std::vector< bool > &translation_step_r1cs_vk_bits) | |
std::size_t | size_in_bits () const |
Public Attributes | |
r1cs_ppzksnark< A_pp >::processed_verification_key_type | compliance_step_r1cs_pvk |
r1cs_ppzksnark< B_pp >::processed_verification_key_type | translation_step_r1cs_pvk |
std::vector< bool > | translation_step_r1cs_vk_bits |
Detailed Description
template<typename PCD_ppT>
class nil::crypto3::zk::snark::r1cs_sp_ppzkpcd_processed_verification_key< PCD_ppT >
A processed verification key for the R1CS (single-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_sp_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_sp_ppzkpcd_processed_verification_key< PCD_ppT >::B_pp |
Constructor & Destructor Documentation
◆ r1cs_sp_ppzkpcd_processed_verification_key() [1/4]
template<typename PCD_ppT >
|
inline |
◆ r1cs_sp_ppzkpcd_processed_verification_key() [2/4]
template<typename PCD_ppT >
|
default |
◆ r1cs_sp_ppzkpcd_processed_verification_key() [3/4]
template<typename PCD_ppT >
|
default |
◆ r1cs_sp_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_sp_ppzkpcd_processed_verification_key< PCD_ppT >::operator== | ( | const r1cs_sp_ppzkpcd_processed_verification_key< PCD_ppT > & | other | ) | const |
◆ size_in_bits()
template<typename PCD_ppT >
|
inline |
Member Data Documentation
◆ compliance_step_r1cs_pvk
template<typename PCD_ppT >
r1cs_ppzksnark<A_pp>::processed_verification_key_type nil::crypto3::zk::snark::r1cs_sp_ppzkpcd_processed_verification_key< PCD_ppT >::compliance_step_r1cs_pvk |
◆ translation_step_r1cs_pvk
template<typename PCD_ppT >
r1cs_ppzksnark<B_pp>::processed_verification_key_type nil::crypto3::zk::snark::r1cs_sp_ppzkpcd_processed_verification_key< PCD_ppT >::translation_step_r1cs_pvk |
◆ translation_step_r1cs_vk_bits
template<typename PCD_ppT >
std::vector<bool> nil::crypto3::zk::snark::r1cs_sp_ppzkpcd_processed_verification_key< PCD_ppT >::translation_step_r1cs_vk_bits |
The documentation for this class was generated from the following file: