nil::crypto3::zk::snark::r1cs_mp_ppzkpcd_proving_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 | |
bool | is_well_formed () const |
r1cs_mp_ppzkpcd_proving_key< PCD_ppT > & | operator= (const r1cs_mp_ppzkpcd_proving_key< PCD_ppT > &other)=default |
bool | operator== (const r1cs_mp_ppzkpcd_proving_key< PCD_ppT > &other) const |
r1cs_mp_ppzkpcd_proving_key () | |
r1cs_mp_ppzkpcd_proving_key (const r1cs_mp_ppzkpcd_proving_key< PCD_ppT > &other)=default | |
r1cs_mp_ppzkpcd_proving_key (const std::vector< r1cs_mp_ppzkpcd_compliance_predicate< PCD_ppT >> &compliance_predicates, const std::vector< typename r1cs_ppzksnark< A_pp >::proving_key_type > &compliance_step_r1cs_pk, const std::vector< typename r1cs_ppzksnark< B_pp >::proving_key_type > &translation_step_r1cs_pk, const std::vector< typename r1cs_ppzksnark< A_pp >::verification_key_type > &compliance_step_r1cs_vk, const std::vector< typename r1cs_ppzksnark< B_pp >::verification_key_type > &translation_step_r1cs_vk, const set_commitment &commitment_to_translation_step_r1cs_vks, const std::vector< set_membership_proof > &compliance_step_r1cs_vk_membership_proofs, const std::map< std::size_t, std::size_t > &compliance_predicate_name_to_idx) | |
r1cs_mp_ppzkpcd_proving_key (r1cs_mp_ppzkpcd_proving_key< PCD_ppT > &&other)=default | |
std::size_t | size_in_bits () const |
Public Attributes | |
set_commitment | commitment_to_translation_step_r1cs_vks |
std::map< std::size_t, std::size_t > | compliance_predicate_name_to_idx |
std::vector< r1cs_mp_ppzkpcd_compliance_predicate< PCD_ppT > > | compliance_predicates |
std::vector< typename r1cs_ppzksnark< A_pp >::proving_key_type > | compliance_step_r1cs_pks |
std::vector< set_membership_proof > | compliance_step_r1cs_vk_membership_proofs |
std::vector< typename r1cs_ppzksnark< A_pp >::verification_key_type > | compliance_step_r1cs_vks |
std::vector< typename r1cs_ppzksnark< B_pp >::proving_key_type > | translation_step_r1cs_pks |
std::vector< typename r1cs_ppzksnark< B_pp >::verification_key_type > | translation_step_r1cs_vks |
Detailed Description
template<typename PCD_ppT>
class nil::crypto3::zk::snark::r1cs_mp_ppzkpcd_proving_key< PCD_ppT >
A proving key for the R1CS (multi-predicate) ppzkPCD.
Member Typedef Documentation
◆ A_pp
template<typename PCD_ppT >
typedef PCD_ppT::curve_A_pp nil::crypto3::zk::snark::r1cs_mp_ppzkpcd_proving_key< PCD_ppT >::A_pp |
◆ B_pp
template<typename PCD_ppT >
typedef PCD_ppT::curve_B_pp nil::crypto3::zk::snark::r1cs_mp_ppzkpcd_proving_key< PCD_ppT >::B_pp |
Constructor & Destructor Documentation
◆ r1cs_mp_ppzkpcd_proving_key() [1/4]
template<typename PCD_ppT >
|
inline |
◆ r1cs_mp_ppzkpcd_proving_key() [2/4]
template<typename PCD_ppT >
|
default |
◆ r1cs_mp_ppzkpcd_proving_key() [3/4]
template<typename PCD_ppT >
|
default |
◆ r1cs_mp_ppzkpcd_proving_key() [4/4]
template<typename PCD_ppT >
|
inline |
Member Function Documentation
◆ is_well_formed()
template<typename PCD_ppT >
bool nil::crypto3::zk::snark::r1cs_mp_ppzkpcd_proving_key< PCD_ppT >::is_well_formed |
◆ operator=()
template<typename PCD_ppT >
|
default |
◆ operator==()
template<typename PCD_ppT >
bool nil::crypto3::zk::snark::r1cs_mp_ppzkpcd_proving_key< PCD_ppT >::operator== | ( | const r1cs_mp_ppzkpcd_proving_key< PCD_ppT > & | other | ) | const |
◆ size_in_bits()
template<typename PCD_ppT >
std::size_t nil::crypto3::zk::snark::r1cs_mp_ppzkpcd_proving_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_proving_key< PCD_ppT >::commitment_to_translation_step_r1cs_vks |
◆ compliance_predicate_name_to_idx
template<typename PCD_ppT >
std::map<std::size_t, std::size_t> nil::crypto3::zk::snark::r1cs_mp_ppzkpcd_proving_key< PCD_ppT >::compliance_predicate_name_to_idx |
◆ compliance_predicates
template<typename PCD_ppT >
std::vector<r1cs_mp_ppzkpcd_compliance_predicate<PCD_ppT> > nil::crypto3::zk::snark::r1cs_mp_ppzkpcd_proving_key< PCD_ppT >::compliance_predicates |
◆ compliance_step_r1cs_pks
template<typename PCD_ppT >
std::vector<typename r1cs_ppzksnark<A_pp>::proving_key_type> nil::crypto3::zk::snark::r1cs_mp_ppzkpcd_proving_key< PCD_ppT >::compliance_step_r1cs_pks |
◆ compliance_step_r1cs_vk_membership_proofs
template<typename PCD_ppT >
std::vector<set_membership_proof> nil::crypto3::zk::snark::r1cs_mp_ppzkpcd_proving_key< PCD_ppT >::compliance_step_r1cs_vk_membership_proofs |
◆ compliance_step_r1cs_vks
template<typename PCD_ppT >
std::vector<typename r1cs_ppzksnark<A_pp>::verification_key_type> nil::crypto3::zk::snark::r1cs_mp_ppzkpcd_proving_key< PCD_ppT >::compliance_step_r1cs_vks |
◆ translation_step_r1cs_pks
template<typename PCD_ppT >
std::vector<typename r1cs_ppzksnark<B_pp>::proving_key_type> nil::crypto3::zk::snark::r1cs_mp_ppzkpcd_proving_key< PCD_ppT >::translation_step_r1cs_pks |
◆ translation_step_r1cs_vks
template<typename PCD_ppT >
std::vector<typename r1cs_ppzksnark<B_pp>::verification_key_type> nil::crypto3::zk::snark::r1cs_mp_ppzkpcd_proving_key< PCD_ppT >::translation_step_r1cs_vks |
The documentation for this class was generated from the following file: