cpsp::gecode::GC_ThreadingSymmBreaker Class Reference
#include <GC_ThreadingSymmBreaker.hh>
Detailed Description
SymmBreaker for Graph Coloring.Used for breaking all value transposition symmetries
Definition at line 45 of file GC_ThreadingSymmBreaker.hh.
Public Types | |
typedef biu::IPointVec | GlobalShiftVec |
Public Member Functions | |
virtual GC_ThreadingSymmBreaker * | copy (Gecode::Space *home, bool share) |
GC_ThreadingSymmBreaker (Gecode::Space *home, bool share, const GC_ThreadingSymmBreaker &sym) | |
GC_ThreadingSymmBreaker (Gecode::Space *home, const biu::LatticeFrame *latticeFrame_, const GlobalShiftVec *shiftVec_, Gecode::BoolVarArray &init_cp) | |
GC_ThreadingSymmBreaker (Gecode::Space *home, const biu::LatticeFrame *latticeFrame_, const GlobalShiftVec *shiftVec_) | |
virtual void | print (void) const |
virtual bool | status (const Space *home) const |
bool | status (const Gecode::Space *home) const |
void | tell (Space *home, int a, ViewArray< View > &x, int pos, Val val) |
virtual | ~GC_ThreadingSymmBreaker () |
Static Public Member Functions | |
static GlobalShiftVec * | generateGlobalShiftVec (HCore *hCore, const biu::LatticeFrame *latticeFrame, GlobalShiftVec *shiftVec=NULL) |
static Gecode::BoolVarArray | initCpByCore (Gecode::Space *home, HCore *hCore, const biu::LatticeFrame *latticeFrame, const GlobalShiftVec *shiftVec) |
Protected Member Functions | |
void | postImplications (Space *home, ViewArray< View > &x, int pos, Val val) const |
virtual BoolVar | reifySymm (Space *home, int symmetry, ViewArray< View > &x, int pos, Val val) const =0 |
Gecode::BoolVar | reifySymm (Gecode::Space *home, int symmetry, Gecode::ViewArray< MyViewType > &x, int pos, int val) const |
virtual void | tellSymm (Space *home, int symmetry, ViewArray< View > &x, int pos, Val val) const |
void | updateCps (Space *home, ViewArray< View > &x, int pos, Val val) |
Static Protected Member Functions | |
static int | getSymmetricIndex (int symmetry, int oldInd, const biu::LatticeFrame *latticeFrame, const GlobalShiftVec *shiftVec) |
Protected Attributes | |
BoolVarArray | cps |
Support::DynamicArray< int > | symOf |
Private Attributes | |
const biu::LatticeFrame * | latticeFrame |
const GlobalShiftVec * | shiftVec |
Member Typedef Documentation
typedef biu::IPointVec cpsp::gecode::GC_ThreadingSymmBreaker::GlobalShiftVec |
Definition at line 47 of file GC_ThreadingSymmBreaker.hh.
Constructor & Destructor Documentation
cpsp::gecode::GC_ThreadingSymmBreaker::GC_ThreadingSymmBreaker | ( | Gecode::Space * | home, | |
const biu::LatticeFrame * | latticeFrame_, | |||
const GlobalShiftVec * | shiftVec_ | |||
) | [inline] |
Definition at line 53 of file GC_ThreadingSymmBreaker.hh.
cpsp::gecode::GC_ThreadingSymmBreaker::GC_ThreadingSymmBreaker | ( | Gecode::Space * | home, | |
const biu::LatticeFrame * | latticeFrame_, | |||
const GlobalShiftVec * | shiftVec_, | |||
Gecode::BoolVarArray & | init_cp | |||
) | [inline] |
Definition at line 61 of file GC_ThreadingSymmBreaker.hh.
cpsp::gecode::GC_ThreadingSymmBreaker::GC_ThreadingSymmBreaker | ( | Gecode::Space * | home, | |
bool | share, | |||
const GC_ThreadingSymmBreaker & | sym | |||
) | [inline] |
Definition at line 71 of file GC_ThreadingSymmBreaker.hh.
virtual cpsp::gecode::GC_ThreadingSymmBreaker::~GC_ThreadingSymmBreaker | ( | ) | [inline, virtual] |
Definition at line 76 of file GC_ThreadingSymmBreaker.hh.
Member Function Documentation
virtual GC_ThreadingSymmBreaker* cpsp::gecode::GC_ThreadingSymmBreaker::copy | ( | Gecode::Space * | home, | |
bool | share | |||
) | [inline, virtual] |
Definition at line 78 of file GC_ThreadingSymmBreaker.hh.
static GlobalShiftVec* cpsp::gecode::GC_ThreadingSymmBreaker::generateGlobalShiftVec | ( | HCore * | hCore, | |
const biu::LatticeFrame * | latticeFrame, | |||
GlobalShiftVec * | shiftVec = NULL | |||
) | [inline, static] |
Generates the shift vectors, that are needed calculate the symmetries.
Definition at line 154 of file GC_ThreadingSymmBreaker.hh.
static int cpsp::gecode::GC_ThreadingSymmBreaker::getSymmetricIndex | ( | int | symmetry, | |
int | oldInd, | |||
const biu::LatticeFrame * | latticeFrame, | |||
const GlobalShiftVec * | shiftVec | |||
) | [inline, static, protected] |
Returns the symmetric point index of oldInd using Automorphism symmetry.
Definition at line 88 of file GC_ThreadingSymmBreaker.hh.
static Gecode::BoolVarArray cpsp::gecode::GC_ThreadingSymmBreaker::initCpByCore | ( | Gecode::Space * | home, | |
HCore * | hCore, | |||
const biu::LatticeFrame * | latticeFrame, | |||
const GlobalShiftVec * | shiftVec | |||
) | [inline, static] |
Generates the inital Cp variables for the constructor, that represent if a symmetry is already broken or not.
Definition at line 123 of file GC_ThreadingSymmBreaker.hh.
void Gecode::Search::SymmBreaker< View, Val >::postImplications | ( | Space * | home, | |
ViewArray< View > & | x, | |||
int | pos, | |||
Val | val | |||
) | const [inline, protected, inherited] |
void Gecode::Search::SymmBreaker< View, Val >::print | ( | void | ) | const [inline, virtual, inherited] |
virtual BoolVar Gecode::Search::SymmBreaker< View, Val >::reifySymm | ( | Space * | home, | |
int | symmetry, | |||
ViewArray< View > & | x, | |||
int | pos, | |||
Val | val | |||
) | const [protected, pure virtual, inherited] |
reify constraint of x[pos] with val under symmetry
Gecode::BoolVar cpsp::gecode::GC_ThreadingSymmBreaker::reifySymm | ( | Gecode::Space * | home, | |
int | symmetry, | |||
Gecode::ViewArray< MyViewType > & | x, | |||
int | pos, | |||
int | val | |||
) | const [inline, protected] |
Definition at line 107 of file GC_ThreadingSymmBreaker.hh.
virtual bool Gecode::Search::SymmBreaker< View, Val >::status | ( | const Space * | home | ) | const [inline, virtual, inherited] |
control of branching returns true as long as SymmBreaker wants to branch
Definition at line 165 of file GC_searchExt.hh.
bool cpsp::gecode::GC_ThreadingSymmBreaker::status | ( | const Gecode::Space * | home | ) | const [inline] |
Definition at line 190 of file GC_ThreadingSymmBreaker.hh.
void Gecode::Search::SymmBreaker< View, Val >::tell | ( | Space * | home, | |
int | a, | |||
ViewArray< View > & | x, | |||
int | pos, | |||
Val | val | |||
) | [inline, inherited] |
post constraints for the symmetry breaking branching in alternative a in {0,1}
Definition at line 59 of file symm-break.icc.
virtual void Gecode::Search::SymmBreaker< View, Val >::tellSymm | ( | Space * | home, | |
int | symmetry, | |||
ViewArray< View > & | x, | |||
int | pos, | |||
Val | val | |||
) | const [inline, protected, virtual, inherited] |
void Gecode::Search::SymmBreaker< View, Val >::updateCps | ( | Space * | home, | |
ViewArray< View > & | x, | |||
int | pos, | |||
Val | val | |||
) | [inline, protected, inherited] |
Field Documentation
BoolVarArray Gecode::Search::SymmBreaker< View, Val >::cps [protected, inherited] |
const biu::LatticeFrame* cpsp::gecode::GC_ThreadingSymmBreaker::latticeFrame [private] |
Definition at line 49 of file GC_ThreadingSymmBreaker.hh.
const GlobalShiftVec* cpsp::gecode::GC_ThreadingSymmBreaker::shiftVec [private] |
Definition at line 50 of file GC_ThreadingSymmBreaker.hh.
Support::DynamicArray<int> Gecode::Search::SymmBreaker< View, Val >::symOf [protected, inherited] |
The documentation for this class was generated from the following file:
- src/cpsp/gecode/GC_ThreadingSymmBreaker.hh