permlib 0.2.9
Library for permutation computations
Loading...
Searching...
No Matches
permlib::SymmetricGroup< PERM > Struct Template Reference

representation of a symmetric group More...

#include <symmetric_group.h>

Inheritance diagram for permlib::SymmetricGroup< PERM >:
permlib::BSGSCore< PERM, SymmetricGroupTransversal< PERM > >

Public Types

typedef SymmetricGroupTransversal< PERMTRANS
 transversal type used for the BSGS representation
Public Types inherited from permlib::BSGSCore< PERM, SymmetricGroupTransversal< PERM > >
typedef PERM PERMtype
 permutation type used by this BSGS
typedef SymmetricGroupTransversal< PERMTRANStype
 transversal type used by this BSGS
typedef std::list< typename PERM::ptr > PERMlist

Public Member Functions

 SymmetricGroup (unsigned int n)
 constructs a symmetric group of degree n
 SymmetricGroup (const SymmetricGroup< PERM > &symGroup)
 copy constructor
SymmetricGroupoperator= (const SymmetricGroup< PERM > &symGroup)
 assignment operator
virtual bool isSymmetricGroup () const
 true if this structure represents a symmetric group
Public Member Functions inherited from permlib::BSGSCore< PERM, SymmetricGroupTransversal< PERM > >
virtual ~BSGSCore ()
 empty destructor
virtual bool operator== (const BSGSCore< PERM, SymmetricGroupTransversal< PERM > > &bsgs) const
 checks for equality by internal id only

Additional Inherited Members

Public Attributes inherited from permlib::BSGSCore< PERM, SymmetricGroupTransversal< PERM > >
std::vector< dom_int > B
 base $B$
PERMlist S
 strong generating set $S$
std::vector< SymmetricGroupTransversal< PERM > > U
 transversals $U$ along the stabilizer chain
dom_int n
 degree of group
Protected Member Functions inherited from permlib::BSGSCore< PERM, SymmetricGroupTransversal< PERM > >
 BSGSCore (unsigned int id)
 constructs empty data structure with given group id
Protected Attributes inherited from permlib::BSGSCore< PERM, SymmetricGroupTransversal< PERM > >
int m_id
 id of this BSGS instance

Detailed Description

template<class PERM>
struct permlib::SymmetricGroup< PERM >

representation of a symmetric group

Dedicated data structure for a symmetric group because base and transversals are known in advance and easily computed. This group implementation uses a special transversal that computes transversal elements on demand.

Member Function Documentation

◆ isSymmetricGroup()

template<class PERM>
virtual bool permlib::SymmetricGroup< PERM >::isSymmetricGroup ( ) const
inlinevirtual

true if this structure represents a symmetric group

Reimplemented from permlib::BSGSCore< PERM, SymmetricGroupTransversal< PERM > >.


The documentation for this struct was generated from the following files: