
Domain consistent extensional propagator. More...
#include <extensional.hh>
Public Member Functions | |
| virtual ExecStatus | propagate (Space &home, const ModEventDelta &med) |
| Perform propagation. More... | |
| virtual PropCost | cost (const Space &home, const ModEventDelta &med) const |
| Cost function. More... | |
| virtual Actor * | copy (Space &home, bool share) |
| Copy propagator during cloning. More... | |
Public Member Functions inherited from Gecode::Int::Extensional::Base< View > | |
| virtual size_t | dispose (Space &home) |
| Delete propagator and return its size. More... | |
Public Member Functions inherited from Gecode::Propagator | |
| ModEventDelta | modeventdelta (void) const |
| Return the modification event delta. More... | |
| virtual ExecStatus | advise (Space &home, Advisor &a, const Delta &d) |
| Advise function. More... | |
| double | afc (const Space &home) const |
| Return the accumlated failure count. More... | |
Public Member Functions inherited from Gecode::Actor | |
Static Public Member Functions | |
| static ExecStatus | post (Home home, ViewArray< View > &x, const TupleSet &t) |
| Post propagator for views x. More... | |
Static Public Member Functions inherited from Gecode::Actor | |
| static void * | operator new (size_t s, Space &home) |
| Allocate memory from space. More... | |
| static void | operator delete (void *p, Space &home) |
| No-op for exceptions. More... | |
Protected Member Functions | |
| Basic (Space &home, bool share, Basic< View, shared > &p) | |
| Constructor for cloning p. More... | |
| Basic (Home home, ViewArray< View > &x, const TupleSet &t) | |
| Constructor for posting. More... | |
Protected Member Functions inherited from Gecode::Int::Extensional::Base< View > | |
| TupleSet::TupleSetI * | ts (void) |
| Base (Space &home, bool share, Base< View, true > &p) | |
| Constructor for cloning p. More... | |
| Base (Home home, ViewArray< View > &x, const TupleSet &t) | |
| Constructor for posting. More... | |
| void | init_last (Space &home, Tuple **source, Tuple *base) |
| Initialize last support. More... | |
| Tuple | last (int i, int n) |
| Find last support for view at position i and value n. More... | |
| Tuple | last_next (int i, int n) |
| Find last support for view at position i and value n. More... | |
| void | init_dom (Space &home, Domain dom) |
| Initialize domain information. More... | |
| bool | valid (Tuple t, Domain dom) |
| Check wether tuple is valid for domain. More... | |
| Tuple | find_support (Domain dom, int i, int n) |
| Find support for view at position i and value n. More... | |
| virtual | ~Base (void) |
| Unused destructor (to avoid warnings) More... | |
Protected Member Functions inherited from Gecode::Propagator | |
| Propagator (Home home) | |
| Constructor for posting. More... | |
| Propagator (Space &home, bool share, Propagator &p) | |
| Constructor for cloning p. More... | |
| Propagator * | fwd (void) const |
| Return forwarding pointer during copying. More... | |
Additional Inherited Members | |
Protected Attributes inherited from Gecode::Int::Extensional::Base< View > | |
| ViewArray< View > | x |
| Variables. More... | |
| TupleSet | tupleSet |
| Definition of constraint. More... | |
| Tuple ** | last_data |
| Last tuple looked at Access real tuple-set. More... | |
Domain consistent extensional propagator.
This propagator implements a basic extensional propagation algorithm. It is based on GAC2001, and as such it does not fully take into account multidirectionality.
If shared is true, the same view can occur multiply.
Requires
Definition at line 295 of file extensional.hh.
|
virtual |
|
virtual |
Cost function.
If in stage for naive value propagation, the cost is high quadratic. Otherwise it is high cubic.
Reimplemented from Gecode::Int::Extensional::Base< View >.
|
virtual |
|
inlinestatic |