36 namespace Gecode {
namespace Int {
namespace Count {
72 (void) home; (void) p; (void) y;
82 (void) home; (void) p;
93 (void) home; (void) p; (void) y;
126 if ((x.max() < y.
min()) || (y.
max() < x.min()))
185 for (
int i=0;
i<x.
size();
i++) {
228 for (
int i=0;
i<x.
size();
i++) {
Relation may hold or not.
static ExecStatus post(Home home, V0 x0, V1 x1)
Post propagator .
Range iterator for integer sets.
RelTest rtest_eq_dom(VX x, VY y)
Test whether views x and y are equal (use full domain information)
void cancel(Space &home, Propagator &p, IntSet &y)
T * alloc(long unsigned int n)
Allocate block of n objects of type T from region.
RelTest holds(VX x, ConstIntView y)
Test whether x and y are equal.
static ExecStatus post(Home home, View0 x0, View1 x1)
Post domain consistent propagator .
First is subset of second iterator.
Base-class for propagators.
bool isval(VY y)
Return whether y is a value.
ExecStatus prune(Space &home, ViewArray< VX > &x, ConstIntView)
int min(int i) const
Return minimum of range at position i.
Range iterator for integer views.
#define GECODE_ES_CHECK(es)
Check whether execution status es is failed or subsumed, and forward failure or subsumption.
int p
Number of positive literals for node type.
int val(void) const
Return assigned value (only if assigned)
Gecode::IntArgs i({1, 2, 3, 4})
RelTest
Result of testing relation.
int max(int i) const
Return maximum of range at position i.
void subscribe(Space &home, Propagator &p, IntSet &y)
Range iterator for union of iterators.
const Gecode::PropCond PC_INT_DOM
Propagate when domain changes.
Post propagator for SetVar SetOpType SetVar SetRelType SetVar z
#define GECODE_ME_CHECK(me)
Check whether modification event me is failed, and forward failure.
union Gecode::@593::NNF::@62 u
Union depending on nodetype t.
Post propagator for SetVar SetOpType SetVar SetRelType r
Post propagator for SetVar SetOpType SetVar y
Binary disequality propagator.
Post propagator for SetVar x
bool isintset(VY y)
Return whether y is an integer set.
CompareStatus compare(I &i, J &j)
Check whether range iterator i is a subset of j, or whether they are disjoint.
Gecode toplevel namespace
ExecStatus post_false(Home home, VX x, ConstIntView y)
static ExecStatus post(Home home, ViewArray< View > &x)
Post domain consistent propagator .
void reschedule(Space &home, Propagator &p, IntSet &y)
int size(void) const
Return size of array (number of elements)
Home class for posting propagators
#define GECODE_NEVER
Assert that this command is never executed.
void update(IntSet &y, Space &home, IntSet &py)
ExecStatus post_true(Home home, VX x, ConstIntView y)