Overview of the GroupTheory Package - Maple Programming Help

Home : Support : Online Help : Mathematics : Group Theory : GroupTheory

Overview of the GroupTheory Package

 Calling Sequence GroupTheory[command]( arguments ) command( arguments )

Description

 • The GroupTheory package provides a collection of commands for computing with, and visualizing, finitely generated (especially finite) groups. There are several classes of groups that are implemented.

 permutation groups groups given by a set of generating permutations finitely presented groups groups given by generators and defining relations Cayley table groups groups whose binary operation is specified by a Cayley table custom groups "black-box" user-defined groups whose elements are of an unspecified nature symbolic groups abstract groups depending on symbolic parameters

 • The package contains a variety of constructors that allow you to easily create groups in common families.  Furthermore, several databases of groups exist in the package, and interfaces to these databases are provided.

Tutorials

 Working with Finitely Presented Groups Working with Permutations

List of GroupTheory Package Commands

 • The following is a list of the commands in the GroupTheory package.

Constructors

 construct a finitely generated Abelian group return a list of all the Abelian groups of a given order construct the alternating group of a given order construct the Baby Monster sporadic finite simple group construct a Conway sporadic simple group construct a cyclic group of a given order construct a dicyclic group construct the dihedral group of a given degree construct a direct product of groups construct an elementary Abelian group construct one of the exceptional finite simple groups construct one of the Fischer groups construct a free group construct a Frobenius group from the database construct the Galois group of a polynomial construct the general linear group over a finite field construct the general orthogonal group over a finite field construct a general unitary group over a finite field construct the general linear group over a finite field construct a finite Hamiltonian group construct the Harada-Norton simple group construct the Held simple group construct the Higman-Sims simple group construct one of the Janko sporadic finite simple groups construct the Lyons simple group construct one of the Mathieu finite simple groups construct the McLaughlin simple group construct a metacyclic group construct the Monster simple group construct the O'Nan simple group construct the orbit of an element under a permutation group construct an orthogonal group construct a perfect group from the database create a permutation construct a projective linear group over a finite field construct a projective general unitary  group over a finite field construct a projective general linear group over a finite field construct a projective general unitary  group over a finite field construct a projective special linear group over a finite field construct a projective special unitary group over a finite field construct a projective symplectic group over a finite field construct a projective special linear group over a finite field construct a projective symplectic group over a finite field construct a projective special unitary group over a finite field construct the quaternion group of order eight construct the group of the Rubik's Cube construct the Rudvalis simple group construct a special linear group over a finite field construct a specific group of small order construct a special linear group over a finite field construct a special orthogonal group over a finite field construct a special unitary group over a finite field compute the stabilizer of a point under a permutation group construct a subgroup of a given group construct a supergroup of a given group construct the Suzuki simple group construct the symmetric group of a given degree construct the symmetric group of a given degree construct a symplectic group over a finite field construct the Thompson simple group construct the Tits simple group construct a specific transitive permutation group construct the trivial group construct the trivial subgroup of a given group

Subgroups

 compute the center of a group compute the centraliser of an element of a group compute the centralizer of an element of a group compute the centre of a group compute the commutator of two subgroups compute the core of a subgroup of a group compute the derived (commutator) subgroup of a group compute the directly indecomposable direct factors of a finite group compute the Fitting subgroup of a group compute the Frattini subgroup of a group compute a representative Frobenius complement of a Frobenius group compute the Frobenius kernel of a Frobenius group compute the product of two complexes in a finite group compute a Hall pi-subgroup of a finite soluble group compute the hypercenter residual of a group compute the index of a subgroup of a group compute the intersection of two subgroups of a group test whether a group is directly indecomposable test whether a subgroup of a group is malnormal test whether a subgroup of a group is normal test whether a subgroup of a group is quasi-normal test whether a subgroup of a group is subnormal compute the nilpotent residual of a group compute the normal closure of a subgroup or set of group elements compute the normaliser of a subgroup of a group compute the normaliser of a subgroup of a group compute the normalizer of a subgroup of a group compute the normal subgroups of a finite group compute the p-core of a subgroup of a group compute the socle of a group compute the soluble residual of a group compute the solvable residual of a group compute the lattice of subgroups of a group compute a Sylow basis for a finite soluble group compute a Sylow p-subgroup of a finite group compute a system normaliser for a soluble permutation group compute a system normalizer for a soluble permutation group

