|
Clearmatics Libsnark
0.1
C++ library for zkSNARK proofs
|
#include <variable.hpp>

Public Member Functions | |
| linear_combination () | |
| linear_combination (const integer_coeff_t int_coeff) | |
| linear_combination (const FieldT &field_coeff) | |
| linear_combination (const variable< FieldT > &var) | |
| linear_combination (const linear_term< FieldT > <) | |
| linear_combination (const std::vector< linear_term< FieldT >> &all_terms) | |
| std::vector< linear_term< FieldT > >::const_iterator | begin () const |
| std::vector< linear_term< FieldT > >::const_iterator | end () const |
| void | add_term (const variable< FieldT > &var) |
| void | add_term (const variable< FieldT > &var, const integer_coeff_t int_coeff) |
| void | add_term (const variable< FieldT > &var, const FieldT &field_coeff) |
| void | add_term (const linear_term< FieldT > <) |
| FieldT | evaluate (const std::vector< FieldT > &assignment) const |
| linear_combination< FieldT > | operator* (const integer_coeff_t int_coeff) const |
| linear_combination< FieldT > | operator* (const FieldT &field_coeff) const |
| linear_combination< FieldT > | operator+ (const linear_combination< FieldT > &other) const |
| linear_combination< FieldT > | operator- (const linear_combination< FieldT > &other) const |
| linear_combination< FieldT > | operator- () const |
| bool | operator== (const linear_combination< FieldT > &other) const |
| bool | is_valid (const size_t num_variables) const |
| void | print (const std::map< size_t, std::string > &variable_annotations=std::map< size_t, std::string >()) const |
| void | print_with_assignment (const std::vector< FieldT > &full_assignment, const std::map< size_t, std::string > &variable_annotations=std::map< size_t, std::string >()) const |
Public Attributes | |
| std::vector< linear_term< FieldT > > | terms |
Friends | |
| std::ostream & | operator (std::ostream &out, const linear_combination< FieldT > &lc) |
| std::istream & | operator>> (std::istream &in, linear_combination< FieldT > &lc) |
Forward declaration.
A linear combination represents a formal expression of the form "sum_i coeff_i * x_{index_i}".
Definition at line 40 of file variable.hpp.
|
inline |
Definition at line 164 of file variable.hpp.
| libsnark::linear_combination< FieldT >::linear_combination | ( | const integer_coeff_t | int_coeff | ) |
| libsnark::linear_combination< FieldT >::linear_combination | ( | const FieldT & | field_coeff | ) |
| libsnark::linear_combination< FieldT >::linear_combination | ( | const variable< FieldT > & | var | ) |
| libsnark::linear_combination< FieldT >::linear_combination | ( | const linear_term< FieldT > & | lt | ) |
| libsnark::linear_combination< FieldT >::linear_combination | ( | const std::vector< linear_term< FieldT >> & | all_terms | ) |
| void libsnark::linear_combination< FieldT >::add_term | ( | const linear_term< FieldT > & | lt | ) |
| void libsnark::linear_combination< FieldT >::add_term | ( | const variable< FieldT > & | var | ) |
| void libsnark::linear_combination< FieldT >::add_term | ( | const variable< FieldT > & | var, |
| const FieldT & | field_coeff | ||
| ) |
| void libsnark::linear_combination< FieldT >::add_term | ( | const variable< FieldT > & | var, |
| const integer_coeff_t | int_coeff | ||
| ) |
| std::vector<linear_term<FieldT> >::const_iterator libsnark::linear_combination< FieldT >::begin | ( | ) | const |
| std::vector<linear_term<FieldT> >::const_iterator libsnark::linear_combination< FieldT >::end | ( | ) | const |
| FieldT libsnark::linear_combination< FieldT >::evaluate | ( | const std::vector< FieldT > & | assignment | ) | const |
| bool libsnark::linear_combination< FieldT >::is_valid | ( | const size_t | num_variables | ) | const |
| linear_combination<FieldT> libsnark::linear_combination< FieldT >::operator* | ( | const FieldT & | field_coeff | ) | const |
| linear_combination<FieldT> libsnark::linear_combination< FieldT >::operator* | ( | const integer_coeff_t | int_coeff | ) | const |
| linear_combination<FieldT> libsnark::linear_combination< FieldT >::operator+ | ( | const linear_combination< FieldT > & | other | ) | const |
| linear_combination<FieldT> libsnark::linear_combination< FieldT >::operator- | ( | ) | const |
| linear_combination<FieldT> libsnark::linear_combination< FieldT >::operator- | ( | const linear_combination< FieldT > & | other | ) | const |
| bool libsnark::linear_combination< FieldT >::operator== | ( | const linear_combination< FieldT > & | other | ) | const |
| void libsnark::linear_combination< FieldT >::print | ( | const std::map< size_t, std::string > & | variable_annotations = std::map< size_t, std::string >() | ) | const |
| void libsnark::linear_combination< FieldT >::print_with_assignment | ( | const std::vector< FieldT > & | full_assignment, |
| const std::map< size_t, std::string > & | variable_annotations = std::map< size_t, std::string >() |
||
| ) | const |
|
friend |
|
friend |
| std::vector<linear_term<FieldT> > libsnark::linear_combination< FieldT >::terms |
Definition at line 162 of file variable.hpp.
1.8.17