36 using namespace Gecode;
38 namespace Test {
namespace Set {
Node * x
Pointer to corresponding Boolean expression node.
static const IntSet empty
Empty set.
Range iterator for computing intersection (binary)
Propagator for negated equality
Range iterator producing subsets of an IntSet.
Test for the atmostone propagator
virtual bool solution(const SetAssignment &x) const
Test whether x is solution
AtmostOne(const char *t)
Create and register test.
virtual void post(Space &home, SetVarArray &x, IntVarArray &)
Post constraint on x.
Generate all set assignments.
Base class for tests with set constraints
void atmostOne(Home home, const SetVarArgs &xa, unsigned int c)
void rel(Home home, FloatVar x0, FloatRelType frt, FloatVal n)
Propagates .
unsigned int size(I &i)
Size of all ranges of range iterator i.
Gecode::IntArgs i({1, 2, 3, 4})
AtmostOne _atmostone("Distinct::AtmostOne")