40 #ifndef __GECODE_INT_ARITHMETIC_HH__ 41 #define __GECODE_INT_ARITHMETIC_HH__ 54 namespace Gecode {
namespace Int {
namespace Arithmetic {
126 namespace Gecode {
namespace Int {
namespace Arithmetic {
252 namespace Gecode {
namespace Int {
namespace Arithmetic {
263 template<
class VA,
class VB,
bool tiebreak>
298 namespace Gecode {
namespace Int {
namespace Arithmetic {
309 bool even(
void)
const;
315 template<
class IntType>
318 int tpow(
int x)
const;
336 static bool even(
int m);
338 bool powgr(
long long int r,
int x)
const;
340 bool powle(
long long int r,
int x)
const;
345 bool even(
void)
const;
351 template<
class IntType>
354 int tpow(
int x)
const;
365 namespace Gecode {
namespace Int {
namespace Arithmetic {
372 template<
class VA,
class VB,
class Ops>
423 template<
class VA,
class VB,
class Ops>
489 namespace Gecode {
namespace Int {
namespace Arithmetic {
497 template<
class Ops,
bool minus>
549 template<
class Ops,
bool minus>
615 namespace Gecode {
namespace Int {
namespace Arithmetic {
623 template<
class View, PropCond pc>
651 template<
class VA,
class VB,
class VC>
706 template<
class VA,
class VB,
class VC>
773 namespace Gecode {
namespace Int {
namespace Arithmetic {
780 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)
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.
virtual Actor * copy(Space &home, bool share)
Copy propagator during cloning.
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.
AbsBnd(Space &home, bool share, AbsBnd &p)
Constructor for cloning p.
Bounds consistent positive multiplication propagator.
static ExecStatus post(Home home, View x0, View x1)
Post bounds consistent propagator .