
Domain consistent positive extensional propagator. More...
#include <gecode/int/extensional.hh>
Public Types | |
| typedef View | ViewType |
| typedef Compact< View, true >::ValidSupports | ValidSupports |
| typedef Compact< View, true >::Range | Range |
| typedef Compact< View, true >::CTAdvisor | CTAdvisor |
| typedef Compact< View, true >::LostSupports | LostSupports |
| typedef CompactStatus< CTAdvisor > | Status |
| Status management. | |
| typedef Status::StatusType | StatusType |
| Status type. | |
Public Member Functions | |
| bool | empty (void) const |
| Check whether the table is empty. | |
| template<class TableProp> | |
| PosCompact (Space &home, TableProp &p) | |
| Constructor for cloning p. | |
| PosCompact (Home home, ViewArray< View > &x, const TupleSet &ts) | |
| Constructor for posting. | |
| virtual void | reschedule (Space &home) |
| Schedule function. | |
| virtual ExecStatus | propagate (Space &home, const ModEventDelta &med) |
| Perform propagation. | |
| virtual Actor * | copy (Space &home) |
| Copy propagator during cloning. | |
| size_t | dispose (Space &home) |
| Delete propagator and return its size. | |
| virtual ExecStatus | advise (Space &home, Advisor &a, const Delta &d) |
| Give advice to propagator. | |
| virtual PropCost | cost (const Space &home, const ModEventDelta &med) const |
| Cost function. | |
| ModEventDelta | modeventdelta (void) const |
| Return the modification event delta. | |
| virtual void | advise (Space &home, Advisor &a) |
| Run advisor a to be run on failure in failed space. | |
| double | afc (void) const |
| Return the accumulated failure count. | |
| unsigned int | id (void) const |
| Return propagator id. | |
| PropagatorGroup | group (void) const |
| Return group propagator belongs to. | |
| void | group (PropagatorGroup g) |
| Add propagator to group g. | |
| bool | disabled (void) const |
| Whether propagator is currently disabled. | |
| virtual | ~Actor (void) |
| To avoid warnings. | |
Static Public Member Functions | |
| static ExecStatus | post (Home home, ViewArray< View > &x, const TupleSet &ts) |
| Post propagator for views x and table t. | |
| static void * | operator new (size_t s, Space &home) |
| Allocate memory from space. | |
| static void | operator delete (void *p, Space &home) |
| No-op for exceptions. | |
| static void * | operator new (size_t s) |
| Not used. | |
| static void | operator delete (void *p) |
| Not used. | |
Public Attributes | |
| Status | status |
| Propagator status. | |
| Table | table |
| Current table. | |
Additional Inherited Members | |
| Protected Types inherited from Gecode::Int::Extensional::Compact< View, true > | |
| typedef TupleSet::Range | Range |
| Range type for supports. | |
| typedef CompactAdvisor< View, pos, false > | CTAdvisor |
| Advisor for updating current table. | |
| bool | all (void) const |
| Whether all variables are assigned. | |
| bool | atmostone (void) const |
| Whether at most one variable is unassigned. | |
| Compact (Space &home, Compact &p) | |
| Constructor for cloning p. | |
| void | setup (Space &home, Table &table, ViewArray< View > &x) |
| Setup the actual table. | |
| bool | full (const Table &table) const |
| Check whether the table covers the whole Cartedion product. | |
| const Range * | range (CTAdvisor &a, int n) |
| Find range for n. | |
| const BitSetData * | supports (CTAdvisor &a, int n) |
| Return supports for value n. | |
| Protected Member Functions inherited from Gecode::Propagator | |
| Propagator (Home home) | |
| Constructor for posting. | |
| Propagator (Space &home, Propagator &p) | |
| Constructor for cloning p. | |
| Propagator * | fwd (void) const |
| Return forwarding pointer during copying. | |
| Kernel::GPI::Info & | gpi (void) |
| Provide access to global propagator information. | |
| const unsigned int | n_words |
| Number of words in supports. | |
| TupleSet | ts |
| The tuple set. | |
| Council< CTAdvisor > | c |
| The advisor council. | |
Domain consistent positive extensional propagator.
This propagator implements the compact-table propagation algorithm based on: J. Demeulenaere et. al., Compact-Table: Efficiently filtering table constraints with reversible sparse bit-sets, CP 2016.
Requires
Definition at line 627 of file extensional.hh.
| typedef View Gecode::Int::Extensional::PosCompact< View, Table >::ViewType |
Definition at line 630 of file extensional.hh.
| typedef Compact<View,true>::ValidSupports Gecode::Int::Extensional::PosCompact< View, Table >::ValidSupports |
Definition at line 631 of file extensional.hh.
| typedef Compact<View,true>::Range Gecode::Int::Extensional::PosCompact< View, Table >::Range |
Definition at line 632 of file extensional.hh.
| typedef Compact<View,true>::CTAdvisor Gecode::Int::Extensional::PosCompact< View, Table >::CTAdvisor |
Definition at line 633 of file extensional.hh.
| typedef Compact<View,true>::LostSupports Gecode::Int::Extensional::PosCompact< View, Table >::LostSupports |
Definition at line 634 of file extensional.hh.
| typedef CompactStatus<CTAdvisor> Gecode::Int::Extensional::PosCompact< View, Table >::Status |
Status management.
Definition at line 644 of file extensional.hh.
| typedef Status::StatusType Gecode::Int::Extensional::PosCompact< View, Table >::StatusType |
Status type.
Definition at line 646 of file extensional.hh.
|
inline |
Constructor for cloning p.
Definition at line 973 of file compact.hpp.
|
inline |
Constructor for posting.
Definition at line 988 of file compact.hpp.
| bool Gecode::Int::Extensional::PosCompact< View, Table >::empty | ( | void | ) | const |
Check whether the table is empty.
|
virtual |
|
virtual |
|
virtual |
Copy propagator during cloning.
Implements Gecode::Actor.
Definition at line 981 of file compact.hpp.
|
inlinestatic |
Post propagator for views x and table t.
Definition at line 997 of file compact.hpp.
|
inlinevirtual |
Delete propagator and return its size.
Reimplemented from Gecode::Int::Extensional::Compact< View, true >.
Definition at line 1006 of file compact.hpp.
|
virtual |
Give advice to propagator.
Reimplemented from Gecode::Propagator.
Definition at line 1024 of file compact.hpp.
| Status Gecode::Int::Extensional::PosCompact< View, Table >::status |
Propagator status.
Definition at line 648 of file extensional.hh.
| Table Gecode::Int::Extensional::PosCompact< View, Table >::table |
Current table.
Definition at line 650 of file extensional.hh.