36 #ifndef __GECODE_INT_ARITHMETIC_HH__ 37 #define __GECODE_INT_ARITHMETIC_HH__ 50 namespace Gecode {
namespace Int {
namespace Arithmetic {
122 namespace Gecode {
namespace Int {
namespace Arithmetic {
248 namespace Gecode {
namespace Int {
namespace Arithmetic {
259 template<
class VA,
class VB,
bool tiebreak>
294 namespace Gecode {
namespace Int {
namespace Arithmetic {
305 bool even(
void)
const;
311 template<
class IntType>
314 int tpow(
int x)
const;
332 static bool even(
int m);
334 bool powgr(
long long int r,
int x)
const;
336 bool powle(
long long int r,
int x)
const;
341 bool even(
void)
const;
347 template<
class IntType>
350 int tpow(
int x)
const;
361 namespace Gecode {
namespace Int {
namespace Arithmetic {
368 template<
class VA,
class VB,
class Ops>
419 template<
class VA,
class VB,
class Ops>
485 namespace Gecode {
namespace Int {
namespace Arithmetic {
493 template<
class Ops,
bool minus>
545 template<
class Ops,
bool minus>
611 namespace Gecode {
namespace Int {
namespace Arithmetic {
619 template<
class View, PropCond pc>
647 template<
class VA,
class VB,
class VC>
702 template<
class VA,
class VB,
class VC>
769 namespace Gecode {
namespace Int {
namespace Arithmetic {
776 template<
class VA,
class VB,
class VC>
Bounds consistent positive division propagator.
Integer division/modulo propagator.
Domain consistent ternary maximum propagator.
Domain consistent n-th root propagator.
Positive bounds consistent n-th root propagator.
Domain consistent n-ary maximum propagator.
void pow(Home home, FloatVar x0, int n, FloatVar x1)
Post propagator for for $n 0$.
bool powle(int n, long long int r, int x)
virtual PropCost cost(const Space &home, const ModEventDelta &med) const
Cost function.
bool equal(I &i, J &j)
Check whether range iterators i and j are equal.
Base-class for propagators.
Bounds consistent power propagator.
virtual size_t dispose(Space &home)
Delete propagator and return its size.
VB y
Position of maximum view (maximal argument)
virtual Actor * copy(Space &home)
Copy propagator during cloning.
AbsBnd(Space &home, AbsBnd &p)
Constructor for cloning p.
Base-class for both propagators and branchers.
Bounds consistent absolute value propagator.
int p
Number of positive literals for node type.
int n
Number of negative literals for node type.
Domain consistent n-th root propagator.
Domain consistent absolute value propagator.
Domain consistent positive multiplication propagator.
RelTest
Result of testing relation.
Mixed ternary propagator.
ModEventDelta med
A set of modification events (used during propagation)
virtual ExecStatus propagate(Space &home, const ModEventDelta &med)
Perform propagation.
Bounds consistent positive power propagator.
Operations for square and square-root propagators.
Bounds consistent n-ary maximum propagator.
int n
The exponent and root index.
Argument maximum propagator.
Bounds consistent division propagator.
bool powgr(int n, long long int r, int x)
Domain consistent power propagator.
Post propagator for SetVar SetOpType SetVar SetRelType r
Domain consistent positive power propagator.
Integer view for integer variables.
Post propagator for SetVar SetOpType SetVar y
Bounds consistent multiplication propagator.
virtual void reschedule(Space &home)
Schedule function.
Operations for power and nroot propagators.
Bounds consistent ternary maximum propagator.
IdxViewArray< VA > x
Map of index and views.
Post propagator for SetVar x
Gecode toplevel namespace
Bounds or domain consistent propagator for .
Domain consistent multiplication propagator.
IntType
Description of integer types.
#define GECODE_INT_EXPORT
void exp(Home home, FloatVar x0, FloatVar x1)
Post propagator for .
int ModEventDelta
Modification event deltas.
Home class for posting propagators
Bounds consistent n-th root propagator.
Bounds consistent positive multiplication propagator.
static ExecStatus post(Home home, View x0, View x1)
Post bounds consistent propagator .