Databases

 return a list of the known Frobenius groups of a given order return a list of all the Hamiltonian groups of a given order return a list of the perfect groups of a given order return a list of all the groups of a given order return a list of all the transitive groups of a given degree construct a Frobenius group from the database locate a given Frobenius group in the database of Frobenius groups return the number of known Frobenius groups of a given order return the number of Hamiltonian groups of a given order return the number of perfect groups of a given order return the number of transitive groups of a given degree construct a perfect group from the database return a random group from the database of small groups search the Frobenius Groups database search the Perfect Groups database search the Small Groups database search the Transitive Groups database construct a specific group of small order construct a specific transitive permutation group

Invariants

 compute the Abelian invariants of a finitely presented group compute the composition length of a group compute the derived length of a group compute the exponent of a group compute the nilpotent (Fitting) length of a group compute the Frattini length of a group compute the order of a group compute the class of nilpotence of a group compute the nilpotent (Fitting) length of a group

Predicates

 check whether two group elements are conjugate test whether two groups are isomorphic test whether a group is Abelian test whether a group has Abelian Sylow subgroups test whether a group is almost simple test (probabilistically) whether a permutation group is an alternating group in its natural action test whether a group is a (CA)-group test whether a group is a (CC)-group test whether a group is a (CN)-group test whether a group is commutative test whether a group is cyclic test whether a group has cyclic Sylow subgroups test whether a group is Dedekind test whether a permutation group is a dihedral group test whether a group is elementary Abelian test whether a group is finite test whether a group is a Frobenius group test whether a group is a Frobenius permutation group test whether a group is a GCLT-group test whether a group has a complete mapping test whether a group is Hamiltonian test whether a group is Lagrangian test whether a subgroup of a group is malnormal test whether a group is Abelian test whether a group is Metacyclic test whether a group is nilpotent test whether a subgroup of a group is normal test whether a group has a Sylow tower test whether a group is perfect test whether a group has perfect order classes test whether a subgroup of a group is permutable test whether a group is a p-group test whether a permutation group is primitive test whether a permutation group is regular test whether a group is simple test whether a group is soluble test whether a group is solvable test whether a group is a stem group test whether one group is a subgroup of another test whether a subgroup of a group is subnormal test whether a group is supersoluble test whether a group has a Sylow tower test (probabilistically) whether a permutation group is a symmetric group in its natural action test whether a permutation group is transitive test whether a group is trivial test whether an element belongs to a given subgroup of a group compute the transitivity of a permutation group

Permutation Groups

 compute the cycle index polynomial of a permutation group return the degree of a permutation group construct a Frobenius permutation group isomorphic to a given Frobenius group test (probabilistically) whether a permutation group is an alternating group in its natural action test whether a permutation group is primitive test whether a permutation group is regular test (probabilistically) whether a permutation group is a symmetric group in its natural action test whether a permutation group is transitive compute the minimum degree of a faithful permutation representation for a group construct the orbit of an element under a permutation group compute the orbits of a permutation group compute the stabilizer of a point under a permutation group compute the transitivity of a permutation group

Finitely Presented Groups

 compute the Abelian invariants of a finitely presented group compute a measure of the complexity of a finitely presented group return the relators of a finitely presented group simplify the presentation of a finitely presented group

Visualization

 draw the Cayley table of a finite group draw the lattice of subgroups of a finite group

Series

 compute a composition series of a group compute the derived series of a group compute the Frattini series of a group compute the lower central series of a group compute the lower Fitting series of a group compute the lower p-central series of a group compute a Sylow tower for a Sylow tower group compute a Sylow tower for a Sylow tower group compute the upper central series of a group

Dessins

 find all decompositions of a Belyi map represented by a dessin find all dessins d'enfants with a specified branch pattern

Elements

 compute a random element of a group compute a random involution of a group compute a random p-element of a group compute a random element of a group with order relatively prime to p

Numbers

 test whether every group of a given order is Abelian test whether every group of a given order is cyclic test whether every group of a given order is a GCLT group test whether every group of a given order is integrable test whether every group of a given order is Lagrangian test whether every group of a given order is metabelian test whether every group of a given order is metacyclic test whether every group of a given order is nilpotent test whether every group of a given order has an ordered Sylow tower test whether every group of a given order is soluble test whether every group of a given order is supersoluble

