permlib  0.2.9
Library for permutation computations
Public Member Functions | List of all members
permlib::SymmetricGroupRecognitionHeuristic< PERM > Class Template Reference

Fast recognition of symmetric group subgroups. More...

#include <type_recognition_heuristic.h>

Public Member Functions

 SymmetricGroupRecognitionHeuristic (unsigned int n, bool storeUnusedGenerators=false)
 
bool addGenerator (const PERM &p)
 adds a group generator for recognition More...
 
void symmetricGroupOrbits (std::vector< std::list< dom_int > > &orbits)
 computes the orbits of recognized non-trivial symmetric subgroups More...
 
const std::list< PERM > & unusedGenerators ()
 returns the list of all group generators that were not used for group recognition
 

Detailed Description

template<class PERM>
class permlib::SymmetricGroupRecognitionHeuristic< PERM >

Fast recognition of symmetric group subgroups.

This class identifies subgroups that are symmetric groups by analyzing the graph induced by permutations which are transpositions.

Constructor & Destructor Documentation

◆ SymmetricGroupRecognitionHeuristic()

template<class PERM >
permlib::SymmetricGroupRecognitionHeuristic< PERM >::SymmetricGroupRecognitionHeuristic ( unsigned int  n,
bool  storeUnusedGenerators = false 
)
Parameters
nsize of the group domain
storeUnusedGeneratorsif set to true, all non-identity permutations that are not transpositions are stored for further use

Member Function Documentation

◆ addGenerator()

template<class PERM >
bool permlib::SymmetricGroupRecognitionHeuristic< PERM >::addGenerator ( const PERM &  p)

adds a group generator for recognition

Parameters
pgroup generator
Returns
true iff p is a transposition (and is therefore used for recognition) or is the identity

◆ symmetricGroupOrbits()

template<class PERM >
void permlib::SymmetricGroupRecognitionHeuristic< PERM >::symmetricGroupOrbits ( std::vector< std::list< dom_int > > &  orbits)

computes the orbits of recognized non-trivial symmetric subgroups

Parameters
orbitsvector of lists which contain indices belonging to the same orbit

The documentation for this class was generated from the following file: