Generated on Wed Nov 1 15:05:00 2006 for Gecode by doxygen 1.4.5

Distinct constraints
[Using finite domain integers]

Collaboration diagram for Distinct constraints:


Functions

void Gecode::distinct (Space *home, const IntVarArgs &x, IntConLevel icl=ICL_DEF)
 Post propagator for $ x_i\neq x_j$ for all $0\leq i\neq j<|x|$.
void Gecode::distinct (Space *home, const IntArgs &n, const IntVarArgs &x, IntConLevel icl=ICL_DEF)
 Post propagator for $ x_i+n_i\neq x_j+n_j$ for all $0\leq i\neq j<|x|$.


Function Documentation

void Gecode::distinct Space *  home,
const IntVarArgs x,
IntConLevel  icl = ICL_DEF
 

Post propagator for $ x_i\neq x_j$ for all $0\leq i\neq j<|x|$.

Supports value (icl = ICL_VAL, default), bounds (icl = ICL_BND), and domain-consistency (icl = ICL_DOM).

Throws an exception of type Int::ArgumentSame, if x contains the same variable multiply.

Definition at line 31 of file distinct.cc.

void Gecode::distinct Space *  home,
const IntArgs n,
const IntVarArgs x,
IntConLevel  icl = ICL_DEF
 

Post propagator for $ x_i+n_i\neq x_j+n_j$ for all $0\leq i\neq j<|x|$.

  • Supports value (icl = ICL_VAL, default), bounds (icl = ICL_BND), and domain-consistency (icl = ICL_DOM).
  • Throws an exception of type Int::NumericalOverflow, if the integers in n exceed the limits in Limits::Int.
  • 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 variable multiply.

Definition at line 49 of file distinct.cc.