
Classes | |
| class | Gecode::DFA::Transition |
| Specification of a DFA transition. More... | |
| class | Gecode::DFA::Transitions |
| Iterator for DFA transitions (sorted by symbols) More... | |
| class | Gecode::DFA::Symbols |
| Iterator for DFA symbols. More... | |
| class | Gecode::DFA |
| Deterministic finite automaton (DFA) More... | |
| class | Gecode::TupleSet::TupleSetI |
| Data stored for a Table. More... | |
| class | Gecode::TupleSet |
| Class represeting a set of tuples. More... | |
Enumerations | |
| enum | Gecode::ExtensionalPropKind { Gecode::EPK_DEF, Gecode::EPK_SPEED, Gecode::EPK_MEMORY } |
| Extensional propagation kind. More... | |
Functions | |
| void | Gecode::extensional (Home home, const IntVarArgs &x, DFA d, IntConLevel icl=ICL_DEF) |
| Post domain consistent propagator for extensional constraint described by a DFA. More... | |
| void | Gecode::extensional (Home home, const BoolVarArgs &x, DFA d, IntConLevel icl=ICL_DEF) |
| Post domain consistent propagator for extensional constraint described by a DFA. More... | |
| void | Gecode::extensional (Home home, const IntVarArgs &x, const TupleSet &t, ExtensionalPropKind epk=EPK_DEF, IntConLevel icl=ICL_DEF) |
Post propagator for . More... | |
| void | Gecode::extensional (Home home, const BoolVarArgs &x, const TupleSet &t, ExtensionalPropKind epk=EPK_DEF, IntConLevel icl=ICL_DEF) |
Post propagator for . More... | |
Extensional constraints support different ways of how the extensionally defined relation between the variables is defined. Examples include specification by a DFA or a table.
A DFA can be defined by a regular expression, for regular expressions see the module MiniModel.
| void Gecode::extensional | ( | Home | home, |
| const IntVarArgs & | x, | ||
| DFA | d, | ||
| IntConLevel | icl = ICL_DEF |
||
| ) |
Post domain consistent propagator for extensional constraint described by a DFA.
The elements of x must be a word of the language described by the DFA d.
Throws an exception of type Int::ArgumentSame, if x contains the same unassigned variable multiply. If shared occurences of variables are required, unshare should be used.
Definition at line 45 of file extensional.cpp.
| void Gecode::extensional | ( | Home | home, |
| const BoolVarArgs & | x, | ||
| DFA | d, | ||
| IntConLevel | icl = ICL_DEF |
||
| ) |
Post domain consistent propagator for extensional constraint described by a DFA.
The elements of x must be a word of the language described by the DFA d.
Throws an exception of type Int::ArgumentSame, if x contains the same unassigned variable multiply. If shared occurences of variables are required, unshare should be used.
Definition at line 55 of file extensional.cpp.
| void Gecode::extensional | ( | Home | home, |
| const IntVarArgs & | x, | ||
| const TupleSet & | t, | ||
| ExtensionalPropKind | epk = EPK_DEF, |
||
| IntConLevel | icl = ICL_DEF |
||
| ) |
Post propagator for
.
are not dense and have similar bounds, lots of memory will be wasted (memory consumption is in
for the basic algorithm (epk = EPK_MEMORY) and additionally
for the incremental algorithm (epk = EPK_SPEED). Definition at line 65 of file extensional.cpp.
| void Gecode::extensional | ( | Home | home, |
| const BoolVarArgs & | x, | ||
| const TupleSet & | t, | ||
| ExtensionalPropKind | epk = EPK_DEF, |
||
| IntConLevel | icl = ICL_DEF |
||
| ) |
Post propagator for
.
Definition at line 101 of file extensional.cpp.