Classes |
class | RangesMapPow |
| Mapping ranges to powers. More...
|
class | RangesMapNroot |
| Mapping integer to n-th root. More...
|
class | ValuesMapPow |
| Mapping integer to power. More...
|
class | ValuesMapNroot |
| Mapping integer (must be an n-th power) to n-th root. More...
|
class | ValuesMapNrootSigned |
| Mapping integer (must be an n-th power) to n-th root (signed). More...
|
class | AbsBnd |
| Bounds consistent absolute value propagator. More...
|
class | AbsDom |
| Domain consistent absolute value propagator. More...
|
class | MaxBnd |
| Bounds consistent ternary maximum propagator. More...
|
class | NaryMaxBnd |
| Bounds consistent n-ary maximum propagator. More...
|
class | MaxDom |
| Domain consistent ternary maximum propagator. More...
|
class | NaryMaxDom |
| Domain consistent n-ary maximum propagator. More...
|
class | ArgMax |
| Argument maximum propagator. More...
|
class | SqrOps |
| Operations for square and square-root propagators. More...
|
class | PowOps |
| Operations for power and nroot propagators. More...
|
class | PowPlusBnd |
| Bounds consistent positive power propagator. More...
|
class | PowBnd |
| Bounds consistent power propagator. More...
|
class | PowPlusDom |
| Domain consistent positive power propagator. More...
|
class | PowDom |
| Domain consistent power propagator. More...
|
class | NrootPlusBnd |
| Positive bounds consistent n-th root propagator. More...
|
class | NrootBnd |
| Bounds consistent n-th root propagator. More...
|
class | NrootPlusDom |
| Domain consistent n-th root propagator. More...
|
class | NrootDom |
| Domain consistent n-th root propagator. More...
|
class | MultZeroOne |
| Bounds or domain consistent propagator for . More...
|
class | MultPlusBnd |
| Bounds consistent positive multiplication propagator. More...
|
class | MultBnd |
| Bounds consistent multiplication propagator. More...
|
class | MultPlusDom |
| Domain consistent positive multiplication propagator. More...
|
class | MultDom |
| Domain consistent multiplication propagator. More...
|
class | DivPlusBnd |
| Bounds consistent positive division propagator. More...
|
class | DivBnd |
| Bounds consistent division propagator. More...
|
class | DivMod |
| Integer division/modulo propagator. More...
|
Enumerations |
enum | MaxPropStatus { MPS_ASSIGNED = 1<<0,
MPS_REMOVED = 1<<1,
MPS_NEW_BOUND = 1<<2
} |
| Status of propagation for nary max.
More...
|
Functions |
template<class View , template< class View0, class View1 > class Eq> |
ExecStatus | prop_abs_bnd (Space &home, Propagator &p, View x0, View x1) |
template<class View > |
ExecStatus | prop_max_bnd (Space &home, View x0, View x1, View x2) |
template<class View > |
ExecStatus | prop_nary_max_bnd (Space &home, Propagator &p, ViewArray< View > &x, View y, PropCond pc) |
long long int | mll (long long int x, long long int y) |
| Multiply x and .
|
long long int | ll (int x) |
| Cast x into a long long int.
|
long long int | ill (int x) |
| Increment x by one.
|
long long int | dll (int x) |
| Decrement x by one.
|
template<class View > |
bool | pos (const View &x) |
| Test whether x is postive.
|
template<class View > |
bool | neg (const View &x) |
| Test whether x is negative.
|
template<class View > |
bool | any (const View &x) |
| Test whether x is neither positive nor negative.
|
template<class VA , class VB , class VC > |
ExecStatus | prop_mult_plus_bnd (Space &home, Propagator &p, VA x0, VB x1, VC x2) |
template<class View > |
ExecStatus | prop_mult_dom (Space &home, Propagator &p, View x0, View x1, View x2) |
template<class Ops , bool minus> |
ExecStatus | prop_nroot_plus_bnd (Space &home, IntView x0, IntView x1, const Ops &ops) |
template<class Ops > |
ExecStatus | prop_nroot_bnd (Space &home, IntView x0, IntView x1, const Ops &ops) |
template<class VA , class VB , class Ops > |
ExecStatus | prop_pow_plus_bnd (Space &home, VA x0, VB x1, const Ops &ops) |
template<class Ops > |
ExecStatus | prop_pow_bnd (Space &home, IntView x0, IntView x1, const Ops &ops) |
Numerical (arithmetic) propagators.