[GAP Forum] algorithms for subgroups of a permutation group

Pfeiffer, Gotz goetz.pfeiffer at nuigalway.ie
Fri Sep 20 11:12:00 BST 2019


Dear Bill, dear Forum,

A naïve algorithm for listing all subgroups of a
small group G can be built on the following observation:

The monoid P(G) (the powerset of the set of elements of G)
with set union as its multiplication acts on the set of
subgroups H of G via H.B = <H, B> for subsets B of G,
and is generated by the singleton sets {a}, a \in G.

The set of all subgroups of G then simply is the
orbit of the trivial subgroup under P(G).

Implementatsion:

orbit:= function(A, x, under)
     local a, y, z, list;
     list:= [x];
     for y in list do
         for a in A do
             z:= under(y, a);
             if not z in list then Add(list, z); fi;
         od;
     od;
     return list;
end;

onGroups:= function(x, a)
     return Group(Union(GeneratorsOfGroup(x), a));
end;

subgroups:= function(group)
     return orbit(List(Elements(group), a-> [a]),
                  Subgroup(group, []), onGroups);
end;

Application:

     gap> G:= SymmetricGroup(5);
     Sym( [ 1 .. 5 ] )
     gap> Size(G);
     120
     gap> subs:= subgroups(G);;
     gap> time;
     4903
     gap> Length(subs);
     156

Obviously, there is room for improvement ...

Götz





On 19/09/2019 23:30, Bill Allombert wrote:
> Dear Forum,
> 
> I have a question about computational group theory:
> 
> Is there an algorithm to compute all the subgroups of a permutation
> group ?
> 
> I know there is an algorithm for solvable groups.
> 
> However I am looking for an algorithm that would work for small
> permutation groups (say degree <=100, order <=1000)
> preferably without having precomputed tables for all perfect groups.
> 
> Thanks,
> Bill
> 
> _______________________________________________
> Forum mailing list
> Forum at gap-system.org
> https://mail.gap-system.org/mailman/listinfo/forum
> 

-- 
------------------------------------------------------------------------
goetz.pfeiffer at nuigalway.ie           http://schmidt.nuigalway.ie/~goetz
Mathematics, NUI Galway, Ireland.                  phone +353-91-49-3591


More information about the Forum mailing list