SMT-RAT
24.02
Toolbox for Strategic and Parallel Satisfiability-Modulo-Theories Solving
|
#include <Variable.h>
Public Member Functions | |
Variable (size_t _position, const typename Poly::PolyType *_expression, ModuleInput::iterator _defaultBoundPosition, bool _isInteger, size_t _id) | |
Variable (typename std::list< std::list< std::pair< Variable< T1, T2 > *, T2 >>>::iterator _positionInNonActives, const typename Poly::PolyType *_expression, ModuleInput::iterator _defaultBoundPosition, bool _isInteger, size_t _id) | |
virtual | ~Variable () |
const Value< T1 > & | assignment () const |
Value< T1 > & | rAssignment () |
void | storeAssignment () |
const Value< T1 > & | lastConsistentAssignment () const |
void | setBasic (bool _basic) |
bool | isBasic () const |
bool | isOriginal () const |
bool | is_integer () const |
bool | hasBound () const |
bool | involvesEquation () const |
EntryID | startEntry () const |
EntryID & | rStartEntry () |
size_t | size () const |
size_t & | rSize () |
double | conflictActivity () const |
void | setSupremum (const Bound< T1, T2 > *_supremum) |
const Bound< T1, T2 > * | pSupremum () const |
const Bound< T1, T2 > & | supremum () const |
void | setInfimum (const Bound< T1, T2 > *_infimum) |
const Bound< T1, T2 > * | pInfimum () const |
const Bound< T1, T2 > & | infimum () const |
size_t | position () const |
size_t | id () const |
void | setPosition (size_t _position) |
bool | isConflicting () const |
std::list< std::list< std::pair< Variable< T1, T2 > *, T2 > > >::iterator | positionInNonActives () const |
void | setPositionInNonActives (typename std::list< std::list< std::pair< Variable< T1, T2 > *, T2 >>>::iterator _positionInNonActives) |
size_t | rLowerBoundsSize () |
size_t | rUpperBoundsSize () |
const Bound< T1, T2 >::BoundSet & | upperbounds () const |
const Bound< T1, T2 >::BoundSet & | lowerbounds () const |
Bound< T1, T2 >::BoundSet & | rUpperbounds () |
Bound< T1, T2 >::BoundSet & | rLowerbounds () |
size_t & | rPosition () |
const Poly::PolyType * | pExpression () const |
const Poly::PolyType & | expression () const |
const T2 & | factor () const |
T2 & | rFactor () |
unsigned | isSatisfiedBy (const RationalAssignment &_ass) const |
FormulaT | inConflictWith (const RationalAssignment &_ass) const |
void | updateConflictActivity () |
std::pair< const Bound< T1, T2 > *, bool > | addUpperBound (Value< T1 > *const _val, ModuleInput::iterator _position, const FormulaT &_constraint, bool _deduced=false) |
std::pair< const Bound< T1, T2 > *, bool > | addLowerBound (Value< T1 > *const _val, ModuleInput::iterator _position, const FormulaT &_constraint, bool _deduced=false) |
std::pair< const Bound< T1, T2 > *, bool > | addEqualBound (Value< T1 > *const _val, ModuleInput::iterator _position, const FormulaT &_constraint) |
void | removeBound (const Bound< T1, T2 > *_bound) |
bool | deactivateBound (const Bound< T1, T2 > *bound, ModuleInput::iterator _position) |
RationalInterval | getVariableBounds () const |
FormulasT | getDefiningOrigins () const |
bool | operator< (const Variable &_variable) const |
bool | operator> (const Variable &_variable) const |
bool | operator== (const Variable &_variable) const |
bool | operator!= (const Variable &_variable) const |
void | print (std::ostream &_out=std::cout) const |
void | printAllBounds (std::ostream &_out=std::cout, const std::string _init="") const |
Private Attributes | |
bool | mBasic |
bool | mOriginal |
bool | mInteger |
EntryID | mStartEntry |
size_t | mSize |
double | mConflictActivity |
size_t | mPosition |
std::list< std::list< std::pair< Variable< T1, T2 > *, T2 > > >::iterator | mPositionInNonActives |
size_t | mId |
Bound< T1, T2 >::BoundSet | mUpperbounds |
Bound< T1, T2 >::BoundSet | mLowerbounds |
const Bound< T1, T2 > * | mpSupremum |
const Bound< T1, T2 > * | mpInfimum |
const Poly::PolyType * | mExpression |
Value< T1 > | mAssignment |
Value< T1 > | mLastConsistentAssignment |
T2 | mFactor |
Definition at line 28 of file Variable.h.
smtrat::lra::Variable< T1, T2 >::Variable | ( | size_t | _position, |
const typename Poly::PolyType * | _expression, | ||
ModuleInput::iterator | _defaultBoundPosition, | ||
bool | _isInteger, | ||
size_t | _id | ||
) |
_position | |
_expression | |
_defaultBoundPosition | |
_isInteger | |
_id |
smtrat::lra::Variable< T1, T2 >::Variable | ( | typename std::list< std::list< std::pair< Variable< T1, T2 > *, T2 >>>::iterator | _positionInNonActives, |
const typename Poly::PolyType * | _expression, | ||
ModuleInput::iterator | _defaultBoundPosition, | ||
bool | _isInteger, | ||
size_t | _id | ||
) |
_positionInNonActives | |
_expression | |
_defaultBoundPosition | |
_isInteger | |
_id |
|
virtual |
std::pair<const Bound<T1, T2>*, bool> smtrat::lra::Variable< T1, T2 >::addEqualBound | ( | Value< T1 > *const | _val, |
ModuleInput::iterator | _position, | ||
const FormulaT & | _constraint | ||
) |
_val | |
_position | |
_constraint |
std::pair<const Bound<T1, T2>*, bool> smtrat::lra::Variable< T1, T2 >::addLowerBound | ( | Value< T1 > *const | _val, |
ModuleInput::iterator | _position, | ||
const FormulaT & | _constraint, | ||
bool | _deduced = false |
||
) |
_val | |
_position | |
_constraint | |
_deduced |
std::pair<const Bound<T1, T2>*, bool> smtrat::lra::Variable< T1, T2 >::addUpperBound | ( | Value< T1 > *const | _val, |
ModuleInput::iterator | _position, | ||
const FormulaT & | _constraint, | ||
bool | _deduced = false |
||
) |
_val | |
_position | |
_constraint | |
_deduced |
|
inline |
Definition at line 97 of file Variable.h.
|
inline |
Definition at line 210 of file Variable.h.
bool smtrat::lra::Variable< T1, T2 >::deactivateBound | ( | const Bound< T1, T2 > * | bound, |
ModuleInput::iterator | _position | ||
) |
bound | |
_position |
|
inline |
Definition at line 391 of file Variable.h.
|
inline |
FormulasT smtrat::lra::Variable< T1, T2 >::getDefiningOrigins | ( | ) | const |
RationalInterval smtrat::lra::Variable< T1, T2 >::getVariableBounds | ( | ) | const |
|
inline |
Definition at line 162 of file Variable.h.
|
inline |
|
inline |
_ass |
Definition at line 446 of file Variable.h.
|
inline |
Definition at line 274 of file Variable.h.
|
inline |
Definition at line 170 of file Variable.h.
|
inline |
Definition at line 154 of file Variable.h.
|
inline |
Definition at line 138 of file Variable.h.
|
inline |
Definition at line 301 of file Variable.h.
|
inline |
|
inline |
_ass |
Definition at line 419 of file Variable.h.
|
inline |
Definition at line 121 of file Variable.h.
|
inline |
Definition at line 351 of file Variable.h.
|
inline |
Definition at line 596 of file Variable.h.
|
inline |
_bound |
Definition at line 579 of file Variable.h.
|
inline |
|
inline |
Definition at line 586 of file Variable.h.
|
inline |
Definition at line 383 of file Variable.h.
|
inline |
Definition at line 265 of file Variable.h.
|
inline |
Definition at line 283 of file Variable.h.
|
inline |
void smtrat::lra::Variable< T1, T2 >::print | ( | std::ostream & | _out = std::cout | ) | const |
_out |
void smtrat::lra::Variable< T1, T2 >::printAllBounds | ( | std::ostream & | _out = std::cout , |
const std::string | _init = "" |
||
) | const |
_out | |
_init |
|
inline |
Definition at line 232 of file Variable.h.
|
inline |
Definition at line 105 of file Variable.h.
void smtrat::lra::Variable< T1, T2 >::removeBound | ( | const Bound< T1, T2 > * | _bound | ) |
_bound |
|
inline |
Definition at line 408 of file Variable.h.
|
inline |
Definition at line 367 of file Variable.h.
|
inline |
Definition at line 327 of file Variable.h.
|
inline |
Definition at line 375 of file Variable.h.
|
inline |
Definition at line 202 of file Variable.h.
|
inline |
Definition at line 186 of file Variable.h.
|
inline |
Definition at line 359 of file Variable.h.
|
inline |
Definition at line 335 of file Variable.h.
|
inline |
_basic |
Definition at line 130 of file Variable.h.
|
inline |
_infimum |
Definition at line 251 of file Variable.h.
|
inline |
_position |
Definition at line 296 of file Variable.h.
|
inline |
_positionInNonActives |
Definition at line 318 of file Variable.h.
|
inline |
_supremum |
Definition at line 219 of file Variable.h.
|
inline |
Definition at line 194 of file Variable.h.
|
inline |
Definition at line 178 of file Variable.h.
|
inline |
Definition at line 113 of file Variable.h.
|
inline |
Definition at line 241 of file Variable.h.
|
inline |
|
inline |
Definition at line 343 of file Variable.h.
|
private |
Definition at line 60 of file Variable.h.
|
private |
Definition at line 32 of file Variable.h.
|
private |
Definition at line 42 of file Variable.h.
|
private |
Definition at line 58 of file Variable.h.
|
private |
Definition at line 65 of file Variable.h.
|
private |
Definition at line 48 of file Variable.h.
|
private |
Definition at line 36 of file Variable.h.
|
private |
Definition at line 62 of file Variable.h.
|
private |
Definition at line 52 of file Variable.h.
|
private |
Definition at line 34 of file Variable.h.
|
private |
Definition at line 56 of file Variable.h.
|
private |
Definition at line 44 of file Variable.h.
|
private |
Definition at line 46 of file Variable.h.
|
private |
Definition at line 54 of file Variable.h.
|
private |
Definition at line 40 of file Variable.h.
|
private |
Definition at line 38 of file Variable.h.
|
private |
Definition at line 50 of file Variable.h.