Generated on Mon Aug 25 11:35:47 2008 for Gecode by doxygen 1.5.6

Arithmetic constraints
[Using finite domain integers]


Functions

void Gecode::min (Space *home, IntVar x0, IntVar x1, IntVar x2, IntConLevel icl=ICL_DEF, PropKind pk=PK_DEF)
 Post propagator for $ \min\{x_0,x_1\}=x_2$.
void Gecode::min (Space *home, const IntVarArgs &x, IntVar y, IntConLevel icl=ICL_DEF, PropKind pk=PK_DEF)
 Post propagator for $ \min x=y$.
void Gecode::max (Space *home, IntVar x0, IntVar x1, IntVar x2, IntConLevel icl=ICL_DEF, PropKind pk=PK_DEF)
 Post propagator for $ \max\{x_0,x_1\}=x_2$.
void Gecode::max (Space *home, const IntVarArgs &x, IntVar y, IntConLevel icl=ICL_DEF, PropKind pk=PK_DEF)
 Post propagator for $ \max x=y$.
void Gecode::abs (Space *home, IntVar x0, IntVar x1, IntConLevel icl=ICL_DEF, PropKind pk=PK_DEF)
 Post propagator for $ |x_0|=x_1$.
void Gecode::mult (Space *home, IntVar x0, IntVar x1, IntVar x2, IntConLevel icl=ICL_DEF, PropKind pk=PK_DEF)
 Post propagator for $x_0\cdot x_1=x_2$.
void Gecode::sqr (Space *home, IntVar x0, IntVar x1, IntConLevel icl=ICL_DEF, PropKind pk=PK_DEF)
 Post propagator for $x_0\cdot x_0=x_1$.
void Gecode::sqrt (Space *home, IntVar x0, IntVar x1, IntConLevel icl=ICL_DEF, PropKind pk=PK_DEF)
 Post propagator for $\lfloor\sqrt{x_0}\rfloor=x_1$.
void Gecode::divmod (Space *home, IntVar x0, IntVar x1, IntVar x2, IntVar x3, IntConLevel icl=ICL_DEF, PropKind pk=PK_DEF)
 Post propagator for $x_0\mathrm{div} x_1=x_2 \land x_0\mathrm{mod} x_1 = x_3$.
void Gecode::div (Space *home, IntVar x0, IntVar x1, IntVar x2, IntConLevel icl=ICL_DEF, PropKind pk=PK_DEF)
 Post propagator for $x_0\mathrm{div} x_1=x_2$.
void Gecode::mod (Space *home, IntVar x0, IntVar x1, IntVar x2, IntConLevel icl=ICL_DEF, PropKind pk=PK_DEF)
 Post propagator for $x_0\mathrm{mod} x_1=x_2$.


Function Documentation

void Gecode::min ( Space *  home,
IntVar  x0,
IntVar  x1,
IntVar  x2,
IntConLevel  icl = ICL_DEF,
PropKind  pk = PK_DEF 
)

Post propagator for $ \min\{x_0,x_1\}=x_2$.

Supports both bounds consistency (icl = ICL_BND, default) and domain consistency (icl = ICL_DOM).

Definition at line 82 of file arithmetic.cc.

void Gecode::min ( Space *  home,
const IntVarArgs &  x,
IntVar  y,
IntConLevel  icl = ICL_DEF,
PropKind  pk = PK_DEF 
)

Post propagator for $ \min x=y$.

Supports both bounds consistency (icl = ICL_BND, default) and domain consistency (icl = ICL_DOM).

If x is empty, an exception of type Int::TooFewArguments is thrown.

Definition at line 94 of file arithmetic.cc.

void Gecode::max ( Space *  home,
IntVar  x0,
IntVar  x1,
IntVar  x2,
IntConLevel  icl = ICL_DEF,
PropKind  pk = PK_DEF 
)

Post propagator for $ \max\{x_0,x_1\}=x_2$.

Supports both bounds consistency (icl = ICL_BND, default) and domain consistency (icl = ICL_DOM).

Definition at line 56 of file arithmetic.cc.

void Gecode::max ( Space *  home,
const IntVarArgs &  x,
IntVar  y,
IntConLevel  icl = ICL_DEF,
PropKind  pk = PK_DEF 
)

Post propagator for $ \max x=y$.

Supports both bounds consistency (icl = ICL_BND, default) and domain consistency (icl = ICL_DOM).

If x is empty, an exception of type Int::TooFewArguments is thrown.

Definition at line 67 of file arithmetic.cc.

void Gecode::abs ( Space *  home,
IntVar  x0,
IntVar  x1,
IntConLevel  icl = ICL_DEF,
PropKind  pk = PK_DEF 
)

Post propagator for $ |x_0|=x_1$.

Supports both bounds consistency (icl = ICL_BND, default) and domain consistency (icl = ICL_DOM).

Definition at line 45 of file arithmetic.cc.

void Gecode::mult ( Space *  home,
IntVar  x0,
IntVar  x1,
IntVar  x2,
IntConLevel  icl = ICL_DEF,
PropKind  pk = PK_DEF 
)

Post propagator for $x_0\cdot x_1=x_2$.

Supports both bounds consistency (icl = ICL_BND, default) and domain consistency (icl = ICL_DOM).

Definition at line 112 of file arithmetic.cc.

void Gecode::sqr ( Space *  home,
IntVar  x0,
IntVar  x1,
IntConLevel  icl = ICL_DEF,
PropKind  pk = PK_DEF 
)

Post propagator for $x_0\cdot x_0=x_1$.

Supports both bounds consistency (icl = ICL_BND, default) and domain consistency (icl = ICL_DOM).

Definition at line 124 of file arithmetic.cc.

void Gecode::sqrt ( Space *  home,
IntVar  x0,
IntVar  x1,
IntConLevel  icl = ICL_DEF,
PropKind  pk = PK_DEF 
)

Post propagator for $\lfloor\sqrt{x_0}\rfloor=x_1$.

Supports both bounds consistency (icl = ICL_BND, default) and domain consistency (icl = ICL_DOM).

Definition at line 134 of file arithmetic.cc.

void Gecode::divmod ( Space *  home,
IntVar  x0,
IntVar  x1,
IntVar  x2,
IntVar  x3,
IntConLevel  icl = ICL_DEF,
PropKind  pk = PK_DEF 
)

Post propagator for $x_0\mathrm{div} x_1=x_2 \land x_0\mathrm{mod} x_1 = x_3$.

Supports bounds consistency (icl = ICL_BND, default).

Definition at line 144 of file arithmetic.cc.

void Gecode::div ( Space *  home,
IntVar  x0,
IntVar  x1,
IntVar  x2,
IntConLevel  icl = ICL_DEF,
PropKind  pk = PK_DEF 
)

Post propagator for $x_0\mathrm{div} x_1=x_2$.

Supports bounds consistency (icl = ICL_BND, default).

Definition at line 168 of file arithmetic.cc.

void Gecode::mod ( Space *  home,
IntVar  x0,
IntVar  x1,
IntVar  x2,
IntConLevel  icl = ICL_DEF,
PropKind  pk = PK_DEF 
)

Post propagator for $x_0\mathrm{mod} x_1=x_2$.

Supports bounds consistency (icl = ICL_BND, default).

Definition at line 176 of file arithmetic.cc.