|
permlib
0.2.8
Library for permutation computations
|
R-base for partition backtracking. More...
#include <r_base.h>
Public Types | |
|
typedef BaseSearch< BSGSIN, TRANSRET >::PERM | PERM |
|
typedef BaseSearch< BSGSIN, TRANSRET >::TRANS | TRANS |
|
typedef Refinement< PERM > ::RefinementPtr | RefinementPtr |
|
typedef RefinementFamily< PERM > ::PartitionPtr | PartitionPtr |
|
typedef std::list< std::pair < PartitionPtr, RefinementPtr > >::const_iterator | PartitionIt |
Public Member Functions | |
| RBase (const BSGSIN &bsgs, unsigned int pruningLevelDCM, bool stopAfterFirstElement=false) | |
| constructor | |
| void | search (BSGS< PERM, TRANSRET > &groupK) |
| perform search and store result in groupK | |
| virtual BaseSearch< BSGSIN, TRANSRET >::PERM::ptr | searchCosetRepresentative (BSGS< PERM, TRANSRET > &groupK, BSGS< PERM, TRANSRET > &groupL) |
| searches for a coset representative if one exists | |
Protected Member Functions | |
| void | construct (SubgroupPredicate< PERM > *pred, RefinementFamily< PERM > *predRefinement) |
| constructs an R-base for given predicate and refinement family | |
| virtual unsigned int | processNewFixPoints (const Partition &pi, unsigned int level) |
| callback when a new fix point appears during R-base construction | |
|
virtual const std::vector < dom_int > & | subgroupBase () const |
| base of the sought subgroup | |
Protected Attributes | |
| Partition | m_partition |
| partition to base the backtrack tree on | |
| Partition | m_partition2 |
R-base for partition backtracking.
| permlib::partition::RBase< BSGSIN, TRANSRET >::RBase | ( | const BSGSIN & | bsgs, |
| unsigned int | pruningLevelDCM, | ||
| bool | stopAfterFirstElement = false |
||
| ) |
constructor
| bsgs | BSGS to search in |
| pruningLevelDCM | prune levels smaller than pruningLevelDCM by double coset minimality with base change |
| stopAfterFirstElement | true iff the search can be stopped after the first element found with the desired property |
| void permlib::partition::RBase< BSGSIN, TRANSRET >::construct | ( | SubgroupPredicate< PERM > * | pred, |
| RefinementFamily< PERM > * | predRefinement | ||
| ) | [protected] |
constructs an R-base for given predicate and refinement family
group membership
-refinement for m_bsgs is used by default
| pred | |
| predRefinement | refinement family to use; may be zero to use only group membership -refinement |
| BaseSearch< BSGSIN, TRANSRET >::PERM::ptr permlib::partition::RBase< BSGSIN, TRANSRET >::searchCosetRepresentative | ( | BSGS< PERM, TRANSRET > & | groupK, |
| BSGS< PERM, TRANSRET > & | groupL | ||
| ) | [virtual] |
searches for a coset representative if one exists
the two arguments are two groups K and L such that
| groupK | subgroup of G |
| groupL | subgroup of G |
Implements permlib::BaseSearch< BSGSIN, TRANSRET >.
1.7.6.1