44 #ifndef __GECODE_INT_GCC_HH__
45 #define __GECODE_INT_GCC_HH__
58 namespace Gecode {
namespace Int {
namespace GCC {
Bnd(Space &home, bool share, Bnd< Card > &p)
Constructor for cloning p.
ViewArray< Card > k
Array containing either fixed cardinalities or CardViews.
Value consistent global cardinality propagator.
virtual Actor * copy(Space &home, bool share)
Copy propagator during cloning.
Container class provding information about the Hall structure of the problem variables.
static ExecStatus post(Home home, ViewArray< IntView > &x, ViewArray< Card > &k)
Post propagator for views x and cardinalities k.
bool card_fixed
Stores whether cardinalities are all assigned.
virtual PropCost cost(const Space &home, const ModEventDelta &med) const
Cost funtion.
ViewArray< Card > k
Array containing either fixed cardinalities or CardViews.
Val(Home home, ViewArray< IntView > &x, ViewArray< Card > &k)
Constructor for posting.
Base-class for propagators.
PartialSum< Card > lps
Data structure storing the sum of the views lower bounds Necessary for reasoning about the interval c...
ViewArray< Card > k
Array containing either fixed cardinalities or CardViews.
Base-class for both propagators and branchers.
ViewArray< IntView > x
Views on which to perform value-propagation.
virtual Actor * copy(Space &home, bool share)
Copy propagator during cloning.
int p
Number of positive literals for node type.
virtual size_t dispose(Space &home)
Destructor.
PartialSum< Card > ups
Data structure storing the sum of the views upper bounds.
virtual PropCost cost(const Space &home, const ModEventDelta &med) const
Cost function.
virtual PropCost cost(const Space &home, const ModEventDelta &med) const
Cost funtion returning high linear.
static ExecStatus post(Home home, ViewArray< IntView > &x, ViewArray< Card > &k)
Post propagator for views x and cardinalities k.
Domain consistent global cardinality propagator.
virtual size_t dispose(Space &home)
Destructor.
Dom(Space &home, bool share, Dom< Card > &p)
Constructor for cloning p.
ModEventDelta med
A set of modification events (used during propagation)
ExecStatus ubc(Space &home, int &nb, HallInfo hall[], Rank rank[], int mu[], int nu[])
Upper Bounds constraint (UBC) stating Hence the ubc constraints the variables such that no value occ...
virtual ExecStatus propagate(Space &home, const ModEventDelta &med)
Perform propagation.
static ExecStatus post(Home home, ViewArray< IntView > &x, ViewArray< Card > &k)
Post propagator for views x and cardinalities k.
virtual size_t dispose(Space &home)
Destructor.
ExecStatus pruneCards(Space &home)
Prune cardinality variables with 0 maximum occurrence.
virtual Actor * copy(Space &home, bool share)
Copy propagator during cloning.
Maps domain bounds to their position in hall[].bounds.
ViewArray< IntView > y
Views used to channel information between x and k ( ).
Partial sum structure for constant time computation of the maximal capacity of an interval...
Variable-value-graph used during propagation.
ViewArray< IntView > y
Views on which to perform value-propagation (subset of x)
Gecode toplevel namespace
virtual ExecStatus propagate(Space &home, const ModEventDelta &med)
Perform propagation.
ViewArray< IntView > x
Views on which to perform bounds-propagation.
bool skip_lbc
Stores whether the minium required occurences of the cardinalities are all zero. If so...
int ModEventDelta
Modification event deltas.
Home class for posting propagators
Bounds consistent global cardinality propagator.
VarValGraph< Card > * vvg
Propagation is performed on a variable-value graph (used as cache)
bool card_fixed
Stores whether cardinalities are all assigned.
ExecStatus lbc(Space &home, int &nb, HallInfo hall[], Rank rank[], int mu[], int nu[])
Lower Bounds constraint (LBC) stating Hence the lbc constraints the variables such that every value ...
ViewArray< IntView > x
Views on which to perform domain-propagation.
virtual ExecStatus propagate(Space &home, const ModEventDelta &med)
Perform propagation.