nil::crypto3::zk::snark::qap_instance_evaluation< FieldType > Class Template Reference
#include <qap.hpp>
Collaboration diagram for nil::crypto3::zk::snark::qap_instance_evaluation< FieldType >:
Public Member Functions | |
bool | is_satisfied (const qap_witness< field_type > &witness) const |
qap_instance_evaluation & | operator= (const qap_instance_evaluation< field_type > &other)=default |
qap_instance_evaluation & | operator= (qap_instance_evaluation< field_type > &&other)=default |
qap_instance_evaluation (const qap_instance_evaluation< field_type > &other)=default | |
qap_instance_evaluation (const std::shared_ptr< evaluation_domain< field_type >> &domain, const std::size_t num_variables, const std::size_t degree, const std::size_t num_inputs, const field_value_type &t, const std::vector< field_value_type > &At, const std::vector< field_value_type > &Bt, const std::vector< field_value_type > &Ct, const std::vector< field_value_type > &Ht, const field_value_type &Zt) | |
qap_instance_evaluation (const std::shared_ptr< evaluation_domain< field_type >> &domain, const std::size_t num_variables, const std::size_t degree, const std::size_t num_inputs, const field_value_type &t, std::vector< field_value_type > &&At, std::vector< field_value_type > &&Bt, std::vector< field_value_type > &&Ct, std::vector< field_value_type > &&Ht, const field_value_type &Zt) | |
qap_instance_evaluation (qap_instance_evaluation< field_type > &&other)=default | |
Public Attributes | |
std::vector< field_value_type > | At |
std::vector< field_value_type > | Bt |
std::vector< field_value_type > | Ct |
std::size_t | degree |
std::shared_ptr< evaluation_domain< field_type > > | domain |
std::vector< field_value_type > | Ht |
std::size_t | num_inputs |
std::size_t | num_variables |
field_value_type | t |
field_value_type | Zt |
Detailed Description
template<typename FieldType>
class nil::crypto3::zk::snark::qap_instance_evaluation< FieldType >
A QAP instance evaluation is a QAP instance that is evaluated at a field element t.
Specifically, the datastructure stores:
- a choice of domain (corresponding to a certain subset of the field);
- the number of variables, the degree, and the number of inputs;
- a field element t;
- evaluations of the A,B,C (and Z) polynomials at t;
- evaluations of all monomials of t;
- counts about how many of the above evaluations are in fact non-zero.
Constructor & Destructor Documentation
◆ qap_instance_evaluation() [1/4]
template<typename FieldType >
|
inline |
◆ qap_instance_evaluation() [2/4]
template<typename FieldType >
|
inline |
◆ qap_instance_evaluation() [3/4]
template<typename FieldType >
|
default |
◆ qap_instance_evaluation() [4/4]
template<typename FieldType >
|
default |
Member Function Documentation
◆ is_satisfied()
template<typename FieldType >
|
inline |
◆ operator=() [1/2]
template<typename FieldType >
|
default |
◆ operator=() [2/2]
template<typename FieldType >
|
default |
Member Data Documentation
◆ At
template<typename FieldType >
std::vector<field_value_type> nil::crypto3::zk::snark::qap_instance_evaluation< FieldType >::At |
◆ Bt
template<typename FieldType >
std::vector<field_value_type> nil::crypto3::zk::snark::qap_instance_evaluation< FieldType >::Bt |
◆ Ct
template<typename FieldType >
std::vector<field_value_type> nil::crypto3::zk::snark::qap_instance_evaluation< FieldType >::Ct |
◆ degree
template<typename FieldType >
std::size_t nil::crypto3::zk::snark::qap_instance_evaluation< FieldType >::degree |
◆ domain
template<typename FieldType >
std::shared_ptr<evaluation_domain<field_type> > nil::crypto3::zk::snark::qap_instance_evaluation< FieldType >::domain |
◆ Ht
template<typename FieldType >
std::vector<field_value_type> nil::crypto3::zk::snark::qap_instance_evaluation< FieldType >::Ht |
◆ num_inputs
template<typename FieldType >
std::size_t nil::crypto3::zk::snark::qap_instance_evaluation< FieldType >::num_inputs |
◆ num_variables
template<typename FieldType >
std::size_t nil::crypto3::zk::snark::qap_instance_evaluation< FieldType >::num_variables |
◆ t
template<typename FieldType >
field_value_type nil::crypto3::zk::snark::qap_instance_evaluation< FieldType >::t |
◆ Zt
template<typename FieldType >
field_value_type nil::crypto3::zk::snark::qap_instance_evaluation< FieldType >::Zt |
The documentation for this class was generated from the following file: