Clearmatics Libsnark
0.1
C++ library for zkSNARK proofs
|
Go to the documentation of this file.
25 #include <libfqfft/evaluation_domain/evaluation_domain.hpp>
54 size_t num_variables_;
59 std::shared_ptr<libfqfft::evaluation_domain<FieldT>>
domain;
66 const std::shared_ptr<libfqfft::evaluation_domain<FieldT>> &
domain,
75 const std::shared_ptr<libfqfft::evaluation_domain<FieldT>> &
domain,
110 size_t num_variables_;
115 std::shared_ptr<libfqfft::evaluation_domain<FieldT>>
domain;
119 std::vector<FieldT>
At;
120 std::vector<FieldT>
Bt;
121 std::vector<FieldT>
Ct;
122 std::vector<FieldT>
Ht;
127 const std::shared_ptr<libfqfft::evaluation_domain<FieldT>> &
domain,
132 const std::vector<FieldT> &
At,
133 const std::vector<FieldT> &
Bt,
134 const std::vector<FieldT> &
Ct,
135 const std::vector<FieldT> &
Ht,
138 const std::shared_ptr<libfqfft::evaluation_domain<FieldT>> &
domain,
143 std::vector<FieldT> &&
At,
144 std::vector<FieldT> &&
Bt,
145 std::vector<FieldT> &&
Ct,
146 std::vector<FieldT> &&
Ht,
170 size_t num_variables_;
size_t num_variables() const
qap_witness & operator=(const qap_witness< FieldT > &other)=default
qap_instance_evaluation & operator=(const qap_instance_evaluation< FieldT > &other)=default
std::shared_ptr< libfqfft::evaluation_domain< FieldT > > domain
size_t num_inputs() const
size_t num_inputs() const
std::vector< std::map< size_t, FieldT > > C_in_Lagrange_basis
bool is_satisfied(const qap_witness< FieldT > &witness) const
size_t num_inputs() const
qap_instance & operator=(const qap_instance< FieldT > &other)=default
qap_witness(const size_t num_variables, const size_t degree, const size_t num_inputs, const FieldT &d1, const FieldT &d2, const FieldT &d3, const std::vector< FieldT > &coefficients_for_ABCs, const std::vector< FieldT > &coefficients_for_H)
std::vector< FieldT > coefficients_for_ABCs
size_t num_variables() const
qap_instance(const std::shared_ptr< libfqfft::evaluation_domain< FieldT >> &domain, const size_t num_variables, const size_t degree, const size_t num_inputs, const std::vector< std::map< size_t, FieldT >> &A_in_Lagrange_basis, const std::vector< std::map< size_t, FieldT >> &B_in_Lagrange_basis, const std::vector< std::map< size_t, FieldT >> &C_in_Lagrange_basis)
std::shared_ptr< libfqfft::evaluation_domain< FieldT > > domain
std::vector< FieldT > coefficients_for_H
size_t num_variables() const
std::vector< std::map< size_t, FieldT > > A_in_Lagrange_basis
std::vector< std::map< size_t, FieldT > > B_in_Lagrange_basis
qap_instance_evaluation(const std::shared_ptr< libfqfft::evaluation_domain< FieldT >> &domain, const size_t num_variables, const size_t degree, const size_t num_inputs, const FieldT &t, const std::vector< FieldT > &At, const std::vector< FieldT > &Bt, const std::vector< FieldT > &Ct, const std::vector< FieldT > &Ht, const FieldT &Zt)
bool is_satisfied(const qap_witness< FieldT > &witness) const