int.hh File Reference
(Revision: 12537)
#include <climits>
#include <cfloat>
#include <iostream>
#include <vector>
#include <gecode/kernel.hh>
#include <gecode/iter.hh>
#include <gecode/support/auto-link.hpp>
#include <gecode/int/exception.hpp>
#include <gecode/int/limits.hpp>
#include <gecode/int/int-set-1.hpp>
#include <gecode/int/var-imp.hpp>
#include <gecode/int/view.hpp>
#include <gecode/int/propagator.hpp>
#include <gecode/int/array-traits.hpp>
#include <gecode/int/int-set-2.hpp>
#include <gecode/int/array.hpp>
#include <gecode/int/extensional/dfa.hpp>
#include <gecode/int/extensional/tuple-set.hpp>
Go to the source code of this file.
Classes | |
class | Gecode::IntSet |
Integer sets. More... | |
class | Gecode::IntSetRanges |
Range iterator for integer sets. More... | |
class | Gecode::IntSetValues |
Value iterator for integer sets. More... | |
class | Gecode::IntVar |
Integer variables. More... | |
class | Gecode::IntVarRanges |
Range iterator for integer variables More... | |
class | Gecode::IntVarValues |
Value iterator for integer variables. More... | |
class | Gecode::BoolVar |
Boolean integer variables. More... | |
class | Gecode::IntArgs |
Passing integer arguments. More... | |
class | Gecode::IntVarArgs |
Passing integer variables. More... | |
class | Gecode::BoolVarArgs |
Passing Boolean variables. More... | |
class | Gecode::IntVarArray |
Integer variable array. More... | |
class | Gecode::BoolVarArray |
Boolean variable array. More... | |
class | Gecode::ArrayTraits< PrimArgArray< TaskType > > |
Traits of TaskTypeArgs. More... | |
class | Gecode::DFA |
Deterministic finite automaton (DFA). More... | |
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::TupleSet |
Class represeting a set of tuples. More... | |
class | Gecode::TupleSet::TupleSetI |
Data stored for a Table. More... | |
Namespaces | |
namespace | Gecode::Int |
Finite domain integers. | |
namespace | Gecode |
Gecode toplevel namespace | |
namespace | Gecode::Int::Limits |
Numerical limits for integer variables. | |
Defines | |
#define | GECODE_INT_EXPORT |
#define | GECODE_LIBRARY_NAME "Int" |
Typedefs | |
typedef ArgArray< IntSet > | Gecode::IntSetArgs |
Passing set arguments. | |
typedef PrimArgArray< TaskType > | Gecode::TaskTypeArgs |
Argument arrays for passing task type arguments. | |
typedef SharedArray< int > | Gecode::IntSharedArray |
Arrays of integers that can be shared among several element constraints. | |
Enumerations | |
enum | Gecode::IntRelType { Gecode::IRT_EQ, Gecode::IRT_NQ, Gecode::IRT_LQ, Gecode::IRT_LE, Gecode::IRT_GQ, Gecode::IRT_GR } |
Relation types for integers. More... | |
enum | Gecode::BoolOpType { Gecode::BOT_AND, Gecode::BOT_OR, Gecode::BOT_IMP, Gecode::BOT_EQV, Gecode::BOT_XOR } |
Operation types for Booleans. More... | |
enum | Gecode::IntConLevel { Gecode::ICL_VAL, Gecode::ICL_BND, Gecode::ICL_DOM, Gecode::ICL_DEF } |
Consistency levels for integer propagators. More... | |
enum | Gecode::TaskType { Gecode::TT_FIXP, Gecode::TT_FIXS, Gecode::TT_FIXE } |
Type of task for scheduling constraints. More... | |
enum | Gecode::ExtensionalPropKind { Gecode::EPK_DEF, Gecode::EPK_SPEED, Gecode::EPK_MEMORY } |
Extensional propagation kind. More... | |
enum | Gecode::IntVarBranch { Gecode::INT_VAR_NONE = 0, Gecode::INT_VAR_RND, Gecode::INT_VAR_DEGREE_MIN, Gecode::INT_VAR_DEGREE_MAX, Gecode::INT_VAR_AFC_MIN, Gecode::INT_VAR_AFC_MAX, Gecode::INT_VAR_MIN_MIN, Gecode::INT_VAR_MIN_MAX, Gecode::INT_VAR_MAX_MIN, Gecode::INT_VAR_MAX_MAX, Gecode::INT_VAR_SIZE_MIN, Gecode::INT_VAR_SIZE_MAX, Gecode::INT_VAR_SIZE_DEGREE_MIN, Gecode::INT_VAR_SIZE_DEGREE_MAX, Gecode::INT_VAR_SIZE_AFC_MIN, Gecode::INT_VAR_SIZE_AFC_MAX, Gecode::INT_VAR_REGRET_MIN_MIN, Gecode::INT_VAR_REGRET_MIN_MAX, Gecode::INT_VAR_REGRET_MAX_MIN, Gecode::INT_VAR_REGRET_MAX_MAX } |
Which variable to select for branching. More... | |
enum | Gecode::IntValBranch { Gecode::INT_VAL_MIN, Gecode::INT_VAL_MED, Gecode::INT_VAL_MAX, Gecode::INT_VAL_RND, Gecode::INT_VAL_SPLIT_MIN, Gecode::INT_VAL_SPLIT_MAX, Gecode::INT_VAL_RANGE_MIN, Gecode::INT_VAL_RANGE_MAX, Gecode::INT_VALUES_MIN, Gecode::INT_VALUES_MAX } |
Which values to select first for branching. More... | |
enum | Gecode::IntAssign { Gecode::INT_ASSIGN_MIN, Gecode::INT_ASSIGN_MED, Gecode::INT_ASSIGN_MAX, Gecode::INT_ASSIGN_RND } |
Which value to select for assignment. More... | |
Functions | |
bool | Gecode::Int::Limits::valid (int n) |
Return whether integer n is in range. | |
bool | Gecode::Int::Limits::valid (double n) |
Return whether double n is in range. | |
void | Gecode::Int::Limits::check (int n, const char *l) |
Check whether integer n is in range, otherwise throw out of limits with information l. | |
void | Gecode::Int::Limits::check (double n, const char *l) |
Check whether double n is in integer range, otherwise throw out of limits exception with information l. | |
void | Gecode::Int::Limits::positive (int n, const char *l) |
Check whether integer n is in range and strictly positive, otherwise throw out of limits with information l. | |
void | Gecode::Int::Limits::positive (double n, const char *l) |
Check whether double n is in integer range and strictly postive, otherwise throw out of limits exception with information l. | |
void | Gecode::Int::Limits::nonnegative (int n, const char *l) |
Check whether integer n is in range and nonnegative, otherwise throw out of limits with information l. | |
void | Gecode::Int::Limits::nonnegative (double n, const char *l) |
Check whether double n is in integer range and nonnegative, otherwise throw out of limits exception with information l. | |
void | Gecode::Int::Limits::double_check (double n, const char *l) |
Check whether double n is in exactly representable range, otherwise throw out of limits with information l. | |
void | Gecode::dom (Home home, IntVar x, int n, IntConLevel icl=ICL_DEF) |
Propagates ![]() | |
void | Gecode::dom (Home home, const IntVarArgs &x, int n, IntConLevel icl=ICL_DEF) |
Propagates ![]() ![]() | |
void | Gecode::dom (Home home, IntVar x, int l, int m, IntConLevel icl=ICL_DEF) |
Propagates ![]() | |
void | Gecode::dom (Home home, const IntVarArgs &x, int l, int m, IntConLevel icl=ICL_DEF) |
Propagates ![]() ![]() | |
void | Gecode::dom (Home home, IntVar x, const IntSet &s, IntConLevel icl=ICL_DEF) |
Propagates ![]() | |
void | Gecode::dom (Home home, const IntVarArgs &x, const IntSet &s, IntConLevel icl=ICL_DEF) |
Propagates ![]() ![]() | |
void | Gecode::dom (Home home, IntVar x, int n, BoolVar b, IntConLevel icl=ICL_DEF) |
Post domain consistent propagator for ![]() | |
void | Gecode::dom (Home home, IntVar x, int l, int m, BoolVar b, IntConLevel icl=ICL_DEF) |
Post domain consistent propagator for ![]() | |
void | Gecode::dom (Home home, IntVar x, const IntSet &s, BoolVar b, IntConLevel icl=ICL_DEF) |
Post domain consistent propagator for ![]() | |
void | Gecode::rel (Home home, IntVar x0, IntRelType r, IntVar x1, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::rel (Home home, const IntVarArgs &x, IntRelType r, IntVar y, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() ![]() | |
void | Gecode::rel (Home home, IntVar x, IntRelType r, int c, IntConLevel icl=ICL_DEF) |
Propagates ![]() | |
void | Gecode::rel (Home home, const IntVarArgs &x, IntRelType r, int c, IntConLevel icl=ICL_DEF) |
Propagates ![]() ![]() | |
void | Gecode::rel (Home home, IntVar x0, IntRelType r, IntVar x1, BoolVar b, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::rel (Home home, IntVar x, IntRelType r, int c, BoolVar b, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::rel (Home home, const IntVarArgs &x, IntRelType r, IntConLevel icl=ICL_DEF) |
Post propagator for relation among elements in x. | |
void | Gecode::rel (Home home, const IntVarArgs &x, IntRelType r, const IntVarArgs &y, IntConLevel icl=ICL_DEF) |
Post propagator for relation between x and y. | |
void | Gecode::rel (Home home, BoolVar x0, IntRelType r, BoolVar x1, IntConLevel icl=ICL_DEF) |
Post domain consistent propagator for ![]() | |
void | Gecode::rel (Home home, BoolVar x0, IntRelType r, BoolVar x1, BoolVar b, IntConLevel icl=ICL_DEF) |
Post domain consistent propagator for ![]() | |
void | Gecode::rel (Home home, const BoolVarArgs &x, IntRelType r, BoolVar y, IntConLevel icl=ICL_DEF) |
Post doamin consistent propagator for ![]() ![]() | |
void | Gecode::rel (Home home, BoolVar x, IntRelType r, int n, IntConLevel icl=ICL_DEF) |
Propagates ![]() | |
void | Gecode::rel (Home home, BoolVar x, IntRelType r, int n, BoolVar b, IntConLevel icl=ICL_DEF) |
Post domain consistent propagator for ![]() | |
void | Gecode::rel (Home home, const BoolVarArgs &x, IntRelType r, int n, IntConLevel icl=ICL_DEF) |
Propagates ![]() ![]() | |
void | Gecode::rel (Home home, const BoolVarArgs &x, IntRelType r, const BoolVarArgs &y, IntConLevel icl=ICL_DEF) |
Post domain consistent propagator for relation between x and y. | |
void | Gecode::rel (Home home, const BoolVarArgs &x, IntRelType r, IntConLevel icl=ICL_DEF) |
Post domain consistent propagator for relation between elements in x. | |
void | Gecode::rel (Home home, BoolVar x0, BoolOpType o, BoolVar x1, BoolVar x2, IntConLevel icl=ICL_DEF) |
Post domain consistent propagator for Boolean operation on x0 and x1. | |
void | Gecode::rel (Home home, BoolVar x0, BoolOpType o, BoolVar x1, int n, IntConLevel icl=ICL_DEF) |
Post domain consistent propagator for Boolean operation on x0 and x1. | |
void | Gecode::rel (Home home, BoolOpType o, const BoolVarArgs &x, BoolVar y, IntConLevel icl=ICL_DEF) |
Post domain consistent propagator for Boolean operation on x. | |
void | Gecode::rel (Home home, BoolOpType o, const BoolVarArgs &x, int n, IntConLevel icl=ICL_DEF) |
Post domain consistent propagator for Boolean operation on x. | |
void | Gecode::clause (Home home, BoolOpType o, const BoolVarArgs &x, const BoolVarArgs &y, BoolVar z, IntConLevel icl=ICL_DEF) |
Post domain consistent propagator for Boolean clause with positive variables x and negative variables y. | |
void | Gecode::clause (Home home, BoolOpType o, const BoolVarArgs &x, const BoolVarArgs &y, int n, IntConLevel icl=ICL_DEF) |
Post domain consistent propagator for Boolean clause with positive variables x and negative variables y. | |
void | Gecode::precede (Home home, const IntVarArgs &x, int s, int t, IntConLevel=ICL_DEF) |
Post propagator that s precedes t in x. | |
void | Gecode::precede (Home home, const IntVarArgs &x, const IntArgs &c, IntConLevel=ICL_DEF) |
Post propagator that successive values in c precede each other in x. | |
void | Gecode::member (Home home, const IntVarArgs &x, IntVar y, IntConLevel icl=ICL_DEF) |
Post domain consistent propagator for ![]() | |
void | Gecode::member (Home home, const BoolVarArgs &x, BoolVar y, IntConLevel icl=ICL_DEF) |
Post domain consistent propagator for ![]() | |
void | Gecode::member (Home home, const IntVarArgs &x, IntVar y, BoolVar b, IntConLevel icl=ICL_DEF) |
Post domain consistent propagator for ![]() | |
void | Gecode::member (Home home, const BoolVarArgs &x, BoolVar y, BoolVar b, IntConLevel icl=ICL_DEF) |
Post domain consistent propagator for ![]() | |
void | Gecode::element (Home home, IntSharedArray n, IntVar x0, IntVar x1, IntConLevel icl=ICL_DEF) |
Post domain consistent propagator for ![]() | |
void | Gecode::element (Home home, IntSharedArray n, IntVar x0, BoolVar x1, IntConLevel icl=ICL_DEF) |
Post domain consistent propagator for ![]() | |
void | Gecode::element (Home home, IntSharedArray n, IntVar x0, int x1, IntConLevel icl=ICL_DEF) |
Post domain consistent propagator for ![]() | |
void | Gecode::element (Home home, const IntVarArgs &x, IntVar y0, IntVar y1, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::element (Home home, const IntVarArgs &x, IntVar y0, int y1, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::element (Home home, const BoolVarArgs &x, IntVar y0, BoolVar y1, IntConLevel icl=ICL_DEF) |
Post domain consistent propagator for ![]() | |
void | Gecode::element (Home home, const BoolVarArgs &x, IntVar y0, int y1, IntConLevel icl=ICL_DEF) |
Post domain consistent propagator for ![]() | |
void | Gecode::element (Home home, IntSharedArray a, IntVar x, int w, IntVar y, int h, IntVar z, IntConLevel icl=ICL_DEF) |
Post domain consistent propagator for ![]() | |
void | Gecode::element (Home home, IntSharedArray a, IntVar x, int w, IntVar y, int h, BoolVar z, IntConLevel icl=ICL_DEF) |
Post domain consistent propagator for ![]() | |
void | Gecode::element (Home home, const IntVarArgs &a, IntVar x, int w, IntVar y, int h, IntVar z, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::element (Home home, const BoolVarArgs &a, IntVar x, int w, IntVar y, int h, BoolVar z, IntConLevel icl=ICL_DEF) |
Post domain consistent propagator for ![]() | |
void | Gecode::distinct (Home home, const IntVarArgs &x, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() ![]() | |
void | Gecode::distinct (Home home, const IntArgs &n, const IntVarArgs &x, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() ![]() | |
void | Gecode::channel (Home home, const IntVarArgs &x, const IntVarArgs &y, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() ![]() | |
void | Gecode::channel (Home home, const IntVarArgs &x, int xoff, const IntVarArgs &y, int yoff, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() ![]() | |
void | Gecode::channel (Home home, BoolVar x0, IntVar x1, IntConLevel icl=ICL_DEF) |
Post domain consistent propagator for channeling a Boolean and an integer variable ![]() | |
void | Gecode::channel (Home home, IntVar x0, BoolVar x1, IntConLevel icl=ICL_DEF) |
Post domain consistent propagator for channeling an integer and a Boolean variable ![]() | |
void | Gecode::channel (Home home, const BoolVarArgs &x, IntVar y, int o=0, IntConLevel icl=ICL_DEF) |
Post domain consistent propagator for channeling Boolean and integer variables ![]() | |
void | Gecode::sorted (Home home, const IntVarArgs &x, const IntVarArgs &y, IntConLevel icl=ICL_DEF) |
Post propagator that y is x sorted in increasing order. | |
void | Gecode::sorted (Home home, const IntVarArgs &x, const IntVarArgs &y, const IntVarArgs &z, IntConLevel icl=ICL_DEF) |
Post propagator that y is x sorted in increasing order. | |
void | Gecode::count (Home home, const IntVarArgs &x, int n, IntRelType r, int m, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::count (Home home, const IntVarArgs &x, const IntSet &y, IntRelType r, int m, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::count (Home home, const IntVarArgs &x, IntVar y, IntRelType r, int m, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::count (Home home, const IntVarArgs &x, const IntArgs &y, IntRelType r, int m, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::count (Home home, const IntVarArgs &x, int n, IntRelType r, IntVar z, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::count (Home home, const IntVarArgs &x, const IntSet &y, IntRelType r, IntVar z, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::count (Home home, const IntVarArgs &x, IntVar y, IntRelType r, IntVar z, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::count (Home home, const IntVarArgs &x, const IntArgs &y, IntRelType r, IntVar z, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::count (Home home, const IntVarArgs &x, const IntVarArgs &c, IntConLevel icl=ICL_DEF) |
Posts a global count (cardinality) constraint. | |
void | Gecode::count (Home home, const IntVarArgs &x, const IntSetArgs &c, IntConLevel icl=ICL_DEF) |
Posts a global count (cardinality) constraint. | |
void | Gecode::count (Home home, const IntVarArgs &x, const IntVarArgs &c, const IntArgs &v, IntConLevel icl=ICL_DEF) |
Posts a global count (cardinality) constraint. | |
void | Gecode::count (Home home, const IntVarArgs &x, const IntSetArgs &c, const IntArgs &v, IntConLevel icl=ICL_DEF) |
Posts a global count (cardinality) constraint. | |
void | Gecode::count (Home home, const IntVarArgs &x, const IntSet &c, const IntArgs &v, IntConLevel icl=ICL_DEF) |
Posts a global count (cardinality) constraint. | |
void | Gecode::nvalues (Home home, const IntVarArgs &x, IntRelType r, int y, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::nvalues (Home home, const IntVarArgs &x, IntRelType r, IntVar y, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::nvalues (Home home, const BoolVarArgs &x, IntRelType r, int y, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::nvalues (Home home, const BoolVarArgs &x, IntRelType r, IntVar y, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::sequence (Home home, const IntVarArgs &x, const IntSet &s, int q, int l, int u, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::sequence (Home home, const BoolVarArgs &x, const IntSet &s, int q, int l, int u, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
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. | |
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. | |
void | Gecode::extensional (Home home, const IntVarArgs &x, const TupleSet &t, ExtensionalPropKind epk=EPK_DEF, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::extensional (Home home, const BoolVarArgs &x, const TupleSet &t, ExtensionalPropKind epk=EPK_DEF, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::min (Home home, IntVar x0, IntVar x1, IntVar x2, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::min (Home home, const IntVarArgs &x, IntVar y, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::max (Home home, IntVar x0, IntVar x1, IntVar x2, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::max (Home home, const IntVarArgs &x, IntVar y, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::abs (Home home, IntVar x0, IntVar x1, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::mult (Home home, IntVar x0, IntVar x1, IntVar x2, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::sqr (Home home, IntVar x0, IntVar x1, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::sqrt (Home home, IntVar x0, IntVar x1, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::divmod (Home home, IntVar x0, IntVar x1, IntVar x2, IntVar x3, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::div (Home home, IntVar x0, IntVar x1, IntVar x2, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::mod (Home home, IntVar x0, IntVar x1, IntVar x2, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::linear (Home home, const IntVarArgs &x, IntRelType r, int c, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::linear (Home home, const IntVarArgs &x, IntRelType r, IntVar y, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::linear (Home home, const IntVarArgs &x, IntRelType r, int c, BoolVar b, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::linear (Home home, const IntVarArgs &x, IntRelType r, IntVar y, BoolVar b, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::linear (Home home, const IntArgs &a, const IntVarArgs &x, IntRelType r, int c, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::linear (Home home, const IntArgs &a, const IntVarArgs &x, IntRelType r, IntVar y, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::linear (Home home, const IntArgs &a, const IntVarArgs &x, IntRelType r, int c, BoolVar b, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::linear (Home home, const IntArgs &a, const IntVarArgs &x, IntRelType r, IntVar y, BoolVar b, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::linear (Home home, const BoolVarArgs &x, IntRelType r, int c, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::linear (Home home, const BoolVarArgs &x, IntRelType r, int c, BoolVar b, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::linear (Home home, const BoolVarArgs &x, IntRelType r, IntVar y, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::linear (Home home, const BoolVarArgs &x, IntRelType r, IntVar y, BoolVar b, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::linear (Home home, const IntArgs &a, const BoolVarArgs &x, IntRelType r, int c, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::linear (Home home, const IntArgs &a, const BoolVarArgs &x, IntRelType r, int c, BoolVar b, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::linear (Home home, const IntArgs &a, const BoolVarArgs &x, IntRelType r, IntVar y, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::linear (Home home, const IntArgs &a, const BoolVarArgs &x, IntRelType r, IntVar y, BoolVar b, IntConLevel icl=ICL_DEF) |
Post propagator for ![]() | |
void | Gecode::binpacking (Home home, const IntVarArgs &l, const IntVarArgs &b, const IntArgs &s, IntConLevel icl=ICL_DEF) |
Post propagator for bin packing. | |
void | Gecode::nooverlap (Home home, const IntVarArgs &x, const IntArgs &w, const IntVarArgs &y, const IntArgs &h, IntConLevel icl=ICL_DEF) |
Post propagator for rectangle packing. | |
void | Gecode::nooverlap (Home home, const IntVarArgs &x, const IntArgs &w, const IntVarArgs &y, const IntArgs &h, const BoolVarArgs &o, IntConLevel icl=ICL_DEF) |
Post propagator for rectangle packing. | |
void | Gecode::nooverlap (Home home, const IntVarArgs &x0, const IntVarArgs &w, const IntVarArgs &x1, const IntVarArgs &y0, const IntVarArgs &h, const IntVarArgs &y1, IntConLevel icl=ICL_DEF) |
Post propagator for rectangle packing. | |
void | Gecode::nooverlap (Home home, const IntVarArgs &x0, const IntVarArgs &w, const IntVarArgs &x1, const IntVarArgs &y0, const IntVarArgs &h, const IntVarArgs &y1, const BoolVarArgs &o, IntConLevel icl=ICL_DEF) |
Post propagator for rectangle packing. | |
void | Gecode::cumulatives (Home home, const IntVarArgs &m, const IntVarArgs &s, const IntVarArgs &p, const IntVarArgs &e, const IntVarArgs &u, const IntArgs &c, bool at_most, IntConLevel icl=ICL_DEF) |
Post propagators for the cumulatives constraint. | |
void | Gecode::cumulatives (Home home, const IntArgs &m, const IntVarArgs &s, const IntVarArgs &p, const IntVarArgs &e, const IntVarArgs &u, const IntArgs &c, bool at_most, IntConLevel icl=ICL_DEF) |
Post propagators for the cumulatives constraint. | |
void | Gecode::cumulatives (Home home, const IntVarArgs &m, const IntVarArgs &s, const IntArgs &p, const IntVarArgs &e, const IntVarArgs &u, const IntArgs &c, bool at_most, IntConLevel icl=ICL_DEF) |
Post propagators for the cumulatives constraint. | |
void | Gecode::cumulatives (Home home, const IntArgs &m, const IntVarArgs &s, const IntArgs &p, const IntVarArgs &e, const IntVarArgs &u, const IntArgs &c, bool at_most, IntConLevel icl=ICL_DEF) |
Post propagators for the cumulatives constraint. | |
void | Gecode::cumulatives (Home home, const IntVarArgs &m, const IntVarArgs &s, const IntVarArgs &p, const IntVarArgs &e, const IntArgs &u, const IntArgs &c, bool at_most, IntConLevel icl=ICL_DEF) |
Post propagators for the cumulatives constraint. | |
void | Gecode::cumulatives (Home home, const IntArgs &m, const IntVarArgs &s, const IntVarArgs &p, const IntVarArgs &e, const IntArgs &u, const IntArgs &c, bool at_most, IntConLevel icl=ICL_DEF) |
Post propagators for the cumulatives constraint. | |
void | Gecode::cumulatives (Home home, const IntVarArgs &m, const IntVarArgs &s, const IntArgs &p, const IntVarArgs &e, const IntArgs &u, const IntArgs &c, bool at_most, IntConLevel icl=ICL_DEF) |
Post propagators for the cumulatives constraint. | |
void | Gecode::cumulatives (Home home, const IntArgs &m, const IntVarArgs &s, const IntArgs &p, const IntVarArgs &e, const IntArgs &u, const IntArgs &c, bool at_most, IntConLevel icl=ICL_DEF) |
Post propagators for the cumulatives constraint. | |
void | Gecode::unary (Home home, const IntVarArgs &s, const IntArgs &p, IntConLevel icl=ICL_DEF) |
Post propagators for scheduling tasks on unary resources. | |
void | Gecode::unary (Home home, const IntVarArgs &s, const IntArgs &p, const BoolVarArgs &m, IntConLevel icl=ICL_DEF) |
Post propagators for scheduling optional tasks on unary resources. | |
void | Gecode::unary (Home home, const TaskTypeArgs &t, const IntVarArgs &flex, const IntArgs &fix, IntConLevel icl=ICL_DEF) |
Post propagators for scheduling tasks on unary resources. | |
void | Gecode::unary (Home home, const TaskTypeArgs &t, const IntVarArgs &flex, const IntArgs &fix, const BoolVarArgs &m, IntConLevel icl=ICL_DEF) |
Post propagators for scheduling optional tasks on unary resources. | |
void | Gecode::unary (Home home, const IntVarArgs &s, const IntVarArgs &p, const IntVarArgs &e, IntConLevel icl=ICL_DEF) |
Post propagators for scheduling tasks on unary resources. | |
void | Gecode::unary (Home home, const IntVarArgs &s, const IntVarArgs &p, const IntVarArgs &e, const BoolVarArgs &m, IntConLevel icl=ICL_DEF) |
Post propagators for scheduling optional tasks on unary resources. | |
void | Gecode::cumulative (Home home, int c, const TaskTypeArgs &t, const IntVarArgs &flex, const IntArgs &fix, const IntArgs &u, IntConLevel icl=ICL_DEF) |
Post propagators for scheduling tasks on cumulative resources. | |
void | Gecode::cumulative (Home home, IntVar c, const TaskTypeArgs &t, const IntVarArgs &flex, const IntArgs &fix, const IntArgs &u, IntConLevel icl=ICL_DEF) |
Post propagators for scheduling tasks on cumulative resources. | |
void | Gecode::cumulative (Home home, int c, const TaskTypeArgs &t, const IntVarArgs &flex, const IntArgs &fix, const IntArgs &u, const BoolVarArgs &m, IntConLevel icl=ICL_DEF) |
Post propagators for scheduling optional tasks on cumulative resources. | |
void | Gecode::cumulative (Home home, IntVar c, const TaskTypeArgs &t, const IntVarArgs &flex, const IntArgs &fix, const IntArgs &u, const BoolVarArgs &m, IntConLevel icl=ICL_DEF) |
Post propagators for scheduling optional tasks on cumulative resources. | |
void | Gecode::cumulative (Home home, int c, const IntVarArgs &s, const IntArgs &p, const IntArgs &u, IntConLevel icl=ICL_DEF) |
Post propagators for scheduling tasks on cumulative resources. | |
void | Gecode::cumulative (Home home, IntVar c, const IntVarArgs &s, const IntArgs &p, const IntArgs &u, IntConLevel icl=ICL_DEF) |
Post propagators for scheduling tasks on cumulative resources. | |
void | Gecode::cumulative (Home home, int c, const IntVarArgs &s, const IntArgs &p, const IntArgs &u, const BoolVarArgs &m, IntConLevel icl=ICL_DEF) |
Post propagators for scheduling optional tasks on cumulative resources. | |
void | Gecode::cumulative (Home home, IntVar c, const IntVarArgs &s, const IntArgs &p, const IntArgs &u, const BoolVarArgs &m, IntConLevel icl=ICL_DEF) |
Post propagators for scheduling optional tasks on cumulative resources. | |
void | Gecode::cumulative (Home home, int c, const IntVarArgs &s, const IntVarArgs &p, const IntVarArgs &e, const IntArgs &u, IntConLevel icl=ICL_DEF) |
Post propagators for scheduling tasks on cumulative resources. | |
void | Gecode::cumulative (Home home, IntVar c, const IntVarArgs &s, const IntVarArgs &p, const IntVarArgs &e, const IntArgs &u, IntConLevel icl=ICL_DEF) |
Post propagators for scheduling tasks on cumulative resources. | |
void | Gecode::cumulative (Home home, int c, const IntVarArgs &s, const IntVarArgs &p, const IntVarArgs &e, const IntArgs &u, const BoolVarArgs &m, IntConLevel icl=ICL_DEF) |
Post propagators for scheduling optional tasks on cumulative resources. | |
void | Gecode::cumulative (Home home, IntVar c, const IntVarArgs &s, const IntVarArgs &p, const IntVarArgs &e, const IntArgs &u, const BoolVarArgs &m, IntConLevel icl=ICL_DEF) |
Post propagators for scheduling optional tasks on cumulative resources. | |
void | Gecode::circuit (Home home, const IntVarArgs &x, IntConLevel icl=ICL_DEF) |
Post propagator such that x forms a circuit. | |
void | Gecode::circuit (Home home, int offset, const IntVarArgs &x, IntConLevel icl=ICL_DEF) |
Post propagator such that x forms a circuit. | |
void | Gecode::circuit (Home home, const IntArgs &c, const IntVarArgs &x, const IntVarArgs &y, IntVar z, IntConLevel icl=ICL_DEF) |
Post propagator such that x forms a circuit with costs y and z. | |
void | Gecode::circuit (Home home, const IntArgs &c, int offset, const IntVarArgs &x, const IntVarArgs &y, IntVar z, IntConLevel icl=ICL_DEF) |
Post propagator such that x forms a circuit with costs y and z. | |
void | Gecode::circuit (Home home, const IntArgs &c, const IntVarArgs &x, IntVar z, IntConLevel icl=ICL_DEF) |
Post propagator such that x forms a circuit with cost z. | |
void | Gecode::circuit (Home home, const IntArgs &c, int offset, const IntVarArgs &x, IntVar z, IntConLevel icl=ICL_DEF) |
Post propagator such that x forms a circuit with cost z. | |
void | Gecode::path (Home home, const IntVarArgs &x, IntVar s, IntVar e, IntConLevel icl=ICL_DEF) |
Post propagator such that x forms a Hamiltonian path. | |
void | Gecode::path (Home home, int offset, const IntVarArgs &x, IntVar s, IntVar e, IntConLevel icl=ICL_DEF) |
Post propagator such that x forms a Hamiltonian path. | |
void | Gecode::path (Home home, const IntArgs &c, const IntVarArgs &x, IntVar s, IntVar e, const IntVarArgs &y, IntVar z, IntConLevel icl=ICL_DEF) |
Post propagator such that x forms a Hamiltonian path with costs y and z. | |
void | Gecode::path (Home home, const IntArgs &c, int offset, const IntVarArgs &x, IntVar s, IntVar e, const IntVarArgs &y, IntVar z, IntConLevel icl=ICL_DEF) |
Post propagator such that x forms a Hamiltonian path with costs y and z. | |
void | Gecode::path (Home home, const IntArgs &c, const IntVarArgs &x, IntVar s, IntVar e, IntVar z, IntConLevel icl=ICL_DEF) |
Post propagator such that x forms a Hamiltonian path with cost z. | |
void | Gecode::path (Home home, const IntArgs &c, int offset, const IntVarArgs &x, IntVar s, IntVar e, IntVar z, IntConLevel icl=ICL_DEF) |
Post propagator such that x forms a Hamiltonian path with cost z. | |
void | Gecode::wait (Home home, IntVar x, void(*c)(Space &home), IntConLevel icl=ICL_DEF) |
Execute c when x becomes assigned. | |
void | Gecode::wait (Home home, BoolVar x, void(*c)(Space &home), IntConLevel icl=ICL_DEF) |
Execute c when x becomes assigned. | |
void | Gecode::wait (Home home, const IntVarArgs &x, void(*c)(Space &home), IntConLevel icl=ICL_DEF) |
Execute c when all variables in x become assigned. | |
void | Gecode::wait (Home home, const BoolVarArgs &x, void(*c)(Space &home), IntConLevel icl=ICL_DEF) |
Execute c when all variables in x become assigned. | |
void | Gecode::when (Home home, BoolVar x, void(*t)(Space &home), void(*e)(Space &home)=NULL, IntConLevel icl=ICL_DEF) |
Execute t (then) when x is assigned one, and e (else) otherwise. | |
void | Gecode::unshare (Home home, IntVarArgs &x, IntConLevel icl=ICL_DEF) |
Replace multiple variable occurences in x by fresh variables. | |
void | Gecode::unshare (Home home, BoolVarArgs &x, IntConLevel icl=ICL_DEF) |
Replace multiple variable occurences in x by fresh variables. | |
void | Gecode::branch (Home home, const IntVarArgs &x, IntVarBranch vars, IntValBranch vals, const VarBranchOptions &o_vars=VarBranchOptions::def, const ValBranchOptions &o_vals=ValBranchOptions::def) |
Branch over x with variable selection vars and value selection vals. | |
void | Gecode::branch (Home home, const IntVarArgs &x, const TieBreakVarBranch< IntVarBranch > &vars, IntValBranch vals, const TieBreakVarBranchOptions &o_vars=TieBreakVarBranchOptions::def, const ValBranchOptions &o_vals=ValBranchOptions::def) |
Branch over x with tie-breaking variable selection vars and value selection vals. | |
void | Gecode::branch (Home home, IntVar x, IntValBranch vals, const ValBranchOptions &o_vals=ValBranchOptions::def) |
Branch over x with value selection vals. | |
void | Gecode::branch (Home home, const BoolVarArgs &x, IntVarBranch vars, IntValBranch vals, const VarBranchOptions &o_vars=VarBranchOptions::def, const ValBranchOptions &o_vals=ValBranchOptions::def) |
Branch over x with variable selection vars and value selection vals. | |
void | Gecode::branch (Home home, const BoolVarArgs &x, const TieBreakVarBranch< IntVarBranch > &vars, IntValBranch vals, const TieBreakVarBranchOptions &o_vars=TieBreakVarBranchOptions::def, const ValBranchOptions &o_vals=ValBranchOptions::def) |
Branch over x with tie-breaking variable selection vars and value selection vals. | |
void | Gecode::branch (Home home, BoolVar x, IntValBranch vals, const ValBranchOptions &o_vals=ValBranchOptions::def) |
Branch over x with value selection vals. | |
void | Gecode::assign (Home home, const IntVarArgs &x, IntAssign vals, const ValBranchOptions &o_vals=ValBranchOptions::def) |
Assign all x with value selection vals. | |
void | Gecode::assign (Home home, IntVar x, IntAssign vals, const ValBranchOptions &o_vals=ValBranchOptions::def) |
Assign x with value selection vals. | |
void | Gecode::assign (Home home, const BoolVarArgs &x, IntAssign vals, const ValBranchOptions &o_vals=ValBranchOptions::def) |
Assign all x with value selection vals. | |
void | Gecode::assign (Home home, BoolVar x, IntAssign vals, const ValBranchOptions &o_vals=ValBranchOptions::def) |
Assign x with value selection vals. | |
Variables | |
const int | Gecode::Int::Limits::max = INT_MAX - 1 |
Largest allowed integer value. | |
const int | Gecode::Int::Limits::min = -max |
Smallest allowed integer value. | |
const int | Gecode::Int::Limits::infinity = max + 1 |
Infinity. | |
const double | Gecode::Int::Limits::double_max = 9007199254740991.0 |
Largest double that can exactly be represented. | |
const double | Gecode::Int::Limits::double_min = -9007199254740991.0 |
Smallest double that can exactly be represented. | |
const double | Gecode::Int::Limits::double_infinity = DBL_MAX |
Infinity value for doubles. |