Go to the documentation of this file.
38 namespace Gecode {
namespace Int {
69 MinusView::baseval(
int val)
const {
116 return x.
gq(home,-
n);
120 return x.
gq(home,-
n);
125 return x.
gr(home,-
n);
129 return x.
gr(home,-
n);
134 return x.
lq(home,-
n);
138 return x.
lq(home,-
n);
143 return x.
le(home,-
n);
147 return x.
le(home,-
n);
152 return x.
nq(home,-
n);
156 return x.
nq(home,-
n);
161 return x.
eq(home,-
n);
165 return x.
eq(home,-
n);
301 unsigned int i =
x.
size() / 2;
305 while (
i >=
r.width()) {
309 return r.min() + static_cast<int>(
i);
318 return x.base() ==
y.base();
Post propagator for SetVar x
Post propagator for SetVar SetOpType SetVar y
int max(void) const
Return maximum of domain.
MinusView(void)
Default constructor.
ModEvent narrow_v(Space &home, I &i, bool depends=true)
Replace domain by values described by i.
ModEvent inter_v(Space &home, I &i, bool depends=true)
Intersect domain with values described by i.
void init(const View &x)
Initialize with ranges for view x.
int min(void) const
Return minimum of domain.
int min(void) const
Return smallest value of range.
Backward iterator for ranges of integer variable implementations.
ModEvent narrow_r(Space &home, I &i, bool depends=true)
Replace domain by ranges described by i.
ModEvent minus_v(Space &home, I &i, bool depends=true)
Remove from domain the values described by i.
Value iterator for pointwise minus of a value iterator.
unsigned int regret_min(void) const
Return regret of domain minimum (distance to next larger value)
unsigned int size(void) const
Return size (cardinality) of domain.
Base-class for derived views.
Gecode toplevel namespace
void init(const IntVarImp *x)
Initialize with ranges from variable implementation x.
int max(void) const
Return maximum of domain.
Range iterator for integer views.
ModEvent inter_r(Space &home, I &i, bool depends=true)
Intersect domain with ranges described by i.
ModEvent inter_r(Space &home, I &i, bool depends=true)
Intersect domain with ranges described by i.
int val(void) const
Return assigned value (only if assigned)
unsigned int width(void) const
Return width of domain (distance between maximum and minimum)
Generic domain change information to be supplied to advisors.
VarImp * varimp(void) const
Return variable implementation of variable.
unsigned int size(void) const
Return size (cardinality) of domain.
ModEvent nq(Space &home, int n)
Restrict domain values to be different from n.
ModEvent minus_r(Space &home, I &i, bool depends=true)
Remove from domain the ranges described by i.
ModEvent inter_v(Space &home, I &i, bool depends=true)
Intersect domain with values described by i.
unsigned int regret_min(void) const
Return regret of domain minimum (distance to next larger value)
bool range(void) const
Test whether domain is a range.
Post propagator for SetVar SetOpType SetVar SetRelType r
ViewRanges(void)
Default constructor.
ModEvent nq(Space &home, int n)
Restrict domain values to be different from n.
Range iterator for pointwise minus of a range iterator.
ModEvent minus_v(Space &home, I &i, bool depends=true)
Remove from domain the values described by i.
const double base
Base for geometric restart sequence.
unsigned int regret_max(void) const
Return regret of domain maximum (distance to next smaller value)
bool in(int n) const
Test whether n is contained in domain.
ModEvent le(Space &home, int n)
Restrict domain values to be less than n.
bool in(int n) const
Test whether n is contained in domain.
int ModEvent
Type for modification events.
ModEvent eq(Space &home, int n)
Restrict domain values to be equal to n.
static ModEvent me(const ModEventDelta &med)
Return modification event for view type in med.
int max(void) const
Return largest value of range.
IntView x
View from which this view is derived.
bool any(const Delta &d) const
Test whether arbitrary values got pruned.
ModEvent narrow_r(Space &home, I &i, bool depends=true)
Replace domain by ranges described by i.
ModEvent gr(Space &home, int n)
Restrict domain values to be greater than n.
int val(void) const
Return assigned value (only if assigned)
Integer view for integer variables.
int max(void) const
Return largest value of range.
unsigned int width(void) const
Return width of domain (distance between maximum and minimum)
ModEvent gq(Space &home, int n)
Restrict domain values to be greater or equal than n.
ModEvent gr(Space &home, int n)
Restrict domain values to be greater than n.
ModEvent lq(Space &home, int n)
Restrict domain values to be less or equal than n.
int min(void) const
Return minimum of domain.
ModEvent narrow_v(Space &home, I &i, bool depends=true)
Replace domain by values described by i.
ModEvent gq(Space &home, int n)
Restrict domain values to be greater or equal than n.
int med(void) const
Return median of domain.
int n
Number of negative literals for node type.
Range iterator for minus integer views
int med(void) const
Return median of domain (greatest element not greater than the median)
ModEvent minus_r(Space &home, I &i, bool depends=true)
Remove from domain the ranges described by i.
int ModEventDelta
Modification event deltas.
bool operator!=(const CachedView< View > &x, const CachedView< View > &y)
bool any(const Delta &d) const
Test whether arbitrary values got pruned.
Gecode::IntArgs i({1, 2, 3, 4})
int min(void) const
Return smallest value of range.
bool range(void) const
Test whether domain is a range.
bool operator==(const CachedView< View > &x, const CachedView< View > &y)
ModEvent le(Space &home, int n)
Restrict domain values to be less than n.
unsigned int regret_max(void) const
Return regret of domain maximum (distance to next smaller value)
ModEvent eq(Space &home, int n)
Restrict domain values to be equal to n.
ModEvent lq(Space &home, int n)
Restrict domain values to be less or equal than n.