permlib
0.2.6
Library for permutation computations
|
base class for BSGS construction algorithms More...
#include <base_construction.h>
Public Member Functions | |
BaseConstruction (dom_int n) | |
constructor | |
Protected Member Functions | |
template<class ForwardIterator , class InputIterator > | |
void | setup (ForwardIterator generatorsBegin, ForwardIterator generatorsEnd, InputIterator prescribedBaseBegin, InputIterator prescribedBaseEnd, BSGS< PERM, TRANS > &bsgs, std::vector< std::list< typename PERM::ptr > > &S) const |
initializes BSGS object | |
void | mergeGenerators (std::vector< std::list< typename PERM::ptr > > &S, BSGS< PERM, TRANS > &ret) const |
merges all strong generators in S into a single strong generating set ret.S | |
Protected Attributes | |
dom_int | m_n |
cardinality of the set the group is acting on | |
Static Protected Attributes | |
static const unsigned long * | empty = static_cast<unsigned long*>(0) |
auxilliary element marking an empty iterator |
base class for BSGS construction algorithms
permlib::BaseConstruction< PERM, TRANS >::BaseConstruction | ( | dom_int | n | ) | [explicit] |
constructor
n | cardinality of the set the group is acting on |
void permlib::BaseConstruction< PERM, TRANS >::setup | ( | ForwardIterator | generatorsBegin, |
ForwardIterator | generatorsEnd, | ||
InputIterator | prescribedBaseBegin, | ||
InputIterator | prescribedBaseEnd, | ||
BSGS< PERM, TRANS > & | bsgs, | ||
std::vector< std::list< typename PERM::ptr > > & | S | ||
) | const [protected] |
initializes BSGS object
generatorsBegin | begin iterator of group generators of type PERM |
generatorsEnd | end iterator of group generators of type PERM |
prescribedBaseBegin | begin iterator of prescribed base of type unsigned long |
prescribedBaseEnd | end iterator of prescribed base of type unsigned long |
bsgs | BSGS object to work on |
S | approximation of strong generating set to fill |