Group Theory
Maple 17 introduces a new package for working with groups, especially finite groups represented as groups of permutations.
restart:
withGroupTheory;
<|>,AllSmallGroups,AllTransitiveGroups,Alt,AlternatingGroup,AreConjugate,AreIsomorphic,BabyMonster,CayleyTable,CayleyTableGroup,Center,Centraliser,Centralizer,Centre,ConjugacyClass,ConjugacyClasses,Conjugator,ConwayGroup,Core,CustomGroup,CyclicGroup,Degree,DerivedLength,DerivedSeries,DerivedSubgroup,DicyclicGroup,DihedralGroup,DirectProduct,DirectProductImplementation,DrawCayleyTable,DrawSubgroupLattice,ElementaryGroup,Elements,Embedding,ExceptionalGroup,FPGroup,Factor,FischerGroup,FittingSubgroup,FrattiniSubgroup,GL,GaloisGroup,GeneralLinearGroup,GeneralOrthogonalGroup,GeneralUnitaryGroup,Generators,Group,GroupOrder,HaradaNortonGroup,HeldGroup,HigmanSimsGroup,Hypercentre,IdentifySmallGroup,Index,Intersection,IsAbelian,IsAlternating,IsCommutative,IsElementary,IsFinite,IsNilpotent,IsNormal,IsPerfect,IsPrimitive,IsRegular,IsSimple,IsSoluble,IsSolvable,IsSubgroup,IsSymmetric,IsTransitive,JankoGroup,Labels,LeftCoset,LeftCosets,LowerCentralSeries,LyonsGroup,MathieuGroup,McLaughlinGroup,MetacyclicGroup,Monster,NilpotencyClass,NilpotentResidual,NonRedundantGenerators,NormalClosure,Normaliser,NormaliserSubgroup,NormalizerSubgroup,NumGroups,NumTransitiveGroups,ONanGroup,Operations,Orbit,Orbits,OrthogonalGroup,PCore,PGL,PGU,PSL,PSU,PSp,PermApply,PermCommutator,PermConjugate,PermCycleType,PermDegree,PermFixed,PermInverse,PermLeftQuotient,PermOrder,PermParity,PermPower,PermProduct,PermRightQuotient,PermSupport,PermutationGroup,ProjectiveGeneralLinearGroup,ProjectiveGeneralUnitaryGroup,ProjectiveSpecialLinearGroup,ProjectiveSpecialUnitaryGroup,ProjectiveSymplecticGroup,QuaternionGroup,RandomElement,Relators,RightCoset,RightCosets,RubiksCubeGroup,RudvalisGroup,SL,SmallGroup,SolubleResidual,SolvableResidual,SpecialLinearGroup,SpecialOrthogonalGroup,SpecialUnitaryGroup,Stabiliser,Stabilizer,Subgroup,SubgroupLattice,SubgroupMembership,Supergroup,SuzukiGroup,SylowSubgroup,Symm,SymmetricGroup,SymplecticGroup,ThompsonGroup,TitsGroup,TransitiveGroup,TrivialGroup,UpperCentralSeries
Permutations
Permutation Groups
CayleyTable Groups
Finitely Presented Groups
Symbolic Groups
Group Constructors
Visualizations
Group Properties
Interesting Subgroups
Isomorphism Testing and Group Identification
See Also
Permutations are created by using the Perm constructor. Arithmetic with permutations is effected by non-commutative multiplication (.) and exponentiation (^), with a permutation understood as conjugation, or otherwise, a power.
a:=Perm⁡1,2;
a:=1,2
b≔Perm1,3,5,2,4
b:=1,3,52,4
PermProduct⁡a,b=a.b
1,4,2,3,5=1,4,2,3,5
PermConjugate⁡a,b=ab
3,4=3,4
PermInverse⁡a=a−1
1,2=1,2
PermCommutator⁡a,b=a−1.b−1.a.b
1,23,4=1,23,4
A focus for this release has been permutation groups: groups generated by a finite set of permutations on a finite set, which is taken to be the set {1,2,...,n}, for some positive integer n. In addition to abstract group-theoretic properties and computations applicable to any (finite) group, a selection of computations specific to permutation groups is included.
G:=Group⁡Perm⁡1,2,3,4,Perm⁡1,2,3,4
G:=1,23,4,1,2,3,4
GroupOrder⁡G
8
IsTransitive⁡G
true
IsPrimitive⁡G
false
IsRegular⁡G
IsNilpotent⁡G
G:=PSL⁡3,3
G:=PSL3,3
5616
Generators⁡G
5,8,116,9,127,10,13,1,2,53,8,74,11,69,10,13
G:=RubiksCubeGroup⁡:
O1:=Orbit⁡1,G
O1:=16,25,43,167,28,42,138,30,41,1117,19,24,2218,21,23,20,1,14,48,272,12,47,293,9,46,3233,35,40,3834,37,39,36,1,17,41,404,20,44,376,22,46,359,11,16,1410,13,15,12,3,38,43,195,36,45,218,33,48,2425,27,32,3026,29,31,28,1,3,8,62,5,7,49,33,25,1710,34,26,1811,35,27,19,14,22,30,3815,23,31,3916,24,32,4041,43,48,4642,45,47,44
Elements⁡O1
1,3,6,8,9,11,14,16,17,19,22,24,25,27,30,32,33,35,38,40,41,43,46,48
A group may be defined by its Cayley table, the operation table of the group. Cayley tables are specified as integer arrays or matrices.
ct:=1|2|3,2|3|1,3|1|2
G:=Group⁡ct
G:= < a Cayley table group with 3 elements >
IsAbelian⁡G
You can define a group by specifying a set of generators and defining relations.
For example, here is a definition of the alternating group of degree 5:
G:=x,y|x2=1,y3=1,x.y5=1
G:=x,y∣x2,y3,x⁢y⁢x⁢y⁢x⁢y⁢x⁢y⁢x⁢y
We can verify the order of the group directly.
60
To check simplicity, we first convert the finitely presented group to a permutation group, and then use the IsSimple command.
IsSimple⁡PermutationGroup⁡G
Symbolic groups are used to represent groups that depend on zero or more "parameters" (usually integers). They are used, for example, to represent some of the larger sporadic finite simple groups (such as the Monster and the Harada-Norton simple group) that are too large to support practical computation with group elements. Additionally, some constructors can take symbolic expressions for parameters and return a symbolic representation of the constructed group.
Monster⁡
𝕄
GroupOrder⁡Monster⁡
808017424794512875886459904961710757005754368000000000
IsSimple⁡Monster⁡
G:=GeneralLinearGroup⁡3,q
G:=GL3,q
q3−1⁢q3−q⁢q3−q2
IsSimple⁡Alt⁡nassuming5<n
Many groups can be created directly and conveniently by using purpose-built constructors provided by the GroupTheory package:
Symm⁡4
S4
Alt6
A6
DihedralGroup14
D14
PSL⁡3,4
PSL3,4
GL⁡2,2
GL2,2
It is useful to be able to visualize a group by examining its subgroup lattice graphically:
DrawSubgroupLattice⁡QuaternionGroup⁡
G:=SmallGroup⁡24,7:
DrawSubgroupLattice⁡G,derived,labels=none
DrawCayleyTable⁡Symm⁡3
Support for testing a variety of group properties is included in the GroupTheory package.
G:=Symm⁡3
G:=S3
IsNilpotentG
IsSolubleG
IsSimple⁡G
A number of standard subgroups can be constructed with the GroupTheory package.
G:=DihedralGroup⁡8
G:=D8
Z:=Centre⁡G
Z:=Z⁡D8
GroupOrder⁡Z
2
C:=DerivedSubgroup⁡G
C:=D8,D8
GroupOrder⁡C
4
P:=PCore⁡2,MetacyclicGroup⁡3,2,2
P:=O2⁡1,3,42,5,6,1,23,54,6
LowerCentralSeries⁡P
O2⁡1,3,42,5,6,1,23,54,6▹
R:=SolubleResidual⁡Symm⁡6
R:=1,3,2,2,4,3,3,5,4,4,6,5
IsPerfect⁡R
The GroupTheory package includes an isomorphism test for finite groups given by their Cayley tables. Operation of the command is extended to other finite groups by computing their Cayley tables, which is done automatically. The package also includes a database of all the finite groups of order not exceeding 200. Together, this allows any finite group with at most 200 elements to be identified unambiguously in a standard way.
We can verify the commutativity, up to isomorphism, of the direct product construction by using the AreIsomorphic command.
G:=DirectProduct⁡Alt⁡4,DihedralGroup⁡6
G:=A4×D6
H:=DirectProduct⁡DihedralGroup⁡6,Alt⁡4
H:=D6×A4
AreIsomorphic⁡G,H
IdentifySmallGroup⁡G
144,190
Group Theory Package
Download Help Document