Generated on Thu Mar 22 10:39:59 2012 for Gecode by doxygen 1.6.3

Gecode::Set::LUBndSet Class Reference

Shrinking sets of integers. More...

#include <var-imp.hpp>

List of all members.

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 $ \{i,\dots,j\}$.
 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 $\{i,\dots,j\}$ from this set.
bool intersect (Space &home, int i, int j)
 Intersect this set with the set $\{i,\dots,j\}$.
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.

Detailed Description

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.

Definition at line 247 of file var-imp.hpp.


Constructor & Destructor Documentation

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 $ \{i,\dots,j\}$.

Definition at line 324 of file integerset.hpp.

Gecode::Set::LUBndSet::LUBndSet ( Space home,
const IntSet s 
) [inline]

Initialize as the set represented by s.

Definition at line 328 of file integerset.hpp.


Member Function Documentation

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.

bool Gecode::Set::LUBndSet::exclude ( Space home,
int  i,
int  j,
SetDelta d 
) [inline]

Exclude the set $\{i,\dots,j\}$ 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 $\{i,\dots,j\}$.

Definition at line 359 of file integerset.hpp.

template<class I >
bool Gecode::Set::LUBndSet::intersectI ( Space home,
I &  i 
) [inline]

Exclude all elements not in the set represented by i from this set.

Definition at line 374 of file integerset.hpp.

template<class I >
bool Gecode::Set::LUBndSet::excludeI ( Space home,
I &  i 
) [inline]

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.


The documentation for this class was generated from the following files: