Subgroups are studied in most first courses in abstract algebra. Computing subgroups of a cyclic group is pretty straight forward, but it’s harder to get students to understand subgroups of a non-cyclic or, even better, a non-abelian group. With Magma, it’s easy to compute examples. Let’s start with something simple.

> A5 := AlternatingGroup(5);
> A5;
Permutation group A5 acting on a set of cardinality 5
Order = 60 = 2^2 * 3 * 5
(3, 4, 5)
(1, 2, 3)

Computing the subgroups of A5 is easy in Magma. Trying executing the following command and see if you can understand what it is giving you:

> Subgroups(A5);

We can do the same for cyclic subgroups:

> CSubs := CyclicSubgroups(A5);
> CSubs;

Or abelian subgroups:

> ASubs := AbelianSubgroups(A5);
> ASubs;

Magma will allow you to access (abstractly) one of the subgroups by choosing its location in the list followed by “`subgroup”:

> S := ASubs[5]`subgroup;
> S;
Permutation group S acting on a set of cardinality 5
Order = 4 = 2^2
(2, 5)(3, 4)
(2, 4)(3, 5)

Exercise: Create the dihedral group acting on an octagon. Find all the cyclic subgroups, and give a geometric description of those with order 2. Start by brainstorming for the answer and then use Magma to confirm your beliefs. You can guess the command for generating the Dihedral Group acting on a 8-sided figure, can’t you?