Transversal class that stores transversal elements in a Schreier tree. More...
#include <schreier_tree_transversal.h>
Public Member Functions | |
SchreierTreeTransversal (unsigned int n) | |
constructor | |
virtual bool | trivialByDefinition (const PERM &x, ulong to) const |
true if Schreier generator constructed from x and the transversal element related to "to" is trivial by defintion | |
virtual PERM * | at (ulong val) const |
returns a transversal element ![]() ![]() | |
virtual void | updateGenerators (const std::map< PERM *, PERMptr > &generatorChange) |
updates transversal after group generators have been exchanged | |
SchreierTreeTransversal< PERM > | clone (const std::map< PERM *, PERMptr > &generatorChange) const |
returns a clone of this transversal | |
SchreierTreeTransversal (unsigned int n) | |
constructor | |
virtual bool | trivialByDefinition (const PERM &x, ulong to) const |
true if Schreier generator constructed from x and the transversal element related to "to" is trivial by defintion | |
virtual PERM * | at (ulong val) const |
returns a transversal element ![]() ![]() | |
virtual void | updateGenerators (const std::map< PERM *, PERMptr > &generatorChange) |
updates transversal after group generators have been exchanged | |
SchreierTreeTransversal< PERM > | clone (const std::map< PERM *, PERMptr > &generatorChange) const |
returns a clone of this transversal | |
Public Attributes | |
uint | m_statMaxDepth |
maximal depth of tree structure representing the transversal | |
Protected Member Functions | |
virtual void | registerMove (ulong from, ulong to, const PERMptr &p) |
stores that 'p' maps 'from' onto 'to' | |
virtual void | registerMove (ulong from, ulong to, const PERMptr &p) |
stores that 'p' maps 'from' onto 'to' |
Transversal class that stores transversal elements in a Schreier tree.
SchreierTreeTransversal<PERM> permlib::SchreierTreeTransversal< PERM >::clone | ( | const std::map< PERM *, PERMptr > & | generatorChange | ) | const |
returns a clone of this transversal
the group generators that the clone may use are given by the transition map
generatorChange | transition map |
Reimplemented in permlib::ShallowSchreierTreeTransversal< PERM >, and permlib::ShallowSchreierTreeTransversal< PERM >.
SchreierTreeTransversal< PERM > permlib::SchreierTreeTransversal< PERM >::clone | ( | const std::map< PERM *, PERMptr > & | generatorChange | ) | const [inline] |
returns a clone of this transversal
the group generators that the clone may use are given by the transition map
generatorChange | transition map |
Reimplemented in permlib::ShallowSchreierTreeTransversal< PERM >, and permlib::ShallowSchreierTreeTransversal< PERM >.
virtual void permlib::SchreierTreeTransversal< PERM >::updateGenerators | ( | const std::map< PERM *, PERMptr > & | generatorChange | ) | [virtual] |
updates transversal after group generators have been exchanged
generatorChange | map of old generators to new generators |
Reimplemented from permlib::Transversal< PERM >.
Reimplemented in permlib::ShallowSchreierTreeTransversal< PERM >, and permlib::ShallowSchreierTreeTransversal< PERM >.
void permlib::SchreierTreeTransversal< PERM >::updateGenerators | ( | const std::map< PERM *, PERMptr > & | generatorChange | ) | [inline, virtual] |
updates transversal after group generators have been exchanged
generatorChange | map of old generators to new generators |
Reimplemented from permlib::Transversal< PERM >.
Reimplemented in permlib::ShallowSchreierTreeTransversal< PERM >, and permlib::ShallowSchreierTreeTransversal< PERM >.