ldsb.cpp File Reference
#include <gecode/int/ldsb.hh>
#include <gecode/int/branch.hh>
#include <map>
Go to the source code of this file.
Classes | |
class | Gecode::Int::LDSB::VariableMap |
Map from variable implementation to index. More... | |
Namespaces | |
namespace | Gecode |
Gecode toplevel namespace | |
namespace | Gecode::Int |
Finite domain integers. | |
namespace | Gecode::Int::LDSB |
Symmetry breaking for integer variables. | |
Functions | |
std::pair< int, int > | Gecode::Int::LDSB::findVar (int *indices, unsigned int n_values, unsigned int seq_size, int index) |
Find the location of an integer in a collection of sequences. | |
SymmetryHandle | Gecode::VariableSymmetry (const IntVarArgs &x) |
Variables in x are interchangeable. | |
SymmetryHandle | Gecode::VariableSymmetry (const BoolVarArgs &x) |
Variables in x are interchangeable. | |
SymmetryHandle | Gecode::VariableSymmetry (const IntVarArgs &x, const IntArgs &indices) |
Specified variables in x are interchangeable. | |
SymmetryHandle | Gecode::ValueSymmetry (const IntArgs &v) |
Values in v are interchangeable. | |
SymmetryHandle | Gecode::ValueSymmetry (const IntSet &v) |
Values in v are interchangeable. | |
SymmetryHandle | Gecode::ValueSymmetry (IntVar vars) |
All values in the domain of the given variable are interchangeable. | |
SymmetryHandle | Gecode::VariableSequenceSymmetry (const IntVarArgs &x, int ss) |
Variable sequences in x of size ss are interchangeable. | |
SymmetryHandle | Gecode::VariableSequenceSymmetry (const BoolVarArgs &x, int ss) |
Variable sequences in x of size ss are interchangeable. | |
SymmetryHandle | Gecode::ValueSequenceSymmetry (const IntArgs &v, int ss) |
Value sequences in v of size ss are interchangeable. | |
SymmetryHandle | Gecode::values_reflect (int lower, int upper) |
The values from lower to upper (inclusive) can be reflected. | |
SymmetryHandle | Gecode::values_reflect (const IntVar &x) |
SymmetryImp< IntView > * | Gecode::Int::LDSB::createIntSym (Space &home, const SymmetryHandle &s, VariableMap variableMap) |
Create an integer symmetry implementation from a symmetry handle. | |
SymmetryImp< BoolView > * | Gecode::Int::LDSB::createBoolSym (Space &home, const SymmetryHandle &s, VariableMap variableMap) |
Create a boolean symmetry implementation from a symmetry handle. | |
void | Gecode::branch (Home home, const IntVarArgs &x, IntVarBranch vars, IntValBranch vals, const Symmetries &syms, IntBranchFilter bf=nullptr, IntVarValPrint vvp=nullptr) |
Branch over x with variable selection vars and value selection vals with symmetry breaking. | |
void | Gecode::branch (Home home, const IntVarArgs &x, TieBreak< IntVarBranch > vars, IntValBranch vals, const Symmetries &syms, IntBranchFilter bf=nullptr, IntVarValPrint vvp=nullptr) |
Branch over x with tie-breaking variable selection vars and value selection vals with symmetry breaking. | |
void | Gecode::branch (Home home, const BoolVarArgs &x, BoolVarBranch vars, BoolValBranch vals, const Symmetries &syms, BoolBranchFilter bf=nullptr, BoolVarValPrint vvp=nullptr) |
Branch over x with variable selection vars and value selection vals with symmetry breaking. | |
void | Gecode::branch (Home home, const BoolVarArgs &x, TieBreak< BoolVarBranch > vars, BoolValBranch vals, const Symmetries &syms, BoolBranchFilter bf=nullptr, BoolVarValPrint vvp=nullptr) |
Branch over x with tie-breaking variable selection vars and value selection vals with symmetry breaking. |