I know how to obtain all subgroups of a group in GAP. Is there any function in GAP (or algorithm that I could implemnt myself) for obtaining all maximal elementary abelian subgroups of a $p$-group $P$?
-
$\begingroup$ Do you need elementary abelian subgroups which are not contained in a larger elementary abelian subgroup, or do you need maximal subgroups which are elementary abelian? I'd understand the question as the former, but just to check. $\endgroup$– Olexandr KonovalovApr 11, 2021 at 16:52
-
1$\begingroup$ Yes, you understand it correctly. $\endgroup$– meselApr 11, 2021 at 18:28
1 Answer
There is no ready-made function that does this. As for implementing it yourself, clearly you can restrict to the $p$-Sylow subgroups. For each such subgroup, you could use the cyclic extension method, restricting to elementary abelian subgroups for extension, to find all elementary abelian subgroups. For example:
gap> g:=PrimitiveGroup(100,4);Size(g);
HS:2
88704000
gap> s:=SylowSubgroup(g,2);
<permutation group of size 1024 with 10 generators>
gap> lat:=LatticeByCyclicExtension(u,IsElementaryAbelian);;
gap> reps:=List(ConjugacyClassesSubgroups(lat),Representative);;
gap> reps:=Filtered(reps,IsElementaryAbelian);; # the filter does not eliminate wrong candidates
gap> List(reps,Size);
[ 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
4, 4, 8, 8, 8, 8, 8 ]
Then fuse under the group:
gap> reps:=List(SubgroupsOrbitsAndNormalizers(g,reps,false),x->x.representative);;
gap> List(reps,Size);
[ 1, 2, 2, 4, 4, 4, 4, 8, 8, 8 ]
Finally (testing for conjugacy with maximal subgroups) one could filter out those that are not maximal.
-
$\begingroup$ Thank you, I was not aware of "LatticeByCyclicExtension". I was planning to do so by checking each subgroup of $P$, which is a very bad algoritihm. $\endgroup$– meselApr 11, 2021 at 18:34
-
$\begingroup$ Is there any nice book for GAP which you can suggest me? $\endgroup$– meselApr 11, 2021 at 18:36
-
$\begingroup$ Some resources, and links to further collections of other resources are here - of course including books by @ahulpke. $\endgroup$ Apr 11, 2021 at 19:11
-
-
$\begingroup$ Why the function reps:=List(MaximalSubgroupsLattice(lat));; create an error? to find the maximal ones? $\endgroup$– meselApr 23, 2021 at 10:02