Generated on Sat Feb 7 2015 02:01:47 for Gecode by doxygen 1.8.9.1
Gecode::Int::LDSB Namespace Reference

Symmetry breaking for integer variables. More...

Classes

class  LDSBBrancher
 Symmetry-breaking brancher with generic view and value selection. More...
 
class  LDSBChoice
 Choice storing position and value, and symmetric literals to be excluded on the right branch. More...
 
class  Literal
 A Literal is a pair of variable index and value. More...
 
class  SymmetryImp
 Implementation of a single symmetry. More...
 
class  SymmetryObject
 Implementation of a symmetry at the modelling level. More...
 
class  ValueSequenceSymmetryImp
 Implementation of a value sequence symmetry. More...
 
class  ValueSequenceSymmetryObject
 Implementation of a value sequence symmetry at the modelling level. More...
 
class  ValueSymmetryImp
 Implementation of a value symmetry. More...
 
class  ValueSymmetryObject
 Implementation of a value symmetry at the modelling level. More...
 
class  VariableMap
 Map from variable implementation to index. More...
 
class  VariableSequenceSymmetryImp
 Implementation of a variable sequence symmetry. More...
 
class  VariableSequenceSymmetryObject
 Implementation of a variable sequence symmetry at the modelling level. More...
 
class  VariableSymmetryImp
 Implementation of a variable symmetry. More...
 
class  VariableSymmetryObject
 Implementation of a variable symmetry at the modelling level. More...
 

Functions

template<>
ModEvent prune< Int::IntView > (Space &home, Int::IntView x, int v)
 
template<>
ModEvent prune< Int::BoolView > (Space &home, Int::BoolView x, int v)
 
template<class T , class A >
ArgArray< T > dynamicStackToArgArray (const Support::DynamicStack< T, A > &s)
 Convert a DynamicStack<T,A> into an ArgArray<T> More...
 
std::pair< int, int > findVar (int *indices, unsigned int n_values, unsigned int seq_size, int index)
 Find the location of an integer in a collection of sequences. More...
 
SymmetryImp< IntView > * createIntSym (Space &home, const SymmetryHandle &s, VariableMap variableMap)
 Create an integer symmetry implementation from a symmetry handle. More...
 
SymmetryImp< BoolView > * createBoolSym (Space &home, const SymmetryHandle &s, VariableMap variableMap)
 Create a boolean symmetry implementation from a symmetry handle. More...
 
template<class View >
ModEvent prune (Space &home, View x, int v)
 Exclude value from variable view . More...
 
template<>
ModEvent prune< Set::SetView > (Space &home, Set::SetView x, int v)
 

Detailed Description

Symmetry breaking for integer variables.

Function Documentation

template<>
ModEvent Gecode::Int::LDSB::prune< Int::IntView > ( Space home,
Int::IntView  x,
int  v 
)
inline

Definition at line 215 of file brancher.hpp.

template<>
ModEvent Gecode::Int::LDSB::prune< Int::BoolView > ( Space home,
Int::BoolView  x,
int  v 
)
inline

Definition at line 222 of file brancher.hpp.

template<class T , class A >
ArgArray<T> Gecode::Int::LDSB::dynamicStackToArgArray ( const Support::DynamicStack< T, A > &  s)

Convert a DynamicStack<T,A> into an ArgArray<T>

Definition at line 43 of file sym-imp.hpp.

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.

Given an array indices of integers (of length n_values), which represents a collection of sequences each of size seq_size, find the location of the first occurrence of the value index. Returns a pair of sequence number and position within that sequence (both zero-based).

Definition at line 46 of file ldsb.cpp.

SymmetryImp<IntView>* Gecode::Int::LDSB::createIntSym ( Space home,
const SymmetryHandle s,
VariableMap  variableMap 
)

Create an integer symmetry implementation from a symmetry handle.

Definition at line 144 of file ldsb.cpp.

SymmetryImp<BoolView>* Gecode::Int::LDSB::createBoolSym ( Space home,
const SymmetryHandle s,
VariableMap  variableMap 
)

Create a boolean symmetry implementation from a symmetry handle.

Definition at line 201 of file ldsb.cpp.

template<class View >
ModEvent Gecode::Int::LDSB::prune ( Space home,
View  x,
int  v 
)

Exclude value from variable view .

template<>
ModEvent Gecode::Int::LDSB::prune< Set::SetView > ( Space home,
Set::SetView  x,
int  v 
)

Definition at line 64 of file ldsb.cpp.