permlib
0.2.6
Library for permutation computations
|
Transversal class that stores all transversal elements explicitly. More...
#include <explicit_transversal.h>
Public Member Functions | |
ExplicitTransversal (unsigned int n) | |
constructor | |
virtual PERM * | at (unsigned long val) const |
returns a transversal element ![]() ![]() | |
virtual bool | trivialByDefinition (const PERM &x, unsigned long to) const |
true if Schreier generator constructed from x and the transversal element related to "to" is trivial by defintion | |
virtual void | permute (const PERM &g, const PERM &gInv) |
updates transversal after group generators have been conjugated by g | |
ExplicitTransversal< PERM > | clone (const std::map< PERM *, typename PERM::ptr > &generatorChange) const |
returns a clone of this transversal | |
Static Public Attributes | |
static const unsigned int | m_statMaxDepth = 1 |
maximal depth of "tree" structure representing the transversal; identical to 1 for explicit transversal | |
Protected Member Functions | |
virtual void | registerMove (unsigned long from, unsigned long to, const typename PERM::ptr &p) |
stores that 'p' maps 'from' onto 'to' |
Transversal class that stores all transversal elements explicitly.
ExplicitTransversal< PERM > permlib::ExplicitTransversal< PERM >::clone | ( | const std::map< PERM *, typename PERM::ptr > & | generatorChange | ) | const |
returns a clone of this transversal
generatorChange | not used by this implementation; just for API consistence |
void permlib::ExplicitTransversal< PERM >::permute | ( | const PERM & | g, |
const PERM & | gInv | ||
) | [virtual] |
updates transversal after group generators have been conjugated by g
g | permutation to conjugate |
gInv | inverse of g for performance reasons |
Reimplemented from permlib::Transversal< PERM >.