SMT-RAT
24.02
Toolbox for Strategic and Parallel Satisfiability-Modulo-Theories Solving
|
A pool for polynomials. More...
#include <polynomials.h>
Data Structures | |
struct | Element |
struct | element_less |
Public Member Functions | |
PolyPool (const Polynomial::ContextType &context) | |
Constructs a polynomial pool with respect to a variable ordering. More... | |
const VariableOrdering & | var_order () const |
std::pair< PolyRef, bool > | insert (const Polynomial &poly) |
PolyRef | operator() (const Polynomial &poly) |
const Polynomial & | get (const PolyRef &ref) const |
const Polynomial & | operator() (const PolyRef &ref) const |
PolyConstraint | insert (const Constraint &constraint) |
PolyConstraint | operator() (const Constraint &constraint) |
const Constraint | get (const PolyConstraint &ref) const |
const Constraint | operator() (const PolyConstraint &ref) const |
bool | known (const Polynomial &poly) const |
void | clear_levels (size_t level) |
const Polynomial::ContextType & | context () const |
Private Types | |
typedef boost::intrusive::set< Element > | ElementSet |
Private Member Functions | |
PolyRef | negative_poly_ref () const |
PolyRef | zero_poly_ref () const |
PolyRef | positive_poly_ref () const |
Private Attributes | |
Polynomial::ContextType | m_context |
const VariableOrdering & | m_var_order |
std::vector< std::vector< std::unique_ptr< Element > > > | m_polys |
std::vector< ElementSet > | m_poly_ids |
Polynomial | negative_poly |
Polynomial | zero_poly |
Polynomial | positive_poly |
Friends | |
std::ostream & | operator<< (std::ostream &os, const PolyPool &data) |
A pool for polynomials.
The polynomials are stored in a table, that is, a list of lists of polynomials of a given level.
Definition at line 71 of file polynomials.h.
|
private |
Definition at line 89 of file polynomials.h.
|
inline |
Constructs a polynomial pool with respect to a variable ordering.
var_order | The variable ordering determining polynomial levels. |
Definition at line 110 of file polynomials.h.
|
inline |
Definition at line 194 of file polynomials.h.
|
inline |
|
inline |
|
inline |
Definition at line 153 of file polynomials.h.
|
inline |
|
inline |
Definition at line 119 of file polynomials.h.
|
inline |
Definition at line 187 of file polynomials.h.
|
inlineprivate |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlineprivate |
|
inline |
|
inlineprivate |
|
friend |
Definition at line 205 of file polynomials.h.
|
private |
Definition at line 91 of file polynomials.h.
|
private |
Definition at line 95 of file polynomials.h.
|
private |
Definition at line 94 of file polynomials.h.
|
private |
Definition at line 92 of file polynomials.h.
|
private |
Definition at line 100 of file polynomials.h.
|
private |
Definition at line 102 of file polynomials.h.
|
private |
Definition at line 101 of file polynomials.h.