Other

 return the Cayley graph of a finite group return the Cayley table of a finite group construct a character from a character table compute the character table of a finite group compute the conjugacy class of a group element compute all the conjugacy classes of a finite group compute an element conjugating one group element to another compute the order of a group element compute an integer power of a group element compute the elements of a finite group, orbit, coset or conjugacy class expression a group element as a product of a coset representative and a subgroup element return the set of generators of a group compute the Small Group ID of a small group return the set of generator labels of a group compute a left coset of a group element compute the left cosets of a subgroup of a group return a set of non-redundant generators of a group return the operations record of a group compute the element order profile of a finite group compute a measure of the complexity of a finitely presented group factor a group element into a product of elements of prime power order compute a right coset of a group element compute the right cosets of a subgroup of a group

Group Constructors Palette

 • The Group Constructors palette contains buttons for constructing groups.
 • Palettes are displayed in the left pane of the Maple window. (If it is not visible, from the main menu, select View > Palettes > Show Palette > Group Constructors)
 • Some palette items have placeholders. Fill in the placeholders, using Tab to navigate to the next placeholder.

Context-Sensitive Operations

 • In the Standard Worksheet interface, you can apply operations to a group through the Context Panel under the Group operations submenu.

Examples

The following command enables you to use the commands in the GroupTheory package without having to prefix each command with "GroupTheory:-".

 > $\mathrm{with}\left(\mathrm{GroupTheory}\right):$

Create a symmetric group of degree 4.

 > $G≔\mathrm{SymmetricGroup}\left(4\right)$
 ${\mathrm{GroupTheory}}{:-}{\mathrm{SymmetricGroup}}{}\left({4}\right)$ (1)

Visualize the lattice of subgroups of G.

 > $\mathrm{DrawSubgroupLattice}\left(G\right)$ Create a dihedral group of degree 4 (and order 8).

 > $H≔\mathrm{DihedralGroup}\left(4\right)$
 ${\mathrm{GroupTheory}}{:-}{\mathrm{DihedralGroup}}{}\left({4}{,}{\mathrm{form}}{=}{"permgroup"}\right)$ (2)

Visualize the Cayley (operation) table for H.

 > $\mathrm{DrawCayleyTable}\left(H\right)$ Compute the orders (cardinalities) of G and H.

 > $\mathrm{GroupOrder}\left(G\right),\mathrm{GroupOrder}\left(H\right)$
 ${24}{,}{8}$ (3)

Compute the character table of H.

 > $\mathrm{Display}\left(\mathrm{CharacterTable}\left(H\right)\right)$

 C 1a 2a 2b 2c 4a |C| 1 1 2 2 2 $\mathrm{χ__1}$ $1$ $1$ $1$ $1$ $1$ $\mathrm{χ__2}$ $1$ $1$ $-1$ $-1$ $1$ $\mathrm{χ__3}$ $1$ $1$ $-1$ $1$ $-1$ $\mathrm{χ__4}$ $1$ $1$ $1$ $-1$ $-1$ $\mathrm{χ__5}$ $2$ $-2$ $0$ $0$ $0$

Form the direct product in two ways.

 > $U≔\mathrm{DirectProduct}\left(G,H\right)$
 ${\mathrm{GroupTheory}}{:-}{\mathrm{DirectProduct}}{}\left({\mathbf{module}}\left({}\right)\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{...}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathbf{end module}}{,}{\mathbf{module}}\left({}\right)\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{...}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathbf{end module}}\right)$ (4)
 > $V≔\mathrm{DirectProduct}\left(H,G\right)$
 ${\mathrm{GroupTheory}}{:-}{\mathrm{DirectProduct}}{}\left({\mathbf{module}}\left({}\right)\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{...}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathbf{end module}}{,}{\mathbf{module}}\left({}\right)\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{...}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathbf{end module}}\right)$ (5)

Check that these are isomorphic.

 > $\mathrm{AreIsomorphic}\left(U,V\right)$
 ${\mathrm{true}}$ (6)

Notice that the order of the direct product is equal to the product of the orders of the factors.

 > $\mathrm{GroupOrder}\left(U\right)=\mathrm{GroupOrder}\left(G\right)\mathrm{GroupOrder}\left(H\right)$
 ${192}{=}{192}$ (7)

Since the order of U does not exceed 511, we can identify the group explicitly.

 > $\mathrm{id}≔\mathrm{IdentifySmallGroup}\left(U\right)$
 ${\mathrm{id}}{≔}{192}{,}{1472}$ (8)

Retrieve the identified group from the database, and check the isomorphism.

 > $W≔\mathrm{SmallGroup}\left(\mathrm{id}\right):$
 > $\mathrm{AreIsomorphic}\left(U,W\right)$
 ${\mathrm{true}}$ (9)
 > 

Compatibility

 • The GroupTheory package was introduced in Maple 17.