Distinct constraints
[Using integer variables and constraints]
Functions | |
void | Gecode::distinct (Home home, const IntVarArgs &x, IntPropLevel ipl=IPL_DEF) |
Post propagator for for all . | |
void | Gecode::distinct (Home home, const IntArgs &n, const IntVarArgs &x, IntPropLevel ipl=IPL_DEF) |
Post propagator for for all . | |
void | Gecode::distinct (Home home, const BoolVarArgs &b, const IntVarArgs &x, IntPropLevel ipl=IPL_DEF) |
Post propagator for for all . | |
void | Gecode::distinct (Home home, const IntVarArgs &x, int c, IntPropLevel ipl=IPL_DEF) |
Post propagator for for all . |
Function Documentation
void Gecode::distinct | ( | Home | home, | |
const IntVarArgs & | x, | |||
IntPropLevel | ipl = IPL_DEF | |||
) |
Post propagator for for all .
Supports value (ipl = IPL_VAL, default), bounds (ipl = IPL_BND), and domain consistency (ipl = IPL_DOM).
Throws an exception of type Int::ArgumentSame, if x contains the same unassigned variable multiply.
void Gecode::distinct | ( | Home | home, | |
const IntArgs & | n, | |||
const IntVarArgs & | x, | |||
IntPropLevel | ipl = IPL_DEF | |||
) |
Post propagator for for all .
- Supports value (ipl = IPL_VAL, default), bounds (ipl = IPL_BND), and domain consistency (ipl = IPL_DOM).
- Throws an exception of type Int::OutOfLimits, if the integers in n exceed the limits in Int::Limits or if the sum of n and x exceed the limits.
- Throws an exception of type Int::ArgumentSizeMismatch, if x and n are of different size.
- Throws an exception of type Int::ArgumentSame, if x contains the same unassigned variable multiply.
void Gecode::distinct | ( | Home | home, | |
const BoolVarArgs & | b, | |||
const IntVarArgs & | x, | |||
IntPropLevel | ipl = IPL_DEF | |||
) |
Post propagator for for all .
- Supports value (ipl = IPL_VAL, default), bounds (ipl = IPL_BND), and domain consistency (ipl = IPL_DOM).
- Throws an exception of type Int::OutOfLimits, if the variable domains in x are too large (it must hold that one of the values and does not exceed the limits in Int::Limits.
- Throws an exception of type Int::ArgumentSizeMismatch, if b and x are of different size.
- Throws an exception of type Int::ArgumentSame, if x contains the same unassigned variable multiply.
void Gecode::distinct | ( | Home | home, | |
const IntVarArgs & | x, | |||
int | c, | |||
IntPropLevel | ipl = IPL_DEF | |||
) |
Post propagator for for all .
- Supports value (ipl = IPL_VAL, default), bounds (ipl = IPL_BND), and domain consistency (ipl = IPL_DOM).
- Throws an exception of type Int::OutOfLimits, if the variable domains in x are too large (it must hold that one of the values and does not exceed the limits in Int::Limits.
- Throws an exception of type Int::ArgumentSame, if x contains the same unassigned variable multiply.