Shrinking sets of integers. More...
#include <var-imp.hpp>
Constructors and initialization | |
LUBndSet (void) | |
Default constructor. Creates an empty set. | |
LUBndSet (Space &home) | |
Initialize as the full set including everything between Limits::min and Limits::max. | |
LUBndSet (Space &home, int i, int j) | |
Initialize as the set ![]() | |
LUBndSet (Space &home, const IntSet &s) | |
Initialize as the set represented by s. | |
void | init (Space &home) |
Initialize as the full set including everything between Limits::min and Limits::max. | |
Update operations | |
bool | exclude (Space &home, int i, int j, SetDelta &d) |
Exclude the set ![]() | |
bool | intersect (Space &home, int i, int j) |
Intersect this set with the set ![]() | |
template<class I > | |
bool | intersectI (Space &home, I &i) |
Exclude all elements not in the set represented by i from this set. | |
template<class I > | |
bool | excludeI (Space &home, I &i) |
Exclude all elements in the set represented by i from this set. | |
void | excludeAll (Space &home) |
Exclude all elements from this set. |
Shrinking sets of integers.
These sets provide operations for monotonically shrinking the set. Shrinking sets are used for implementing the least upper bound of set variables.
Gecode::Set::LUBndSet::LUBndSet | ( | void | ) | [inline] |
Default constructor. Creates an empty set.
Definition at line 317 of file integerset.hpp.
Gecode::Set::LUBndSet::LUBndSet | ( | Space & | home | ) | [inline] |
Initialize as the full set including everything between Limits::min and Limits::max.
Definition at line 320 of file integerset.hpp.
Gecode::Set::LUBndSet::LUBndSet | ( | Space & | home, |
int | i, | ||
int | j | ||
) | [inline] |
Initialize as the set .
Definition at line 324 of file integerset.hpp.
Initialize as the set represented by s.
Definition at line 328 of file integerset.hpp.
void Gecode::Set::LUBndSet::init | ( | Space & | home | ) | [inline] |
Initialize as the full set including everything between Limits::min and Limits::max.
Definition at line 332 of file integerset.hpp.
Exclude the set from this set.
Definition at line 343 of file integerset.hpp.
bool Gecode::Set::LUBndSet::intersect | ( | Space & | home, |
int | i, | ||
int | j | ||
) | [inline] |
Intersect this set with the set .
Definition at line 359 of file integerset.hpp.
bool Gecode::Set::LUBndSet::intersectI | ( | Space & | home, |
I & | i | ||
) |
Exclude all elements not in the set represented by i from this set.
Definition at line 374 of file integerset.hpp.
bool Gecode::Set::LUBndSet::excludeI | ( | Space & | home, |
I & | i | ||
) |
Exclude all elements in the set represented by i from this set.
Definition at line 389 of file integerset.hpp.
void Gecode::Set::LUBndSet::excludeAll | ( | Space & | home | ) | [inline] |
Exclude all elements from this set.
Definition at line 399 of file integerset.hpp.