Igor Schein asked (Jan 18):
I'd like to be able to determine in GAP4 whether a group has a
quarternion subgroup. For a example, I know apriori that
SmallGroup(36,29) does have one. I would like to visualize that in
The example mentioned looks odd: A group of order 36 cannot have a
quaternion subgroup of order 8, since 8 does not divide 36, moreover
there are only 14 (isomorphism classes of) groups of order 36.
However the question does make sense of course and here is some advice
There is no special function in GAP which would directly answer the
question if a given group contains a subgroup isomorphic to the
quaternion group, or that would just find such a subgroup.
If the 'table of marks' of the group in question is stored in the
library of table of marks, then the question can be answered from
inspection of that table. See the respective chapter in the GAP
However this will only be the case for a limited number of groups and
it would not be advisable for this purpse to ask GAP to compute the
table of marks for a group for which it is not stored, since doing
this automatically would in fact entail the calculation of the whole
Rather you should write a little GAP function for the purpose, that
could e.g. do the following:
For a given Group G find a 2-Sylow subgroup H.
In H find representatives of the H-conjugacy classes of elements of oder 4.
For each of them, say g, search for elements h in H
- of order 4
- normalizing <g>
- not centralizing g
- wth g^2 = h^2.
<g,h> will then be a quaternion subgroup and if no such pair is found
this way, G will not contain a quatenion subgroup.
Depending on how big the Sylow sbgroup is in comparison with G, other
ways to proceed may even be more advantageous, but in any case all
this can easily be done in GAP.
Finally, to visualize the embedding of such a quaternion group in the
given group, the package XGAP provides the possibility to get a
drawing of the subgroup lattice or parts thereof on the screen.
Hope this helps, if there are further, in particular technical
questions, please write to 'gap-trouble' rather than to 'gap-forum'.