|
permlib 0.2.9
Library for permutation computations
|
base class for a 
#include <refinement.h>
Public Types | |
| typedef boost::shared_ptr< Refinement< PERM > > | RefinementPtr |
| typedef std::vector< RefinementPtr >::const_iterator | RefinementPtrIterator |
Public Member Functions | |
| Refinement (unsigned long n, RefinementType type) | |
| constructor | |
| virtual | ~Refinement () |
| destructor | |
| bool | initializeAndApply (Partition &pi) |
| applies (left-)refinement to partition and initializes refinement for future use in R-base | |
| virtual unsigned int | apply (Partition &pi) const =0 |
| applies (left-)refinement to pi which is the original partition this refinement was initialized to | |
| virtual unsigned int | apply2 (Partition &pi, const PERM &t) const |
| applies (right-)refinement to pi which is the image of the original partition this refinement was initialized to under t | |
| void | undo (Partition &pi, unsigned int count) const |
| reverts the last count elementary intersections of partition pi | |
| RefinementType | type () const |
| the type of this refinement | |
| unsigned int | alternatives () const |
| number of sibling of this refinement in the search tree | |
| RefinementPtrIterator | backtrackBegin () const |
| iterator to begin of refinement siblings in the search tree | |
| RefinementPtrIterator | backtrackEnd () const |
| iterator to end of refinement siblings in the search tree | |
| virtual bool | init (Partition &pi)=0 |
| initializes refinement | |
| virtual void | sort (const BaseSorterByReference &, const Partition *) |
| sorts siblings in the search tree | |
Protected Member Functions | |
| bool | initialized () const |
| true iff refinement is initalized | |
base class for a 
|
pure virtual |
applies (left-)refinement to pi which is the original partition this refinement was initialized to
Implemented in permlib::partition::BacktrackRefinement< PERM >, permlib::partition::GroupRefinement< PERM, TRANS >, permlib::partition::MatrixRefinement1< PERM, MATRIX >, permlib::partition::MatrixRefinement2< PERM, MATRIX >, permlib::partition::SetImageRefinement< PERM >, and permlib::partition::SetStabilizeRefinement< PERM >.
|
virtual |
applies (right-)refinement to pi which is the image of the original partition this refinement was initialized to under t
Reimplemented in permlib::partition::GroupRefinement< PERM, TRANS >, and permlib::partition::SetImageRefinement< PERM >.
|
pure virtual |
initializes refinement
Implemented in permlib::partition::BacktrackRefinement< PERM >, permlib::partition::GroupRefinement< PERM, TRANS >, permlib::partition::MatrixRefinement1< PERM, MATRIX >, permlib::partition::MatrixRefinement2< PERM, MATRIX >, permlib::partition::SetImageRefinement< PERM >, and permlib::partition::SetStabilizeRefinement< PERM >.
| bool permlib::partition::Refinement< PERM >::initializeAndApply | ( | Partition & | pi | ) |
applies (left-)refinement to partition and initializes refinement for future use in R-base
|
inlinevirtual |
sorts siblings in the search tree
Reimplemented in permlib::partition::BacktrackRefinement< PERM >.