Simple relation constraints over integer variables
[Using integer variables and constraints]
Functions | |
void | Gecode::rel (Home home, IntVar x0, IntRelType irt, IntVar x1, IntConLevel icl=ICL_DEF) |
Post propagator for . | |
void | Gecode::rel (Home home, const IntVarArgs &x, IntRelType irt, IntVar y, IntConLevel icl=ICL_DEF) |
Post propagator for for all . | |
void | Gecode::rel (Home home, IntVar x, IntRelType irt, int c, IntConLevel icl=ICL_DEF) |
Propagates . | |
void | Gecode::rel (Home home, const IntVarArgs &x, IntRelType irt, int c, IntConLevel icl=ICL_DEF) |
Propagates for all . | |
void | Gecode::rel (Home home, IntVar x0, IntRelType irt, IntVar x1, Reify r, IntConLevel icl=ICL_DEF) |
Post propagator for . | |
void | Gecode::rel (Home home, IntVar x, IntRelType irt, int c, Reify r, IntConLevel icl=ICL_DEF) |
Post propagator for . | |
void | Gecode::rel (Home home, const IntVarArgs &x, IntRelType irt, IntConLevel icl=ICL_DEF) |
Post propagator for relation among elements in x. | |
void | Gecode::rel (Home home, const IntVarArgs &x, IntRelType irt, const IntVarArgs &y, IntConLevel icl=ICL_DEF) |
Post propagator for relation between x and y. |
Function Documentation
void Gecode::rel | ( | Home | home, | |
IntVar | x0, | |||
IntRelType | irt, | |||
IntVar | x1, | |||
IntConLevel | icl = ICL_DEF | |||
) |
Post propagator for .
Supports both bounds (icl = ICL_BND) and domain consistency (icl = ICL_DOM, default).
void Gecode::rel | ( | Home | home, | |
const IntVarArgs & | x, | |||
IntRelType | irt, | |||
IntVar | y, | |||
IntConLevel | icl = ICL_DEF | |||
) |
Post propagator for for all .
Supports both bounds (icl = ICL_BND) and domain consistency (icl = ICL_DOM, default).
void Gecode::rel | ( | Home | home, | |
IntVar | x0, | |||
IntRelType | irt, | |||
int | n, | |||
IntConLevel | ||||
) |
Propagates .
void Gecode::rel | ( | Home | home, | |
const IntVarArgs & | x, | |||
IntRelType | irt, | |||
int | n, | |||
IntConLevel | ||||
) |
Propagates for all .
void Gecode::rel | ( | Home | home, | |
IntVar | x0, | |||
IntRelType | irt, | |||
IntVar | x1, | |||
Reify | r, | |||
IntConLevel | icl = ICL_DEF | |||
) |
Post propagator for .
Supports both bounds (icl = ICL_BND) and domain consistency (icl = ICL_DOM, default).
void Gecode::rel | ( | Home | home, | |
IntVar | x, | |||
IntRelType | irt, | |||
int | c, | |||
Reify | r, | |||
IntConLevel | icl = ICL_DEF | |||
) |
Post propagator for .
Supports both bounds (icl = ICL_BND) and domain consistency (icl = ICL_DOM, default).
void Gecode::rel | ( | Home | home, | |
const IntVarArgs & | x, | |||
IntRelType | irt, | |||
IntConLevel | icl = ICL_DEF | |||
) |
Post propagator for relation among elements in x.
States that the elements of x are in the following relation:
- if r = IRT_LE, r = IRT_LQ, r = IRT_GR, or r = IRT_GQ, then the elements of x are ordered with respect to r. Supports domain consistency (icl = ICL_DOM, default).
- if r = IRT_EQ, then all elements of x must be equal. Supports both bounds (icl = ICL_BND) and domain consistency (icl = ICL_DOM, default).
- if r = IRT_NQ, then not all elements of x must be equal. Supports domain consistency (icl = ICL_DOM, default).
void Gecode::rel | ( | Home | home, | |
const IntVarArgs & | x, | |||
IntRelType | irt, | |||
const IntVarArgs & | y, | |||
IntConLevel | icl = ICL_DEF | |||
) |
Post propagator for relation between x and y.
Note that for the inequality relations this corresponds to the lexical order between x and y.
Supports both bounds (icl = ICL_BND) and domain consistency (icl = ICL_DOM, default).
Note that the constraint is also defined if x and y are of different size. That means that if x and y are of different size, then if r = IRT_EQ the constraint is false and if r = IRT_NQ the constraint is subsumed.