Gecode Namespace Reference
[Boolean expressions and relations, Matrix interface for arrays]
Detailed Description
Gecode toplevel namespace.The Gecode namespace contains nested namespaces for the various submodules (for example Int for the definition of integer propagator classes). Functionality that is used for interfacing (search engines, variables, and so on) or belongs to the Gecode Kernel is contained directly in the Gecode namespace.
Classes | |
class | BoolVarArgs |
Passing Boolean variables. More... | |
class | IntVarArray |
Integer variable array. More... | |
class | BoolVarArray |
Boolean variable array. More... | |
class | ArrayTraits< IntVarArray > |
Traits of IntVarArray. More... | |
class | ArrayTraits< IntVarArgs > |
Traits of IntVarArgs. More... | |
class | ArrayTraits< IntArgs > |
Traits of IntArgs. More... | |
class | ArrayTraits< BoolVarArray > |
Traits of BoolVarArray. More... | |
class | ArrayTraits< BoolVarArgs > |
Traits of BoolVarArgs. More... | |
class | ReUnaryPropagator |
Reified unary propagator. More... | |
class | ReBinaryPropagator |
Reified binary propagator. More... | |
class | IntVar |
Integer variables. More... | |
class | IntVarRanges |
Range iterator for integer variables More... | |
class | IntVarValues |
Value iterator for integer variables. More... | |
class | BoolVar |
Boolean integer variables. More... | |
class | IntSet |
Integer sets. More... | |
class | IntSetRanges |
Range iterator for integer sets. More... | |
class | IntSetValues |
Value iterator for integer sets. More... | |
class | REG |
Regular expressions More... | |
class | DFA |
Deterministic finite automaton. More... | |
class | VarArray |
Variable arrays More... | |
class | ViewArray |
View arrays. More... | |
class | ArgArrayBase |
Base-class for argument arrays. More... | |
class | PrimArgArray |
Argument array for primtive types. More... | |
class | VarArgArray |
Argument array for variables. More... | |
class | ArrayTraits |
Traits of arrays in Gecode. More... | |
class | ViewValBranching |
Generic branching. More... | |
class | PosValDesc |
Branching descriptions storing position and value More... | |
class | __Combine |
A fake combination class. More... | |
class | VarBase |
Base-class for variable implementations. More... | |
class | VarTypeProcessorBase |
Base-class for variable type processor. More... | |
class | VarTypeProcessor |
Variable type processor More... | |
class | Variable |
Base-class for variable implementations. More... | |
class | ActorLink |
Double-linked list for actors. More... | |
class | ActorDeleteLink |
Double-linked list for deleting actors. More... | |
class | Actor |
Base-class for both propagators and branchings. More... | |
class | Propagator |
Base-class for propagators. More... | |
class | BranchingDesc |
Branch description for batch recomputation. More... | |
class | Branching |
Base-class for branchings. More... | |
class | Space |
Computation spaces. More... | |
class | Exception |
Exception: Base-class for exceptions More... | |
class | MemoryExhausted |
Exception: Memory exhausted More... | |
class | SpaceFailed |
Exception: Operation on failed space invoked More... | |
class | SpaceNoBranching |
Exception: Commit when no branching present More... | |
class | SpaceIllegalAlternative |
Exception: Commit with illegal alternative More... | |
class | FreeList |
Base-class for freelist-managed objects. More... | |
class | MemoryManager |
Manage memory for space. More... | |
class | UnaryPropagator |
Unary propagator. More... | |
class | BinaryPropagator |
Binary propagator. More... | |
class | TernaryPropagator |
Ternary propagator. More... | |
class | NaryPropagator |
n-ary propagator More... | |
class | NaryOnePropagator |
(n+1)-ary propagator More... | |
class | InhomBinaryPropagator |
Inhomogeneous binary propagator. More... | |
class | InhomTernaryPropagator |
Inhomogeneous ternary propagator. More... | |
class | InhomNaryOnePropagator |
Inhomogeneous (n+1)-ary propagator. More... | |
class | ConstantViewBase |
Base-class for constant views. More... | |
class | VariableViewBase |
Base-class for variable views. More... | |
class | ViewVarTraits |
Traits class for views and variable implementations. More... | |
class | DerivedViewBase |
Base-class for derived views. More... | |
class | ViewTuple |
Tuple of views. More... | |
class | DFS |
Depth-first search engine. More... | |
class | LDS |
Limited discrepancy search engine. More... | |
class | BAB |
Depth-first branch-and-bound search engine. More... | |
class | Restart |
Depth-first restart best solution search engine. More... | |
class | SetVarArray |
Set variable array More... | |
class | ArrayTraits< SetVarArray > |
Traits of SetVarArray. More... | |
class | ArrayTraits< SetVarArgs > |
Traits of SetVarArgs. More... | |
class | SetExprRanges |
Range iterator for set expressions. More... | |
class | ProjectorPropagatorSpec |
Specification for a C++ finite set propagator. More... | |
class | ProjectorCompiler |
Compiler from projector specifications to C++. More... | |
class | SetExprCode |
Code representing set-valued expressions for finite set projectors. More... | |
class | SetExpr |
Set-valued expressions for finite set projectors. More... | |
class | Projector |
Finite set projector specification. More... | |
class | ProjectorSet |
Group of finite set projector specifications. More... | |
class | IntSetPropagator |
Set/Int connection propagator. More... | |
class | SetVar |
Set variables More... | |
class | SetVarGlbRanges |
Iterator for the greatest lower bound ranges of a set variable. More... | |
class | SetVarLubRanges |
Iterator for the least upper bound ranges of a set variable. More... | |
class | SetVarUnknownRanges |
Iterator for the unknown ranges of a set variable. More... | |
class | SetVarGlbValues |
Iterator for the values in the greatest lower bound of a set variable. More... | |
class | SetVarLubValues |
Iterator for the values in the least upper bound of a set variable. More... | |
class | SetVarUnknownValues |
Iterator for the values in the unknown set of a set variable. More... | |
class | ViewVarTraits< Int::IntView > |
Traits class for views and variable implementations. More... | |
class | ViewVarTraits< Int::MinusView > |
Traits class for views and variable implementations. More... | |
class | ViewVarTraits< Int::OffsetView > |
Traits class for views and variable implementations. More... | |
class | ViewVarTraits< Int::ScaleView< Val, UnsVal > > |
Traits class for views and variable implementations. More... | |
class | ViewVarTraits< Int::ConstIntView > |
Traits class for views and variable implementations. More... | |
class | ViewVarTraits< Int::BoolView > |
Traits class for views and variable implementations. More... | |
class | ViewVarTraits< Int::NegBoolView > |
Traits class for views and variable implementations. More... | |
class | ViewVarTraits< Set::SetView > |
Traits class for views and variable implementations. More... | |
class | ViewVarTraits< Set::ConstantView > |
Traits class for views and variable implementations. More... | |
class | ViewVarTraits< Set::EmptyView > |
Traits class for views and variable implementations. More... | |
class | ViewVarTraits< Set::UniverseView > |
Traits class for views and variable implementations. More... | |
class | ViewVarTraits< Set::SingletonView > |
Traits class for views and variable implementations. More... | |
class | ViewVarTraits< Set::ComplementView< View > > |
Traits class for views and variable implementations. More... | |
class | ViewArray< Int::Linear::NoView > |
View array for no view (empty). More... | |
class | ViewVarTraits< Set::ComplementView< Set::ComplementView< View > > > |
Traits class for views and variable implementations. More... | |
Namespaces | |
namespace | Support |
Support algorithms and datastructures | |
namespace | Int |
Finite domain integers. | |
namespace | Iter |
Range and value iterators. | |
namespace | Memory |
Heap and automatic memory management. | |
namespace | Limits |
Numerical limits. | |
namespace | MiniModel |
Minimal modelling support. | |
namespace | Search |
Search engines | |
namespace | Set |
Finite integer sets. | |
Specifying finite set projectors | |
SetExpr | operator- (const SetExpr &s) |
Return set expression for the complement of s. | |
SetExpr | operator|| (const SetExpr &s, const SetExpr &t) |
Return set expression for the union of s and t. | |
SetExpr | operator && (const SetExpr &, const SetExpr &) |
Return set expression for the intersection of s and t. | |
SetExpr | operator- (const SetExpr &, const SetExpr &) |
Return set expression for the difference of s and t. | |
Posting projection propagators | |
void | projector (Space *home, const SetVar &xa, const SetVar &ya, ProjectorSet &ps, bool negated=false) |
Post projection propagators for binary constraint. | |
void | projector (Space *home, const SetVar &xa, const SetVar &ya, const BoolVar &bv, ProjectorSet &ps) |
Post reified projection propagators for binary constraint. | |
void | projector (Space *home, const SetVar &xa, const SetVar &ya, const SetVar &za, ProjectorSet &ps, bool negated=false) |
Post projection propagators for ternary constraint. | |
void | projector (Space *home, const SetVar &xa, const SetVar &ya, const SetVar &za, const BoolVar &bv, ProjectorSet &ps) |
Post reified projection propagators for ternary constraint. | |
void | projector (Space *home, const SetVar &xa, const SetVar &ya, const IntVar &i, Projector &p) |
Post projection propagator for cardinality constraint. | |
void | projector (Space *home, const SetVar &xa, const SetVar &ya, const SetVar &za, const IntVar &i, Projector &p) |
Post projection propagator for cardinality constraint. | |
Typedefs | |
typedef PrimArgArray< int > | IntArgs |
Passing integer arguments. | |
typedef VarArgArray< IntVar > | IntVarArgs |
Passing integer variables. | |
typedef int | ModEvent |
Type for modification events. | |
typedef int | PropCond |
Type for propagation conditions. | |
typedef int | PropModEvent |
Propagator modification events. | |
typedef VarArgArray< SetVar > | SetVarArgs |
Passing set variables. | |
Enumerations | |
enum | IntRelType { IRT_EQ, IRT_NQ, IRT_LQ, IRT_LE, IRT_GQ, IRT_GR } |
Common relation types for integers. More... | |
enum | IntConLevel { ICL_VAL, ICL_BND, ICL_DOM, ICL_DEF } |
Consistency levels for integer propagators. More... | |
enum | BvarSel { BVAR_NONE, BVAR_MIN_MIN, BVAR_MIN_MAX, BVAR_MAX_MIN, BVAR_MAX_MAX, BVAR_SIZE_MIN, BVAR_SIZE_MAX, BVAR_DEGREE_MIN, BVAR_DEGREE_MAX, BVAR_REGRET_MIN_MIN, BVAR_REGRET_MIN_MAX, BVAR_REGRET_MAX_MIN, BVAR_REGRET_MAX_MAX } |
Which variable to select for branching. More... | |
enum | BvalSel { BVAL_MIN, BVAL_MED, BVAL_MAX, BVAL_SPLIT_MIN, BVAL_SPLIT_MAX } |
Which values to select first for branching. More... | |
enum | AvalSel { AVAL_MIN, AVAL_MED, AVAL_MAX } |
Which value to select for assignment. More... | |
enum | ViewSelStatus { VSS_NONE, VSS_SELECT, VSS_COMMIT } |
Status returned by member functions of view selection class. More... | |
enum | VarTypeId { VTI_INT, VTI_SET, VTI_LAST, VTI_NOIDX = 0 } |
Variable type identifiers More... | |
enum | ExecStatus { ES_FAILED = -1, ES_NOFIX = 0, ES_OK = 0, ES_FIX = 1, ES_SUBSUMED = 2, __ES_FIX_PARTIAL = 3, __ES_NOFIX_PARTIAL = 4 } |
Status of constraint propagation and branching commit. More... | |
enum | PropCost { PC_CRAZY_LO = 0, PC_CRAZY_HI = 0, PC_CUBIC_LO = 1, PC_CUBIC_HI = 1, PC_QUADRATIC_LO = 2, PC_QUADRATIC_HI = 2, PC_LINEAR_HI = 3, PC_LINEAR_LO = 4, PC_TERNARY_HI = 5, PC_BINARY_HI = 6, PC_TERNARY_LO = 6, PC_BINARY_LO = 7, PC_UNARY_LO = 7, PC_UNARY_HI = 7, PC_MAX = 7 } |
Classification of propagation cost. More... | |
enum | SpaceStatus { SS_FAILED, SS_SOLVED, SS_BRANCH } |
Space status More... | |
enum | SetRelType { SRT_EQ, SRT_NQ, SRT_SUB, SRT_SUP, SRT_DISJ, SRT_CMPL } |
Common relation types for sets. More... | |
enum | SetOpType { SOT_UNION, SOT_DUNION, SOT_INTER, SOT_MINUS } |
Common operations for sets. More... | |
enum | SetBvarSel { SETBVAR_NONE, SETBVAR_MIN_CARD, SETBVAR_MAX_CARD, SETBVAR_MIN_UNKNOWN_ELEM, SETBVAR_MAX_UNKNOWN_ELEM } |
Which variable to select for branching. More... | |
enum | SetBvalSel { SETBVAL_MIN, SETBVAL_MAX } |
Which values to select first for branching. More... | |
Functions | |
void | abs (Space *home, IntVar x0, IntVar x1, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | max (Space *home, IntVar x0, IntVar x1, IntVar x2, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | max (Space *home, const IntVarArgs &x, IntVar y, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | min (Space *home, IntVar x0, IntVar x1, IntVar x2, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | min (Space *home, const IntVarArgs &x, IntVar y, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | mult (Space *home, IntVar x0, IntVar x1, IntVar x2, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | bool_not (Space *home, BoolVar b0, BoolVar b1, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | bool_eq (Space *home, BoolVar b0, BoolVar b1, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | bool_and (Space *home, BoolVar b0, BoolVar b1, BoolVar b2, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | bool_and (Space *home, BoolVar b0, BoolVar b1, bool b2, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | bool_and (Space *home, const BoolVarArgs &b, BoolVar c, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | bool_and (Space *home, const BoolVarArgs &b, bool c, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | bool_or (Space *home, BoolVar b0, BoolVar b1, BoolVar b2, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | bool_or (Space *home, BoolVar b0, BoolVar b1, bool b2, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | bool_or (Space *home, const BoolVarArgs &b, BoolVar c, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | bool_or (Space *home, const BoolVarArgs &b, bool c, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | bool_imp (Space *home, BoolVar b0, BoolVar b1, BoolVar b2, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | bool_imp (Space *home, BoolVar b0, BoolVar b1, bool b2, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | bool_eqv (Space *home, BoolVar b0, BoolVar b1, BoolVar b2, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | bool_eqv (Space *home, BoolVar b0, BoolVar b1, bool b2, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | bool_xor (Space *home, BoolVar b0, BoolVar b1, BoolVar b2, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | bool_xor (Space *home, BoolVar b0, BoolVar b1, bool b2, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | branch (Space *home, const IntVarArgs &x, BvarSel vars, BvalSel vals) |
Branch over all x with variable selection vars and value selection vals. | |
void | assign (Space *home, const IntVarArgs &x, AvalSel vals) |
Assign all x with value selection vals. | |
void | channel (Space *home, const IntVarArgs &x, const IntVarArgs &y, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() ![]() | |
void | count (Space *home, const IntVarArgs &x, int n, IntRelType r, int m, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | count (Space *home, const IntVarArgs &x, IntVar y, IntRelType r, int m, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | count (Space *home, const IntVarArgs &x, int n, IntRelType r, IntVar z, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | count (Space *home, const IntVarArgs &x, IntVar y, IntRelType r, IntVar z, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | cumulatives (Space *home, const IntVarArgs &machine, const IntVarArgs &start, const IntVarArgs &duration, const IntVarArgs &end, const IntVarArgs &height, const IntArgs &limit, bool at_most, IntConLevel icl=ICL_DEF) |
Post propagators for the cumulatives constraint. | |
void | cumulatives (Space *home, const IntArgs &machine, const IntVarArgs &start, const IntVarArgs &duration, const IntVarArgs &end, const IntVarArgs &height, const IntArgs &limit, bool at_most, IntConLevel icl=ICL_DEF) |
Post propagators for the cumulatives constraint. | |
void | cumulatives (Space *home, const IntVarArgs &machine, const IntVarArgs &start, const IntArgs &duration, const IntVarArgs &end, const IntVarArgs &height, const IntArgs &limit, bool at_most, IntConLevel icl=ICL_DEF) |
Post propagators for the cumulatives constraint. | |
void | cumulatives (Space *home, const IntArgs &machine, const IntVarArgs &start, const IntArgs &duration, const IntVarArgs &end, const IntVarArgs &height, const IntArgs &limit, bool at_most, IntConLevel icl=ICL_DEF) |
Post propagators for the cumulatives constraint. | |
void | cumulatives (Space *home, const IntVarArgs &machine, const IntVarArgs &start, const IntVarArgs &duration, const IntVarArgs &end, const IntArgs &height, const IntArgs &limit, bool at_most, IntConLevel icl=ICL_DEF) |
Post propagators for the cumulatives constraint. | |
void | cumulatives (Space *home, const IntArgs &machine, const IntVarArgs &start, const IntVarArgs &duration, const IntVarArgs &end, const IntArgs &height, const IntArgs &limit, bool at_most, IntConLevel icl=ICL_DEF) |
Post propagators for the cumulatives constraint. | |
void | cumulatives (Space *home, const IntVarArgs &machine, const IntVarArgs &start, const IntArgs &duration, const IntVarArgs &end, const IntArgs &height, const IntArgs &limit, bool at_most, IntConLevel icl=ICL_DEF) |
Post propagators for the cumulatives constraint. | |
void | cumulatives (Space *home, const IntArgs &machine, const IntVarArgs &start, const IntArgs &duration, const IntVarArgs &end, const IntArgs &height, const IntArgs &limit, bool at_most, IntConLevel icl=ICL_DEF) |
Post propagators for the cumulatives constraint. | |
void | distinct (Space *home, const IntVarArgs &x, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() ![]() | |
void | distinct (Space *home, const IntArgs &n, const IntVarArgs &x, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() ![]() | |
void | dom (Space *home, IntVar x, int l, int m, IntConLevel=ICL_DEF) |
Propagates ![]() | |
void | dom (Space *home, IntVarArgs &x, int l, int m, IntConLevel=ICL_DEF) |
Propagates ![]() ![]() | |
void | dom (Space *home, IntVar x, const IntSet &s, IntConLevel=ICL_DEF) |
Propagates ![]() | |
void | dom (Space *home, IntVarArgs &x, const IntSet &s, IntConLevel=ICL_DEF) |
Propagates ![]() ![]() | |
void | dom (Space *home, IntVar x, int l, int m, BoolVar b, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | dom (Space *home, IntVar x, const IntSet &s, BoolVar b, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | element (Space *home, const IntArgs &n, IntVar x0, IntVar x1, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | element (Space *home, const IntVarArgs &x, IntVar y0, IntVar y1, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
template<class View> | |
void | initCV (Space *home, const IntArgs &ia, const ViewArray< View > &x, int l, ViewArray< OccurBndsView > &a, int iasize, int val, int nov, int min, int max, int unspec_low, int unspec_up) |
void | gcc (Space *home, const IntVarArgs &x, const IntArgs &c, int m, int unspec_low, int unspec_up, int min, int max, IntConLevel icl) |
Post propagator for
| |
void | gcc (Space *home, const IntVarArgs &x, const IntArgs &c, int m, int unspec, int min, int max, IntConLevel icl) |
Post propagator for
| |
void | gcc (Space *home, const IntVarArgs &x, int lb, int ub, IntConLevel icl) |
Post propagator for ![]() | |
void | gcc (Space *home, const IntVarArgs &x, int ub, IntConLevel icl) |
Post propagator for ![]() | |
void | gcc (Space *home, const IntVarArgs &x, const IntVarArgs &c, int min, int max, IntConLevel icl) |
Post propagator for
| |
void | gcc (Space *home, const IntVarArgs &x, const IntArgs &v, const IntVarArgs &c, int m, int unspec, bool all, int min, int max, IntConLevel icl) |
Post propagator for ![]() | |
void | gcc (Space *home, const IntVarArgs &x, const IntArgs &v, const IntVarArgs &c, int m, int unspec_low, int unspec_up, bool all, int min, int max, IntConLevel icl) |
Post propagator for ![]() | |
void | linear (Space *home, const IntVarArgs &x, IntRelType r, int c, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | linear (Space *home, const IntVarArgs &x, IntRelType r, int c, BoolVar b, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | linear (Space *home, const IntArgs &a, const IntVarArgs &x, IntRelType r, int c, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | linear (Space *home, const IntArgs &a, const IntVarArgs &x, IntRelType r, int c, BoolVar b, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | linear (Space *home, const IntVarArgs &x, IntRelType r, IntVar y, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | linear (Space *home, const IntVarArgs &x, IntRelType r, IntVar y, BoolVar b, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | linear (Space *home, const IntArgs &a, const IntVarArgs &x, IntRelType r, IntVar y, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | linear (Space *home, const IntArgs &a, const IntVarArgs &x, IntRelType r, IntVar y, BoolVar b, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | linear (Space *home, const BoolVarArgs &x, IntRelType r, int c, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | linear (Space *home, const BoolVarArgs &x, IntRelType r, IntVar y, IntConLevel=ICL_DEF) |
Post propagator for ![]() | |
void | regular (Space *home, const IntVarArgs &x, DFA &d, IntConLevel=ICL_DEF) |
Post propagator for regular constraint. | |
void | rel (Space *home, IntVar x, IntRelType r, int c, IntConLevel icl=ICL_DEF) |
Propagates ![]() | |
void | rel (Space *home, IntVar x0, IntRelType r, IntVar x1, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | rel (Space *home, IntVar x0, IntRelType r, IntVar x1, BoolVar b, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | rel (Space *home, IntVar x, IntRelType r, int c, BoolVar b, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | eq (Space *home, IntVar x0, IntVar x1, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | eq (Space *home, IntVar x, int n, IntConLevel=ICL_DEF) |
Propagates ![]() | |
void | eq (Space *home, IntVar x0, IntVar x1, BoolVar b, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | eq (Space *home, IntVar x, int n, BoolVar b, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | eq (Space *home, const IntVarArgs &x, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | rel (Space *home, const IntVarArgs &x, IntRelType r, const IntVarArgs &y, IntConLevel icl=ICL_DEF) |
Post propagator for relation between x and y. | |
void | sortedness (Space *home, const IntVarArgs &x, const IntVarArgs &y, IntConLevel icl=ICL_DEF) |
Post propagator ![]() | |
void | sortedness (Space *, const IntVarArgs &x, const IntVarArgs &y, const IntVarArgs &z, IntConLevel icl=ICL_DEF) |
Post propagator ![]() . | |
bool | same (const Int::NegBoolView &x, const Int::NegBoolView &y) |
bool | before (const Int::NegBoolView &x, const Int::NegBoolView &y) |
bool | same (const Int::ConstIntView &x, const Int::ConstIntView &y) |
bool | before (const Int::ConstIntView &x, const Int::ConstIntView &y) |
bool | same (const Int::MinusView &x, const Int::MinusView &y) |
bool | before (const Int::MinusView &x, const Int::MinusView &y) |
bool | same (const Int::OffsetView &x, const Int::OffsetView &y) |
bool | before (const Int::OffsetView &x, const Int::OffsetView &y) |
template<class Val, class UnsVal> | |
bool | same (const Int::ScaleView< Val, UnsVal > &x, const Int::ScaleView< Val, UnsVal > &y) |
template<class Val, class UnsVal> | |
bool | before (const Int::ScaleView< Val, UnsVal > &x, const Int::ScaleView< Val, UnsVal > &y) |
template<class View> | |
bool | __before (const View &x, const View &y) |
template<class View> | |
bool | __same (const View &x, const View &y) |
template<class View> | |
bool | __shared (const View &x, const View &y) |
bool | me_failed (ModEvent me) |
Check whether modification event me is failed. | |
bool | me_modified (ModEvent me) |
Check whether modification event me describes variable modification. | |
PropCost | cost_lo (int n, PropCost pc) |
Dynamic low-propagation cost computation. | |
PropCost | cost_hi (int n, PropCost pc) |
Dynamic high-propagation cost computation. | |
bool | shared (const ConstantViewBase &, const ConstantViewBase &) |
Test whether views share same variable. | |
template<class Var> | |
bool | shared (const VariableViewBase< Var > &, const ConstantViewBase &) |
Test whether views share same variable. | |
template<class ViewA> | |
bool | shared (const DerivedViewBase< ViewA > &, const ConstantViewBase &) |
Test whether views share same variable. | |
template<class Var> | |
bool | shared (const ConstantViewBase &, const VariableViewBase< Var > &) |
Test whether views share same variable. | |
template<class ViewA> | |
bool | shared (const ConstantViewBase &, const DerivedViewBase< ViewA > &) |
Test whether views share same variable. | |
template<class VarA, class VarB> | |
bool | shared (const VariableViewBase< VarA > &, const VariableViewBase< VarB > &) |
Test whether views share same variable. | |
template<class VarA, class ViewB> | |
bool | shared (const VariableViewBase< VarA > &, const DerivedViewBase< ViewB > &) |
Test whether views share same variable. | |
template<class ViewA, class VarB> | |
bool | shared (const DerivedViewBase< ViewA > &, const VariableViewBase< VarB > &) |
Test whether views share same variable. | |
template<class ViewA, class ViewB> | |
bool | shared (const DerivedViewBase< ViewA > &, const DerivedViewBase< ViewB > &) |
Test whether views share same variable. | |
template<class Var> | |
bool | same (const VariableViewBase< Var > &x, const VariableViewBase< Var > &y) |
template<class Var> | |
bool | before (const VariableViewBase< Var > &x, const VariableViewBase< Var > &y) |
template<class View> | |
bool | shared (const DerivedViewBase< View > &, const ConstantViewBase &) |
template<class View> | |
bool | shared (const ConstantViewBase &, const DerivedViewBase< View > &) |
template<class View, unsigned int n> | |
bool | same (const ViewTuple< View, n > &x, const ViewTuple< View, n > &y) |
template<class View, unsigned int n> | |
bool | before (const ViewTuple< View, n > &x, const ViewTuple< View, n > &y) |
IntVar | abs (Space *home, IntVar x, IntConLevel icl=ICL_DEF) |
Return variable constrained to ![]() | |
IntVar | min (Space *home, IntVar x, IntVar y, IntConLevel icl=ICL_DEF) |
Return variable constrained to ![]() | |
IntVar | min (Space *home, const IntVarArgs &x, IntConLevel icl=ICL_DEF) |
Return variable constrained to ![]() | |
IntVar | max (Space *home, IntVar x, IntVar y, IntConLevel icl=ICL_DEF) |
Return variable constrained to ![]() | |
IntVar | max (Space *home, const IntVarArgs &x, IntConLevel icl=ICL_DEF) |
Return variable constrained to ![]() | |
IntVar | mult (Space *home, IntVar x, IntVar y, IntConLevel icl=ICL_DEF) |
Return variable constrained to ![]() | |
IntVar | sqr (Space *home, IntVar x, IntConLevel icl=ICL_DEF) |
Return variable constrained to ![]() | |
IntVar | plus (Space *home, IntVar x, IntVar y, IntConLevel icl=ICL_DEF) |
Return variable constrained to ![]() | |
IntVar | minus (Space *home, IntVar x, IntVar y, IntConLevel icl=ICL_DEF) |
Return variable constrained to ![]() | |
MiniModel::BoolExpr | eqv (const MiniModel::BoolExpr &, const MiniModel::BoolExpr &) |
Equivalence of Boolean expressions. | |
MiniModel::BoolExpr | imp (const MiniModel::BoolExpr &, const MiniModel::BoolExpr &) |
Implication of Boolean expressions. | |
BoolVar | post (Space *home, const MiniModel::BoolExpr &e, IntConLevel icl=ICL_DEF) |
Post Boolean expression and return its value. | |
BoolVar | post (Space *home, const BoolVar &b, IntConLevel icl=ICL_DEF) |
Post Boolean expression (special case for variable) and return its value. | |
MiniModel::BoolRel | tt (const MiniModel::BoolExpr &) |
State that Boolean expression must be true. | |
MiniModel::BoolRel | ff (const MiniModel::BoolExpr &) |
State that Boolean expression must be false. | |
void | post (Space *home, const MiniModel::BoolRel &r, IntConLevel icl=ICL_DEF) |
Post Boolean relation. | |
IntVar | post (Space *home, const IntVar &x, IntConLevel icl=ICL_DEF) |
Post linear expression (special case for variable) and return its value. | |
IntVar | post (Space *home, int n, IntConLevel icl=ICL_DEF) |
Post linear expression (special case for constant) and return its value. | |
IntVar | post (Space *home, const MiniModel::LinExpr &e, IntConLevel icl=ICL_DEF) |
Post linear expression and return its value. | |
void | post (Space *home, const MiniModel::LinRel &r, IntConLevel icl=ICL_DEF) |
Post linear relation. | |
void | post (Space *home, bool r, IntConLevel icl=ICL_DEF) |
Make it work for special integer only-case. | |
void | producer_consumer (Space *home, const IntVarArgs &produce_date, const IntArgs &produce_amount, const IntVarArgs &consume_date, const IntArgs &consume_amount, int initial, IntConLevel icl=ICL_DEF) |
Creates propagator for a producer-consumer constraint. | |
void | cumulative (Space *home, const IntVarArgs &start, const IntVarArgs &duration, const IntVarArgs &height, int limit, bool at_most=true, IntConLevel cl=ICL_DEF) |
Creates propagator for the cumulative constraint. | |
void | cumulative (Space *home, const IntVarArgs &start, const IntArgs &duration, const IntVarArgs &height, int limit, bool at_most=true, IntConLevel cl=ICL_DEF) |
Creates propagator for the cumulative constraint. | |
void | cumulative (Space *home, const IntVarArgs &start, const IntVarArgs &duration, const IntArgs &height, int limit, bool at_most=true, IntConLevel cl=ICL_DEF) |
Creates propagator for the cumulative constraint. | |
void | cumulative (Space *home, const IntVarArgs &start, const IntArgs &duration, const IntArgs &height, int limit, bool at_most=true, IntConLevel cl=ICL_DEF) |
Creates propagator for the cumulative constraint. | |
void | serialized (Space *home, const IntVarArgs &start, const IntVarArgs &duration, IntConLevel cl=ICL_DEF) |
Creates propagator for the serialized constraint. | |
void | serialized (Space *home, const IntVarArgs &start, const IntArgs &duration, IntConLevel cl=ICL_DEF) |
Creates propagator for the serialized constraint. | |
void | atmost (Space *home, const IntVarArgs &x, int n, int m, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | atmost (Space *home, const IntVarArgs &x, IntVar y, int m, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | atmost (Space *home, const IntVarArgs &x, int n, IntVar z, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | atmost (Space *home, const IntVarArgs &x, IntVar y, IntVar z, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | atleast (Space *home, const IntVarArgs &x, int n, int m, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | atleast (Space *home, const IntVarArgs &x, IntVar y, int m, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | atleast (Space *home, const IntVarArgs &x, int n, IntVar z, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | atleast (Space *home, const IntVarArgs &x, IntVar y, IntVar z, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | exactly (Space *home, const IntVarArgs &x, int n, int m, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | exactly (Space *home, const IntVarArgs &x, IntVar y, int m, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | exactly (Space *home, const IntVarArgs &x, int n, IntVar z, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | exactly (Space *home, const IntVarArgs &x, IntVar y, IntVar z, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | lex (Space *home, const IntVarArgs &x, IntRelType r, const IntVarArgs &y, IntConLevel icl=ICL_DEF) |
Post propagator for lexical order between x and y. | |
template<class T> | |
T * | bab (T *s, unsigned int c_d=Search::Config::c_d, unsigned int a_d=Search::Config::a_d, Search::Stop *st=NULL) |
Perform depth-first branch-and-bound search. | |
template<class T> | |
T * | dfs (T *s, unsigned int c_d=Search::Config::c_d, unsigned int a_d=Search::Config::a_d, Search::Stop *st=NULL) |
Invoke depth-first search engine. | |
template<class T> | |
T * | lds (T *s, unsigned int d, Search::Stop *st=NULL) |
Invoke limited-discrepancy search. | |
template<class T> | |
T * | restart (T *s, unsigned int c_d=Search::Config::c_d, unsigned int a_d=Search::Config::a_d, Search::Stop *st=NULL) |
Perform depth-first restart best solution search. | |
void | branch (Space *home, const SetVarArgs &x, SetBvarSel vars, SetBvalSel vals) |
Branch over all x with variable selection vars and value selection vals. | |
void | cardinality (Space *home, SetVar x, unsigned int i, unsigned int j) |
Propagates ![]() | |
void | cardinality (Space *home, SetVar s, IntVar x) |
Post propagator for ![]() | |
void | convex (Space *home, SetVar x) |
Post propagator that propagates that x is convex. | |
void | convexHull (Space *home, SetVar x, SetVar y) |
Post propagator that propagates that y is the convex hull of x. | |
void | atmostOne (Space *home, const SetVarArgs &x, unsigned int c) |
Post propagator for ![]() ![]() | |
void | distinct (Space *home, const SetVarArgs &x, unsigned int c) |
Post propagator for ![]() ![]() | |
void | dom (Space *home, SetVar x, SetRelType r, int i) |
Propagates ![]() | |
void | dom (Space *home, SetVar x, SetRelType r, int i, int j) |
Propagates ![]() | |
void | dom (Space *home, SetVar x, SetRelType r, const IntSet &s) |
Propagates ![]() | |
void | dom (Space *home, SetVar x, SetRelType r, int i, BoolVar b) |
Post propagator for ![]() | |
void | dom (Space *home, SetVar x, SetRelType r, int i, int j, BoolVar b) |
Post propagator for ![]() | |
void | dom (Space *home, SetVar x, SetRelType r, const IntSet &s, BoolVar b) |
Post propagator for ![]() | |
void | rel (Space *home, SetVar s, IntRelType r, IntVar x) |
Post propagator for ![]() | |
void | rel (Space *home, IntVar x, IntRelType r, SetVar s) |
Post propagator for ![]() | |
void | min (Space *home, SetVar s, IntVar x) |
Post propagator that propagates that x is the minimal element of s. | |
void | max (Space *home, SetVar s, IntVar x) |
Post propagator that propagates that x is the maximal element of s. | |
void | match (Space *home, SetVar s, const IntVarArgs &x) |
Post propagator that propagates that s contains the ![]() | |
void | channel (Space *home, const IntVarArgs &x, const SetVarArgs &y) |
Post propagator for ![]() | |
void | weights (Space *home, const IntArgs &elements, const IntArgs &weights, SetVar x, IntVar y) |
Post propagator for ![]() | |
std::ostream & | operator<< (std::ostream &os, const ProjectorCompiler::Indent &indent) |
void | codeScope (Support::DynamicArray< int > &s, const SetExprCode &c, bool monotone) |
Iter::Ranges::Virt::Iterator * | codeToIterator (const ViewArray< Set::SetView > &x, const SetExprCode &c, bool monotone) |
template<class View0, class View1> | |
bool | viewarrayshared (const ViewArray< View0 > &va, const View1 &y) |
template<> | |
bool | viewarrayshared< Set::SingletonView, Set::SetView > (const ViewArray< Set::SingletonView > &va, const Set::SetView &y) |
void | rel (Space *home, const IntSet &x, SetOpType op, SetVar y, SetRelType r, SetVar z) |
Post propagator for ![]() | |
void | rel (Space *home, SetVar x, SetOpType op, const IntSet &y, SetRelType r, SetVar z) |
Post propagator for ![]() | |
void | rel (Space *home, SetVar x, SetOpType op, SetVar y, SetRelType r, const IntSet &z) |
Post propagator for ![]() | |
void | rel (Space *home, const IntSet &x, SetOpType op, const IntSet &y, SetRelType r, SetVar z) |
Post propagator for ![]() | |
void | rel (Space *home, const IntSet &x, SetOpType op, SetVar y, SetRelType r, const IntSet &z) |
Post propagator for ![]() | |
void | rel (Space *home, SetVar x, SetOpType op, const IntSet &y, SetRelType r, const IntSet &z) |
Post propagator for ![]() | |
void | rel (Space *home, SetVar x, SetOpType op, SetVar y, SetRelType r, SetVar z) |
Post propagator for ![]() | |
void | rel (Space *home, SetOpType op, const SetVarArgs &x, SetVar y) |
Post propagator for ![]() | |
void | rel (Space *home, SetOpType op, const IntVarArgs &x, SetVar y) |
Post propagator for ![]() | |
template<class View0, class View1> | |
void | rel_post (Space *home, View0 x0, SetRelType r, View1 x1) |
template<class View0, class View1> | |
void | rel_re (Space *home, View0 x, SetRelType r, View1 y, BoolVar b) |
void | rel (Space *home, SetVar x, SetRelType r, SetVar y) |
Post propagator for ![]() | |
void | rel (Space *home, SetVar s, SetRelType r, IntVar x) |
Post propagator for ![]() | |
void | rel (Space *home, IntVar x, SetRelType r, SetVar s) |
Post propagator for ![]() | |
void | rel (Space *home, SetVar x, SetRelType r, SetVar y, BoolVar b) |
Post propagator for ![]() | |
void | rel (Space *home, SetVar s, SetRelType r, IntVar x, BoolVar b) |
Post propagator for ![]() | |
void | rel (Space *home, IntVar x, SetRelType r, SetVar s, BoolVar b) |
Post propagator for ![]() | |
void | selectUnion (Space *home, const SetVarArgs &x, SetVar y, SetVar z) |
Post propagator for ![]() | |
void | selectInter (Space *home, const SetVarArgs &x, SetVar y, SetVar z) |
void | selectInterIn (Space *home, const SetVarArgs &x, SetVar y, SetVar z, const IntSet &universe) |
void | selectSet (Space *home, const SetVarArgs &x, IntVar y, SetVar z) |
Post propagator for ![]() | |
void | selectDisjoint (Space *home, const SetVarArgs &x, SetVar y) |
Post propagator for ![]() | |
void | sequence (Space *home, const SetVarArgs &x) |
Post propagator for ![]() | |
void | sequentialUnion (Space *home, const SetVarArgs &y, SetVar x) |
Post propagator for ![]() ![]() | |
template<class View> | |
bool | same (const Set::ComplementView< View > &x, const Set::ComplementView< View > &y) |
template<class View> | |
bool | before (const Set::ComplementView< View > &x, const Set::ComplementView< View > &y) |
template<class View> | |
bool | same (const Set::ComplementView< Set::ComplementView< View > > &x, const Set::ComplementView< Set::ComplementView< View > > &y) |
template<class View> | |
bool | before (const Set::ComplementView< Set::ComplementView< View > > &x, const Set::ComplementView< Set::ComplementView< View > > &y) |
bool | same (const Set::ConstantView &x, const Set::ConstantView &y) |
bool | before (const Set::ConstantView &x, const Set::ConstantView &y) |
bool | same (const Set::EmptyView &, const Set::EmptyView &) |
bool | before (const Set::EmptyView &, const Set::EmptyView &) |
bool | same (const Set::UniverseView &, const Set::UniverseView &) |
bool | before (const Set::UniverseView &, const Set::UniverseView &) |
bool | same (const Set::SingletonView &x, const Set::SingletonView &y) |
bool | before (const Set::SingletonView &x, const Set::SingletonView &y) |
Variables | |
const ModEvent | ME_GEN_FAILED = -1 |
Generic modification event: failed variable. | |
const ModEvent | ME_GEN_NONE = 0 |
Generic modification event: no modification. | |
const ModEvent | ME_GEN_ASSIGNED = 1 |
Generic modification event: variable is assigned a value. | |
const ModEvent | ME_GEN_MAX = 15 |
Generic modification event: maximal modification event. | |
const PropCond | PC_GEN_ASSIGNED = 0 |
Propagation condition for an assigned variable. | |
const PropCond | PC_GEN_MAX = 15 |
Propagation conditions must be between 0 and 15. |
Function Documentation
|
|
|
|
|
|
|
Definition at line 295 of file constint.icc. |
|
Definition at line 299 of file constint.icc. |
|
|
|
|
|
Definition at line 262 of file offset.icc. |
|
Definition at line 266 of file offset.icc. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Equivalence of Boolean expressions.
Definition at line 162 of file bool-expr.icc. |
|
Implication of Boolean expressions.
Definition at line 170 of file bool-expr.icc. |
|
State that Boolean expression must be true.
Definition at line 46 of file bool-rel.icc. |
|
State that Boolean expression must be false.
Definition at line 50 of file bool-rel.icc. |
|
Perform depth-first restart best solution search.
Definition at line 65 of file restart.icc. |
|
Definition at line 40 of file compiler.cc. |
|
Definition at line 31 of file projector.cc. |
|
Definition at line 221 of file set-expr.cc. |
|
Definition at line 32 of file common.icc. |
|
|
|
|
|
|
|
Definition at line 493 of file complement.icc. |
|
Definition at line 499 of file complement.icc. |
|
Definition at line 505 of file complement.icc. |
|
Definition at line 511 of file complement.icc. |
|
|
|
|
|
|
|
|
|
|
|
|
|
Definition at line 336 of file singleton.icc. |
|
Definition at line 340 of file singleton.icc. |