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.