Finite domain integers. More...
Namespaces | |
Arithmetic | |
Numerical (arithmetic) propagators. | |
BinPacking | |
Bin-packing propagators | |
Bool | |
Boolean propagators. | |
Branch | |
Integer branchers. | |
Channel | |
Channel propagators | |
Circuit | |
Circuit propagators | |
Count | |
Counting propagators. | |
Cumulative | |
Scheduling for cumulative resources | |
Cumulatives | |
Cumulatives propagators | |
Distinct | |
Distinct propagators | |
Dom | |
Domain propagators. | |
Element | |
Element propagators | |
Exec | |
Synchronized execution. | |
Extensional | |
Extensional propagators | |
GCC | |
Global cardinality propagators (Counting) | |
LDSB | |
Symmetry breaking for integer variables. | |
Limits | |
Numerical limits for integer variables. | |
Linear | |
Linear propagators | |
Member | |
Membership propagators. | |
NoOverlap | |
No-overlap propagators | |
NValues | |
Number of values propagators. | |
Precede | |
Value precedence propagators. | |
Rel | |
Simple relation propagators. | |
Sequence | |
Sequence propagators | |
Sorted | |
Sorted propagators | |
Unary | |
Int for unary resources | |
Unshare | |
Unsharing shared variables. | |
ViewValGraph | |
Support classes for propagators using a view-value graph. | |
Classes | |
class | ArgumentSame |
Exception: Arguments contain same variable multiply More... | |
class | ArgumentSizeMismatch |
Exception: Arguments are of different size More... | |
class | BoolVarImp |
Boolean variable implementation. More... | |
class | BoolVarImpBase |
Base-class for Bool-variable implementations. More... | |
class | BoolVarImpConf |
Configuration for Bool-variable implementations. More... | |
class | BoolView |
Boolean view for Boolean variables. More... | |
class | CachedView |
Cached integer view. More... | |
class | ConstIntView |
Constant integer view. More... | |
class | FwdToBwd |
Task mapper: turns a task view into its dual. More... | |
class | IdxView |
Class for pair of index and view. More... | |
class | IdxViewArray |
An array of IdxView pairs. More... | |
class | IllegalOperation |
Exception: Illegal operation passed as argument More... | |
class | IntDelta |
Integer delta information for advisors. More... | |
class | IntVarImp |
Integer variable implementation. More... | |
class | IntVarImpBase |
Base-class for Int-variable implementations. More... | |
class | IntVarImpBwd |
Backward iterator for ranges of integer variable implementations. More... | |
class | IntVarImpConf |
Configuration for Int-variable implementations. More... | |
class | IntVarImpFwd |
Range iterator for ranges of integer variable implementation. More... | |
class | IntView |
Integer view for integer variables. More... | |
class | LDSBBadValueSelection |
Exception: Value selection incompatible with LDSB More... | |
class | LDSBUnbranchedVariable |
Exception: Variable in symmetry not branched on More... | |
class | ManTaskViewIter |
Allows to iterate over mandatory task views according to a specified order. More... | |
class | ManToOptTask |
Class to define an optional from a mandatory task. More... | |
class | MinusView |
Minus integer view. More... | |
class | NegBoolView |
Negated Boolean view. More... | |
class | NoOffset |
Converter without offsets. More... | |
class | NotYetFinalized |
Exception: Tuple set not yet finalized More... | |
class | NotZeroOne |
Exception: Not 0/1 integer More... | |
class | Offset |
Converter with fixed offset. More... | |
class | OffsetView |
Offset integer view. More... | |
class | OutOfLimits |
Exception: Value out of limits More... | |
class | ReBinaryPropagator |
Reified binary propagator. More... | |
class | ReMixBinaryPropagator |
Reified mixed binary propagator. More... | |
class | ReUnaryPropagator |
Reified unary propagator. More... | |
class | ScaleView |
Scale integer view (template) More... | |
class | SortMap |
Sorting maps rather than tasks. More... | |
class | StoEct |
Sort by earliest completion times. More... | |
class | StoEst |
Sort by earliest start times. More... | |
class | StoLct |
Sort by latest completion times. More... | |
class | StoLst |
Sort by latest start times. More... | |
class | SupportValues |
Support value iterator and recorder More... | |
class | TaskArray |
Task array. More... | |
class | TaskProp |
Propagator for tasks More... | |
class | TaskTraits |
Traits class for mapping tasks to task views. More... | |
class | TaskTraits< Cumulative::ManFixPSETask > |
Task traits for mandatory fixed tasks. More... | |
class | TaskTraits< Cumulative::ManFixPTask > |
Task traits for mandatory fixed tasks. More... | |
class | TaskTraits< Cumulative::ManFlexTask > |
Task traits for mandatory flexible tasks. More... | |
class | TaskTraits< Cumulative::OptFixPSETask > |
Task traits for optional fixed tasks. More... | |
class | TaskTraits< Cumulative::OptFixPTask > |
Task traits for optional fixed tasks. More... | |
class | TaskTraits< Cumulative::OptFlexTask > |
Task traits for optional flexible tasks. More... | |
class | TaskTraits< Unary::ManFixPSETask > |
Task traits for mandatory fixed tasks. More... | |
class | TaskTraits< Unary::ManFixPTask > |
Task traits for mandatory fixed tasks. More... | |
class | TaskTraits< Unary::ManFlexTask > |
Task traits for mandatory flexible tasks. More... | |
class | TaskTraits< Unary::OptFixPSETask > |
Task traits for optional fixed tasks. More... | |
class | TaskTraits< Unary::OptFixPTask > |
Task traits for optional fixed tasks. More... | |
class | TaskTraits< Unary::OptFlexTask > |
Task traits for optional flexible tasks. More... | |
class | TaskTree |
Task trees for task views with node type Node. More... | |
class | TaskViewArray |
Task view array. More... | |
class | TaskViewIter |
Allows to iterate over task views according to a specified order. More... | |
class | TaskViewTraits |
Traits class for mapping task views to tasks. More... | |
class | TaskViewTraits< Cumulative::ManFixPSETaskBwd > |
Task view traits for backward task views. More... | |
class | TaskViewTraits< Cumulative::ManFixPSETaskFwd > |
Task view traits for forward task views. More... | |
class | TaskViewTraits< Cumulative::ManFixPTaskBwd > |
Task view traits for backward task views. More... | |
class | TaskViewTraits< Cumulative::ManFixPTaskFwd > |
Task view traits for forward task views. More... | |
class | TaskViewTraits< Cumulative::ManFlexTaskBwd > |
Task view traits for backward task views. More... | |
class | TaskViewTraits< Cumulative::ManFlexTaskFwd > |
Task view traits for forward task views. More... | |
class | TaskViewTraits< Cumulative::OptFixPSETaskBwd > |
Task view traits for backward task views. More... | |
class | TaskViewTraits< Cumulative::OptFixPSETaskFwd > |
Task view traits for forward optional task views. More... | |
class | TaskViewTraits< Cumulative::OptFixPTaskBwd > |
Task view traits for backward task views. More... | |
class | TaskViewTraits< Cumulative::OptFixPTaskFwd > |
Task view traits for forward optional task views. More... | |
class | TaskViewTraits< Cumulative::OptFlexTaskBwd > |
Task view traits for backward task views. More... | |
class | TaskViewTraits< Cumulative::OptFlexTaskFwd > |
Task view traits for forward optional task views. More... | |
class | TaskViewTraits< Unary::ManFixPSETaskBwd > |
Task view traits for backward task views. More... | |
class | TaskViewTraits< Unary::ManFixPSETaskFwd > |
Task view traits for forward task views. More... | |
class | TaskViewTraits< Unary::ManFixPTaskBwd > |
Task view traits for backward task views. More... | |
class | TaskViewTraits< Unary::ManFixPTaskFwd > |
Task view traits for forward task views. More... | |
class | TaskViewTraits< Unary::ManFlexTaskBwd > |
Task view traits for backward task views. More... | |
class | TaskViewTraits< Unary::ManFlexTaskFwd > |
Task view traits for forward task views. More... | |
class | TaskViewTraits< Unary::OptFixPSETaskBwd > |
Task view traits for backward task views. More... | |
class | TaskViewTraits< Unary::OptFixPSETaskFwd > |
Task view traits for forward optional task views. More... | |
class | TaskViewTraits< Unary::OptFixPTaskBwd > |
Task view traits for backward task views. More... | |
class | TaskViewTraits< Unary::OptFixPTaskFwd > |
Task view traits for forward optional task views. More... | |
class | TaskViewTraits< Unary::OptFlexTaskBwd > |
Task view traits for backward task views. More... | |
class | TaskViewTraits< Unary::OptFlexTaskFwd > |
Task view traits for forward optional task views. More... | |
class | TooFewArguments |
Exception: Too few arguments available in argument array More... | |
class | UnknownBranching |
Exception: Unknown value or variable selection passed as argument More... | |
class | UnknownOperation |
Exception: Unknown operation passed as argument More... | |
class | UnknownReifyMode |
Exception: Unknown reification mode passed as argument More... | |
class | UnknownRelation |
Exception: Unknown relation passed as argument More... | |
class | ValOfUnassignedVar |
Exception: Attempt to access value of unassigned variable More... | |
class | ValSet |
Class for storing values of already assigned views. More... | |
class | VariableEmptyDomain |
Exception: Variable created with empty domain More... | |
class | ViewDiffRanges |
Range iterator for cached integer views More... | |
class | ViewRanges |
Range iterator for integer views. More... | |
class | ViewRanges< BoolView > |
Range iterator for Boolean variable views More... | |
class | ViewRanges< CachedView< View > > |
Range iterator for offset integer views More... | |
class | ViewRanges< ConstIntView > |
Range iterator for constant integer views More... | |
class | ViewRanges< GCC::CardView > |
Range iterator for indexed problem variables More... | |
class | ViewRanges< IntScaleView > |
Range iterator for integer-precision scale integer views More... | |
class | ViewRanges< IntView > |
Range iterator for integer variable views More... | |
class | ViewRanges< LLongScaleView > |
Range iterator for long long int-precision scale integer views More... | |
class | ViewRanges< MinusView > |
Range iterator for minus integer views More... | |
class | ViewRanges< NegBoolView > |
Range iterator for negated Boolean variable views More... | |
class | ViewRanges< OffsetView > |
Range iterator for offset integer views More... | |
class | ViewRanges< ZeroIntView > |
Range iterator for constant integer views More... | |
class | ViewToVarArg |
Class to map VarArg type to view. More... | |
class | ViewToVarArg< BoolView > |
VarArg type for Boolean views. More... | |
class | ViewToVarArg< Gecode::Set::ConstSetView > |
VarArg type for constant Set views. More... | |
class | ViewToVarArg< Gecode::Set::SetView > |
VarArg type for Set views. More... | |
class | ViewToVarArg< Gecode::Set::SingletonView > |
VarArg type for singleton views. More... | |
class | ViewToVarArg< IntView > |
VarArg type for integer views. More... | |
class | ViewToVarArg< MinusView > |
VarArg type for minus views. More... | |
class | ViewValues |
Value iterator for integer views. More... | |
class | ZeroIntView |
Zero integer view. More... | |
Typedefs | |
typedef unsigned int | BoolStatus |
Type for status of a Boolean variable. More... | |
typedef ScaleView< int, unsigned int > | IntScaleView |
Integer-precision integer scale view. More... | |
typedef ScaleView< long long int, unsigned long long int > | LLongScaleView |
Long long-precision integer scale view. More... | |
Enumerations | |
enum | SortTaskOrder { STO_EST, STO_ECT, STO_LST, STO_LCT } |
How to sort tasks. More... | |
enum | RelTest { RT_FALSE = 0, RT_MAYBE = 1, RT_TRUE = 2 } |
Result of testing relation. More... | |
enum | BoolTest { BT_NONE, BT_SAME, BT_COMP } |
Boolean tests. More... | |
Functions | |
template<class IntType > | |
IntType | ceil_div_pp (IntType x, IntType y) |
Compute ![]() | |
template<class IntType > | |
IntType | floor_div_pp (IntType x, IntType y) |
Compute ![]() | |
template<class IntType > | |
IntType | ceil_div_px (IntType x, IntType y) |
Compute ![]() | |
template<class IntType > | |
IntType | floor_div_px (IntType x, IntType y) |
Compute ![]() | |
template<class IntType > | |
IntType | ceil_div_xp (IntType x, IntType y) |
Compute ![]() | |
template<class IntType > | |
IntType | floor_div_xp (IntType x, IntType y) |
Compute ![]() | |
template<class IntType > | |
IntType | ceil_div_xx (IntType x, IntType y) |
Compute ![]() | |
template<class IntType > | |
IntType | floor_div_xx (IntType x, IntType y) |
Compute ![]() | |
template<class Char , class Traits , class View > | |
std::basic_ostream< Char, Traits > & | operator<< (std::basic_ostream< Char, Traits > &os, const IdxViewArray< View > &x) |
template<class Char , class Traits , class Task > | |
std::basic_ostream< Char, Traits > & | operator<< (std::basic_ostream< Char, Traits > &os, const TaskArray< Task > &t) |
template<class Char , class Traits , class TaskView > | |
std::basic_ostream< Char, Traits > & | operator<< (std::basic_ostream< Char, Traits > &os, const TaskViewArray< TaskView > &t) |
template<class OptTask , PropCond pc> | |
ExecStatus | purge (Space &home, Propagator &p, TaskArray< OptTask > &t) |
Purge optional tasks that are excluded and possibly rewrite propagator. More... | |
template<class OptTask , PropCond pc, class Cap > | |
ExecStatus | purge (Space &home, Propagator &p, TaskArray< OptTask > &t, Cap c) |
Purge optional tasks that are excluded and possibly rewrite propagator. More... | |
template<class TaskView , SortTaskOrder sto, bool inc> | |
void | sort (TaskViewArray< TaskView > &t) |
Sort task view array t according to sto and inc (increasing or decreasing) More... | |
template<class TaskView , SortTaskOrder sto, bool inc> | |
void | sort (int *map, const TaskViewArray< TaskView > &t) |
Initialize and sort map for task view array t according to sto and inc (increasing or decreasing) More... | |
template<class TaskView , SortTaskOrder sto, bool inc> | |
void | sort (int *map, int n, const TaskViewArray< TaskView > &t) |
Sort map with size n for task view array t according to sto and inc (increasing or decreasing) More... | |
int | plus (int x, int y) |
Safe addition in case x is -IntLimits::infinity. More... | |
long long int | plus (long long int x, long long int y) |
Safe addition in case x is -IntLimits::llinfinity. More... | |
double | plus (double x, double y) |
Safe addition in case x is -Int::Limits::double_infinity. More... | |
BoolTest | bool_test (const BoolView &b0, const BoolView &b1) |
BoolTest | bool_test (const BoolView &b0, const NegBoolView &b1) |
BoolTest | bool_test (const NegBoolView &b0, const BoolView &b1) |
BoolTest | bool_test (const NegBoolView &b0, const NegBoolView &b1) |
template<class View > | |
bool | same (const CachedView< View > &x, const CachedView< View > &y) |
template<class View > | |
bool | before (const CachedView< View > &x, const CachedView< View > &y) |
bool | same (const ConstIntView &x, const ConstIntView &y) |
bool | before (const ConstIntView &x, const ConstIntView &y) |
bool | same (const OffsetView &x, const OffsetView &y) |
bool | before (const OffsetView &x, const OffsetView &y) |
template<class Char , class Traits , class View > | |
std::basic_ostream< Char, Traits > & | print_view (std::basic_ostream< Char, Traits > &os, const View &x) |
template<class Char , class Traits , class Val , class UnsVal > | |
std::basic_ostream< Char, Traits > & | print_scale (std::basic_ostream< Char, Traits > &os, const ScaleView< Val, UnsVal > &x) |
template<class Char , class Traits > | |
std::basic_ostream< Char, Traits > & | operator<< (std::basic_ostream< Char, Traits > &os, const IntView &x) |
template<class Char , class Traits > | |
std::basic_ostream< Char, Traits > & | operator<< (std::basic_ostream< Char, Traits > &os, const MinusView &x) |
template<class Char , class Traits > | |
std::basic_ostream< Char, Traits > & | operator<< (std::basic_ostream< Char, Traits > &os, const OffsetView &x) |
template<class Char , class Traits , class View > | |
std::basic_ostream< Char, Traits > & | operator<< (std::basic_ostream< Char, Traits > &os, const CachedView< View > &x) |
template<class Char , class Traits > | |
std::basic_ostream< Char, Traits > & | operator<< (std::basic_ostream< Char, Traits > &os, const IntScaleView &x) |
template<class Char , class Traits > | |
std::basic_ostream< Char, Traits > & | operator<< (std::basic_ostream< Char, Traits > &os, const LLongScaleView &x) |
template<class Char , class Traits > | |
std::basic_ostream< Char, Traits > & | operator<< (std::basic_ostream< Char, Traits > &os, const ConstIntView &x) |
template<class Char , class Traits > | |
std::basic_ostream< Char, Traits > & | operator<< (std::basic_ostream< Char, Traits > &os, const ZeroIntView &) |
template<class Char , class Traits > | |
std::basic_ostream< Char, Traits > & | operator<< (std::basic_ostream< Char, Traits > &os, const BoolView &x) |
template<class Char , class Traits > | |
std::basic_ostream< Char, Traits > & | operator<< (std::basic_ostream< Char, Traits > &os, const NegBoolView &x) |
template<class View > | |
RelTest | rtest_eq_bnd (View x, View y) |
Test whether views x and y are equal (use bounds information) More... | |
template<class View > | |
RelTest | rtest_eq_dom_check (View x, View y) |
template<class View > | |
RelTest | rtest_eq_dom (View x, View y) |
Test whether views x and y are equal (use full domain information) More... | |
template<class View > | |
RelTest | rtest_eq_bnd (View x, int n) |
Test whether view x and integer n are equal (use bounds information) More... | |
template<class View > | |
RelTest | rtest_eq_dom_check (View x, int n) |
template<class View > | |
RelTest | rtest_eq_dom (View x, int n) |
Test whether view x and integer n are equal (use full domain information) More... | |
template<class View > | |
RelTest | rtest_nq_bnd (View x, View y) |
Test whether views x and y are different (use bounds information) More... | |
template<class View > | |
RelTest | rtest_nq_dom_check (View x, View y) |
template<class View > | |
RelTest | rtest_nq_dom (View x, View y) |
Test whether views x and y are different (use full domain information) More... | |
template<class View > | |
RelTest | rtest_nq_bnd (View x, int n) |
Test whether view x and integer n are different (use bounds information) More... | |
template<class View > | |
RelTest | rtest_nq_dom_check (View x, int n) |
template<class View > | |
RelTest | rtest_nq_dom (View x, int n) |
Test whether view x and integer n are different (use full domain information) More... | |
template<class View > | |
RelTest | rtest_lq (View x, int n) |
Test whether view x is less or equal than integer n. More... | |
template<class View > | |
RelTest | rtest_lq (View x, View y) |
Test whether view x is less or equal than view y. More... | |
template<class View > | |
RelTest | rtest_le (View x, int n) |
Test whether view x is less than integer n. More... | |
template<class View > | |
RelTest | rtest_le (View x, View y) |
Test whether view x is less than view y. More... | |
template<class View > | |
RelTest | rtest_gq (View x, int n) |
Test whether view x is greater or equal than integer n. More... | |
template<class View > | |
RelTest | rtest_gq (View x, View y) |
Test whether view x is greater or equal than view y. More... | |
template<class View > | |
RelTest | rtest_gr (View x, int n) |
Test whether view x is greater than integer n. More... | |
template<class View > | |
RelTest | rtest_gr (View x, View y) |
Test whether view x is greater than view y. More... | |
template<class Val , class UnsVal > | |
bool | same (const ScaleView< Val, UnsVal > &x, const ScaleView< Val, UnsVal > &y) |
template<class Val , class UnsVal > | |
bool | before (const ScaleView< Val, UnsVal > &x, const ScaleView< Val, UnsVal > &y) |
bool | same (const ZeroIntView &, const ZeroIntView &) |
Variables | |
const Gecode::ModEvent | ME_INT_FAILED = Gecode::ME_GEN_FAILED |
Domain operation has resulted in failure. More... | |
const Gecode::ModEvent | ME_INT_NONE = Gecode::ME_GEN_NONE |
Domain operation has not changed domain. More... | |
const Gecode::ModEvent | ME_INT_VAL = Gecode::ME_GEN_ASSIGNED |
Domain operation has resulted in a value (assigned variable) More... | |
const Gecode::ModEvent | ME_INT_BND = Gecode::ME_GEN_ASSIGNED + 1 |
Domain operation has changed the minimum or maximum of the domain. More... | |
const Gecode::ModEvent | ME_INT_DOM = Gecode::ME_GEN_ASSIGNED + 2 |
Domain operation has changed the domain. More... | |
const Gecode::PropCond | PC_INT_NONE = Gecode::PC_GEN_NONE |
Propagation condition to be ignored (convenience) More... | |
const Gecode::PropCond | PC_INT_VAL = Gecode::PC_GEN_ASSIGNED |
Propagate when a view becomes assigned (single value) More... | |
const Gecode::PropCond | PC_INT_BND = Gecode::PC_GEN_ASSIGNED + 1 |
Propagate when minimum or maximum of a view changes. More... | |
const Gecode::PropCond | PC_INT_DOM = Gecode::PC_GEN_ASSIGNED + 2 |
Propagate when domain changes. More... | |
const Gecode::ModEvent | ME_BOOL_FAILED = Gecode::ME_GEN_FAILED |
Domain operation has resulted in failure. More... | |
const Gecode::ModEvent | ME_BOOL_NONE = Gecode::ME_GEN_NONE |
Domain operation has not changed domain. More... | |
const Gecode::ModEvent | ME_BOOL_VAL = Gecode::ME_GEN_ASSIGNED |
Domain operation has resulted in a value (assigned variable) More... | |
const Gecode::PropCond | PC_BOOL_NONE = Gecode::PC_GEN_NONE |
Propagation condition to be ignored (convenience) More... | |
const Gecode::PropCond | PC_BOOL_VAL = Gecode::PC_GEN_ASSIGNED |
Propagate when a view becomes assigned (single value) More... | |
Finite domain integers.
The Gecode::Int namespace contains all functionality required to program propagators and branchers for finite domain integers. In addition, all propagators and branchers for finite domain integers provided by Gecode are contained as nested namespaces.
typedef unsigned int Gecode::Int::BoolStatus |
Type for status of a Boolean variable.
Definition at line 479 of file var-imp.hpp.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
related |
Definition at line 158 of file idx-view.hpp.
|
related |
|
related |
ExecStatus Gecode::Int::purge | ( | Space & | home, |
Propagator & | p, | ||
TaskArray< OptTask > & | t | ||
) |
ExecStatus Gecode::Int::purge | ( | Space & | home, |
Propagator & | p, | ||
TaskArray< OptTask > & | t, | ||
Cap | c | ||
) |
|
inline |
|
inline |
|
inline |
|
inline |
Safe addition in case x is -IntLimits::infinity.
|
inline |
Safe addition in case x is -IntLimits::llinfinity.
double Gecode::Int::plus | ( | double | x, |
double | y | ||
) |
Safe addition in case x is -Int::Limits::double_infinity.
Definition at line 45 of file bool-test.hpp.
|
related |
Definition at line 49 of file bool-test.hpp.
|
related |
Definition at line 53 of file bool-test.hpp.
|
related |
Definition at line 57 of file bool-test.hpp.
|
related |
Definition at line 389 of file cached.hpp.
|
related |
Definition at line 394 of file cached.hpp.
|
related |
Definition at line 313 of file constint.hpp.
|
related |
Definition at line 317 of file constint.hpp.
|
related |
Definition at line 297 of file offset.hpp.
|
related |
Definition at line 301 of file offset.hpp.
std::basic_ostream<Char,Traits>& Gecode::Int::print_view | ( | std::basic_ostream< Char, Traits > & | os, |
const View & | x | ||
) |
std::basic_ostream<Char,Traits>& Gecode::Int::print_scale | ( | std::basic_ostream< Char, Traits > & | os, |
const ScaleView< Val, UnsVal > & | x | ||
) |
|
related |
|
related |
|
related |
|
related |
|
related |
|
related |
|
related |
|
inline |
|
related |
|
related |
RelTest Gecode::Int::rtest_eq_dom_check | ( | View | x, |
View | y | ||
) |
Definition at line 54 of file rel-test.hpp.
RelTest Gecode::Int::rtest_eq_dom_check | ( | View | x, |
int | n | ||
) |
Definition at line 84 of file rel-test.hpp.
|
inline |
Definition at line 114 of file rel-test.hpp.
|
inline |
Definition at line 144 of file rel-test.hpp.
|
related |