# [GAP Forum] how to compute all subgroups of order p up to conjugacy

Frédéric Vanhove fvanhove at cage.ugent.be
Tue May 27 08:56:14 BST 2008

```Hello,

many thanks for letting me on this list.  This is my very first question.

This is my problem : let G be a finite group, the order of which
divisibly by a prime p.  I would like to get a list of all subgroups of
G of order p, up to conjugacy.

Is there a command in GAP for that.  Right now, I only know two
alternatives:

listofgroupssizep:=function(g,p)
local hom,image,syl,ccs,ccs2,elem;
hom := NiceMonomorphism(g);;
image:=Image(hom);;
syl := SylowSubgroup(image, p);;
ccs:=ConjugacyClasses(syl);;
ccs2 := Filtered(List(ccs,Representative),t->Order(t)=p);;
elem := List(ccs2,t->PreImage(hom,t));
pgroups:=List(elem,x->Subgroup(g,[x]));;
return pgroups;
end;

This function needs a group g and a prime p as arguments, and it returns
a list of subgroups of order p.  All possibilites up to conjugacy will
appear at least once, but unfortunately many of them will appear more
than once...

The other alternative is :

Filtered(ConjugacyClassesSubgroups(g),x->Size(Representative(x))=p);

which works fine as long as g is pretty small, because it's absolutely
not efficient and it just doesn't finish the job when g is a bit bigger.

Does anyone know some advice?

Thank you very much,

Frédéric Vanhove
Ghent University
Belgium

```