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

Selection constraints
[Using finite integer sets with complete domain representation]


Functions

void Gecode::selectUnion (Space *home, const CpltSetVarArgs &x, CpltSetVar s, CpltSetVar t)
 Post propagator for $ t = \bigcup_{i\in s} x_i $.
void Gecode::selectNonEmptySub (Space *home, const CpltSetVarArgs &x, CpltSetVar s, CpltSetVar t)
 Post propagator for $ s = \bigcup_{(x_i \subseteq t) \wedge x_i \neq \emptyset } i $.
void Gecode::range (Space *home, const CpltSetVarArgs &x, CpltSetVar s, CpltSetVar t)
 Post propagator for $ t = \bigcup_{i\subseteq s} x_i $.
void Gecode::roots (Space *home, const CpltSetVarArgs &x, CpltSetVar s, CpltSetVar t, const CpltSetVarArgs &allvars)
 Post propagator for $ s = \bigcup_{x_i \subseteq t} i $.
void Gecode::alldifferent (Space *home, const CpltSetVarArgs &x, CpltSetVar s, CpltSetVar t, const CpltSetVarArgs &allvars)
 Post propagator for $ x_i\neq x_j$ for all $0\leq i\neq j<|x| \wedge t = \bigcup_{i\subseteq s} x_i $.
void Gecode::nvalue (Space *home, const CpltSetVarArgs &x, CpltSetVar s, CpltSetVar t, unsigned int n, const CpltSetVarArgs &allvars)
 Post propagator for $ |\displaystyle\bigcup_{i = 0}^{|x| - 1} x_i| = n \wedge t = \bigcup_{i\subseteq s} x_i $.
void Gecode::uses (Space *home, const IntVarArgs &x, CpltSetVar s, CpltSetVar t, const CpltSetVarArgs &y, CpltSetVar u, CpltSetVar v)
 Post propagator for $ t = \bigcup_{i\in s} x_i \wedge v = \bigcup_{i\in u} y_i \wedge v \subseteq t $.


Function Documentation

GECODE_CPLTSET_EXPORT void Gecode::selectUnion ( Space *  home,
const CpltSetVarArgs &  x,
CpltSetVar  s,
CpltSetVar  t 
)

Post propagator for $ t = \bigcup_{i\in s} x_i $.

Definition at line 458 of file rangeroots.cc.

GECODE_CPLTSET_EXPORT void Gecode::selectNonEmptySub ( Space *  home,
const CpltSetVarArgs &  x,
CpltSetVar  s,
CpltSetVar  t 
)

Post propagator for $ s = \bigcup_{(x_i \subseteq t) \wedge x_i \neq \emptyset } i $.

Definition at line 119 of file select.cc.

GECODE_CPLTSET_EXPORT void Gecode::range ( Space *  home,
const CpltSetVarArgs &  x,
CpltSetVar  s,
CpltSetVar  t 
)

Post propagator for $ t = \bigcup_{i\subseteq s} x_i $.

Definition at line 431 of file rangeroots.cc.

GECODE_CPLTSET_EXPORT void Gecode::roots ( Space *  home,
const CpltSetVarArgs &  x,
CpltSetVar  s,
CpltSetVar  t,
const CpltSetVarArgs &  allvars 
)

Post propagator for $ s = \bigcup_{x_i \subseteq t} i $.

Definition at line 436 of file rangeroots.cc.

GECODE_CPLTSET_EXPORT void Gecode::alldifferent ( Space *  home,
const CpltSetVarArgs &  x,
CpltSetVar  s,
CpltSetVar  t,
const CpltSetVarArgs &  allvars 
)

Post propagator for $ x_i\neq x_j$ for all $0\leq i\neq j<|x| \wedge t = \bigcup_{i\subseteq s} x_i $.

Definition at line 442 of file rangeroots.cc.

GECODE_CPLTSET_EXPORT void Gecode::nvalue ( Space *  home,
const CpltSetVarArgs &  x,
CpltSetVar  s,
CpltSetVar  t,
unsigned int  n,
const CpltSetVarArgs &  allvars 
)

Post propagator for $ |\displaystyle\bigcup_{i = 0}^{|x| - 1} x_i| = n \wedge t = \bigcup_{i\subseteq s} x_i $.

Definition at line 447 of file rangeroots.cc.

GECODE_CPLTSET_EXPORT void Gecode::uses ( Space *  home,
const IntVarArgs &  x,
CpltSetVar  s,
CpltSetVar  t,
const CpltSetVarArgs &  y,
CpltSetVar  u,
CpltSetVar  v 
)

Post propagator for $ t = \bigcup_{i\in s} x_i \wedge v = \bigcup_{i\in u} y_i \wedge v \subseteq t $.

|x| and |y| may be different

Definition at line 453 of file rangeroots.cc.