Clearmatics Libsnark  0.1
C++ library for zkSNARK proofs
Public Member Functions | Public Attributes | List of all members
libsnark::linear_term< FieldT > Class Template Reference

#include <variable.hpp>

Public Member Functions

 linear_term ()
 
 linear_term (const variable< FieldT > &var)
 
 linear_term (const variable< FieldT > &var, const integer_coeff_t int_coeff)
 
 linear_term (const variable< FieldT > &var, const FieldT &field_coeff)
 
linear_term< FieldT > operator* (const integer_coeff_t int_coeff) const
 
linear_term< 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_term< FieldT > operator- () const
 
bool operator== (const linear_term< FieldT > &other) const
 

Public Attributes

var_index_t index
 
FieldT coeff
 

Detailed Description

template<typename FieldT>
class libsnark::linear_term< FieldT >

Forward declaration.

A linear term represents a formal expression of the form "coeff * x_{index}".

Definition at line 35 of file variable.hpp.

Constructor & Destructor Documentation

◆ linear_term() [1/4]

template<typename FieldT >
libsnark::linear_term< FieldT >::linear_term ( )
inline

Definition at line 102 of file variable.hpp.

102 {};

◆ linear_term() [2/4]

template<typename FieldT >
libsnark::linear_term< FieldT >::linear_term ( const variable< FieldT > &  var)

◆ linear_term() [3/4]

template<typename FieldT >
libsnark::linear_term< FieldT >::linear_term ( const variable< FieldT > &  var,
const integer_coeff_t  int_coeff 
)

◆ linear_term() [4/4]

template<typename FieldT >
libsnark::linear_term< FieldT >::linear_term ( const variable< FieldT > &  var,
const FieldT &  field_coeff 
)

Member Function Documentation

◆ operator*() [1/2]

template<typename FieldT >
linear_term<FieldT> libsnark::linear_term< FieldT >::operator* ( const FieldT &  field_coeff) const

◆ operator*() [2/2]

template<typename FieldT >
linear_term<FieldT> libsnark::linear_term< FieldT >::operator* ( const integer_coeff_t  int_coeff) const

◆ operator+()

template<typename FieldT >
linear_combination<FieldT> libsnark::linear_term< FieldT >::operator+ ( const linear_combination< FieldT > &  other) const

◆ operator-() [1/2]

template<typename FieldT >
linear_term<FieldT> libsnark::linear_term< FieldT >::operator- ( ) const

◆ operator-() [2/2]

template<typename FieldT >
linear_combination<FieldT> libsnark::linear_term< FieldT >::operator- ( const linear_combination< FieldT > &  other) const

◆ operator==()

template<typename FieldT >
bool libsnark::linear_term< FieldT >::operator== ( const linear_term< FieldT > &  other) const

Member Data Documentation

◆ coeff

template<typename FieldT >
FieldT libsnark::linear_term< FieldT >::coeff

Definition at line 100 of file variable.hpp.

◆ index

template<typename FieldT >
var_index_t libsnark::linear_term< FieldT >::index

Definition at line 99 of file variable.hpp.


The documentation for this class was generated from the following file: