|
carl
25.04
Computer ARithmetic Library
|
Namespaces | |
| detail | |
Data Structures | |
| class | Term |
| struct | zero |
| A square root expression with side conditions. More... | |
Typedefs | |
| template<typename Poly > | |
| using | ConstraintConjunction = std::vector< Constraint< Poly > > |
| a vector of constraints More... | |
| template<typename Poly > | |
| using | CaseDistinction = std::vector< ConstraintConjunction< Poly > > |
| a vector of vectors of constraints More... | |
Enumerations | |
| enum class | TermType { NORMAL , PLUS_EPSILON , MINUS_INFINITY , PLUS_INFINITY } |
Functions | |
| template<typename Poly > | |
| bool | simplify_inplace (CaseDistinction< Poly > &cases) |
| Simplifies the case distinction in place. More... | |
| template<typename Poly > | |
| std::optional< CaseDistinction< Poly > > | substitute (const Constraint< Poly > &cons, const Variable var, const Term< Poly > &term) |
| Applies a substitution to a constraint. More... | |
| template<typename Poly > | |
| static std::optional< std::variant< CaseDistinction< Poly >, VariableComparison< Poly > > > | substitute (const VariableComparison< Poly > &varcomp, const Variable var, const Term< Poly > &term) |
| Applies a substitution to a variable comparison. More... | |
| template<class Poly > | |
| std::ostream & | operator<< (std::ostream &os, const Term< Poly > &s) |
| template<typename Poly > | |
| std::ostream & | operator<< (std::ostream &out, const zero< Poly > &z) |
| template<typename Poly > | |
| static bool | gather_zeros (const Constraint< Poly > &constraint, const Variable &eliminationVar, std::vector< zero< Poly >> &results) |
| Gathers zeros with side conditions from the given constraint in the given variable. More... | |
| template<typename Poly > | |
| static bool | gather_zeros (const VariableComparison< Poly > &varcomp, const Variable &eliminationVar, std::vector< zero< Poly >> &results) |
| using carl::vs::CaseDistinction = typedef std::vector<ConstraintConjunction<Poly> > |
a vector of vectors of constraints
Definition at line 29 of file substitute.h.
| using carl::vs::ConstraintConjunction = typedef std::vector<Constraint<Poly> > |
a vector of constraints
Definition at line 26 of file substitute.h.
|
strong |
|
static |
|
static |
| std::ostream& carl::vs::operator<< | ( | std::ostream & | os, |
| const Term< Poly > & | s | ||
| ) |
| std::ostream& carl::vs::operator<< | ( | std::ostream & | out, |
| const zero< Poly > & | z | ||
| ) |
|
inline |
Simplifies the case distinction in place.
| Poly | Polynomial type. |
| cases | Case distiction to simplify. |
Definition at line 360 of file substitute.h.


|
inline |
Applies a substitution to a constraint.
| cons | The constraint to substitute in. |
| subs | The substitution to apply. |
Definition at line 375 of file substitute.h.


|
static |
Applies a substitution to a variable comparison.
| varcomp | The variable comparison to substitute in. |
| subs | The substitution to apply. |
Definition at line 401 of file substitute.h.
