variable.hpp
Go to the documentation of this file.
104 linear_term<FieldType> operator*(const integer_coeff_t int_coeff, const variable<FieldType> &var) {
152 linear_term(const variable<field_type> &var) : index(var.index), coeff(field_value_type::one()) {
vector(T, U...) -> vector< std::enable_if_t<(std::is_same_v< T, U > &&...), T >, 1+sizeof...(U)>
deduction guide for uniform initialization
linear_term< FieldType > operator*(const integer_coeff_t int_coeff, const variable< FieldType > &var)
Definition: variable.hpp:104
linear_combination< FieldType > operator+(const integer_coeff_t int_coeff, const variable< FieldType > &var)
Definition: variable.hpp:115
linear_combination< FieldType > operator-(const integer_coeff_t int_coeff, const variable< FieldType > &var)
Definition: variable.hpp:127
Definition: pair.hpp:31
Definition: variable.hpp:229
linear_combination()
Definition: variable.hpp:235
std::vector< linear_term< FieldType > > terms
Definition: variable.hpp:233
std::vector< linear_term< FieldType > >::const_iterator end() const
Definition: variable.hpp:273
linear_combination(const integer_coeff_t int_coeff)
Definition: variable.hpp:236
void add_term(const linear_term< FieldType > <)
Definition: variable.hpp:286
field_value_type evaluate(const std::vector< field_value_type > &assignment) const
Definition: variable.hpp:290
bool is_valid(size_t num_variables) const
Definition: variable.hpp:362
FieldType field_type
Definition: variable.hpp:230
linear_combination operator-(const linear_combination &other) const
Definition: variable.hpp:342
linear_combination(const linear_term< FieldType > <)
Definition: variable.hpp:245
void add_term(const variable< FieldType > &var, integer_coeff_t int_coeff)
Definition: variable.hpp:280
bool operator==(const linear_combination &other) const
Definition: variable.hpp:349
void add_term(const variable< FieldType > &var, const field_value_type &field_coeff)
Definition: variable.hpp:283
void add_term(const variable< FieldType > &var)
Definition: variable.hpp:277
field_type::value_type field_value_type
Definition: variable.hpp:231
linear_combination operator*(integer_coeff_t int_coeff) const
Definition: variable.hpp:298
linear_combination operator+(const linear_combination &other) const
Definition: variable.hpp:309
linear_combination(const variable< FieldType > &var)
Definition: variable.hpp:242
linear_combination operator-() const
Definition: variable.hpp:345
linear_combination(const std::vector< linear_term< FieldType >> &all_terms)
Definition: variable.hpp:248
linear_combination operator*(const field_value_type &field_coeff) const
Definition: variable.hpp:301
linear_combination(const field_value_type &field_coeff)
Definition: variable.hpp:239
std::vector< linear_term< FieldType > >::const_iterator begin() const
Definition: variable.hpp:269
Definition: variable.hpp:144
bool operator==(const linear_term< field_type > &other) const
Definition: variable.hpp:183
linear_term< field_type > operator-() const
Definition: variable.hpp:179
linear_combination< field_type > operator-(const linear_combination< field_type > &other) const
Definition: variable.hpp:175
linear_term(const variable< field_type > &var, const field_value_type &field_coeff)
Definition: variable.hpp:159
linear_term(const variable< field_type > &var)
Definition: variable.hpp:152
variable< FieldType >::index_type index
Definition: variable.hpp:148
linear_term(const variable< field_type > &var, const integer_coeff_t int_coeff)
Definition: variable.hpp:155
field_type::value_type field_value_type
Definition: variable.hpp:146
linear_term< field_type > operator*(const field_value_type &field_coeff) const
Definition: variable.hpp:167
linear_term< field_type > operator*(const integer_coeff_t int_coeff) const
Definition: variable.hpp:163
linear_combination< field_type > operator+(const linear_combination< field_type > &other) const
Definition: variable.hpp:171
Definition: variable.hpp:66
linear_combination< FieldType > operator+(const linear_combination< FieldType > &other) const
Definition: variable.hpp:81
variable(const index_type index=0)
Definition: variable.hpp:71
linear_term< FieldType > operator*(const integer_coeff_t int_coeff) const
Definition: variable.hpp:73
bool operator==(const variable< FieldType > &other) const
Definition: variable.hpp:98
linear_term< FieldType > operator*(const typename FieldType::value_type &field_coeff) const
Definition: variable.hpp:77
linear_combination< FieldType > operator-(const linear_combination< FieldType > &other) const
Definition: variable.hpp:90
linear_term< FieldType > operator-() const
Definition: variable.hpp:94