Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
218 changes: 3 additions & 215 deletions doc/ref/grplib.xml
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,9 @@ initially knows the following groups:
(see&nbsp;<Ref BookName="smallgrp" Chap="The Small Groups Library"/>),
</Item>
<Item>
a libary of finite perfect groups,
(see&nbsp;<Ref Sect="Finite Perfect Groups"/>),
a library of finite perfect groups,
provided by the <Package>PerfGrp</Package> package
(see&nbsp;<Ref BookName="perfgrp" Chap="The Perfect Groups Library"/>),
</Item>
<Item>
a library of primitive permutations groups,
Expand Down Expand Up @@ -326,219 +327,6 @@ It returns <K>fail</K> if no such group exists in the library.

</Section>

<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<Section Label="Finite Perfect Groups">
<Heading>Finite Perfect Groups</Heading>

<Index>perfect groups</Index>
The &GAP; library of finite perfect groups provides, up to isomorphism, a
list of all perfect groups whose sizes are less than <M>2\cdot 10^6</M>.
The groups of orders up to <M>10^6</M> have been enumerated by
Derek&nbsp;F. Holt and Wilhelm Plesken and
published in their book <Q>Perfect Groups</Q> <Cite Key="HP89"/>.
For orders <M>n = 86016</M>, 368640, or 737280 this work only counted the
groups (but did not explicitly list them), the groups of orders
<M>n = 61440</M>, 122880, 172032, 245760, 344064, 491520,
688128, or 983040 were omitted.
<P/>
We are grateful to Derek Holt and Wilhelm Plesken for making their groups
available to the &GAP; community by contributing their files. It should
be noted that their book contains a lot of further information for many
of the library groups. So we would like to recommend it to any &GAP;
user who is interested in the groups.
The library of these has been brought into &GAP; format by Volkmar Felsch.
<P/>
Several additional groups omitted from the book <Q>Perfect Groups</Q> have also
been included. Two groups -- one of order 450000 with a factor group of
type <M>A_6</M> and the one of order 962280 -- were found by Jack Schmidt in
2005. Two groups of order 243000 and one each of orders 729000, 871200, 878460
were found in 2020 by Alexander Hulpke.
<P/>
The perfect groups of size less than <M>2\cdot 10^6</M> which had not been
classified in the work of Holt and Plesken have been enumerated by Alexander
Hulpke. They are stored directly and provide less construction information
in their names.
<P/>
<P/>
As all groups are stored by presentations, a permutation representation
is obtained by coset enumeration. Note that some of the library groups do
not have a faithful permutation representation of small degree.
Computations in these groups may be rather time consuming.

<#Include Label="SizesPerfectGroups">
<#Include Label="PerfectGroup">
<#Include Label="PerfectIdentification">
<#Include Label="NumberPerfectGroups">
<#Include Label="SizeNumbersPerfectGroups">
<#Include Label="DisplayInformationPerfectGroups">

<Subsection Label="More about the Perfect Groups Library">
<Heading>More about the Perfect Groups Library</Heading>

For any library group <M>G</M>, the library files do not only provide a
presentation, but, in addition, a list of one or more subgroups <M>S_1,
\ldots, S_r</M> of <M>G</M> such that there is a faithful permutation
representation of <M>G</M> of degree <M>\sum_{{i = 1}}^r [G:S_i]</M>
on the set <M>\{ S_i g \mid 1 \leq i \leq r, g \in G \}</M>
of the cosets of the <M>S_i</M>.
This allows one to construct the groups as permutation groups.
The function <Ref Func="DisplayInformationPerfectGroups"
Label="for group order (and index)"/> displays only the available degree.
The message
<Log><![CDATA[
orbit size = 8
]]></Log>
<P/>
in the above example means that the available permutation representation
is transitive and of degree 8, whereas the message
<Log><![CDATA[
orbit sizes = 5 + 16
]]></Log>
means that a nontransitive permutation representation is available which
acts on two orbits of size 5 and 16 respectively.
<P/>
The notation used in the <Q>description</Q> of a group is explained in
section&nbsp;5.1.2 of <Cite Key="HP89"/>.
We quote the respective page from there:
<P/>
Within a class <M>Q\,\#\,p</M>, an isomorphism type of groups will be denoted
by an ordered pair of integers <M>(r,n)</M>, where <M>r \geq 0</M> and <M>n > 0</M>.
More precisely, the isomorphism types in <M>Q \# p</M> of order <M>p^r |Q|</M> will
be denoted by <M>(r,1), (r,2), (r,3), \ldots\,</M>. Thus <M>Q</M> will always get
the size number <M>(0,1)</M>.
<P/>
In addition to the symbol <M>(r,n)</M>, the groups in <M>Q\,\#\,p</M> will also be
given a more descriptive name. The purpose of this is to provide a very
rough idea of the structure of the group. The names are derived in the
following manner. First of all, the isomorphism classes of irreducible
<M>F_pQ</M>-modules <M>M</M> with <M>|Q|.|M| \leq 10^6</M>, where <M>F_p</M> is the field of
order <M>p</M>, are assigned symbols.
These will either be simply <M>p^x</M>, where <M>x</M> is the dimension of
the module, or, if there is more than one isomorphism class of irreducible
modules having the same dimension, they will be denoted by<M>p^x</M>,
<M>p^{{x'}}</M>, etc.
The one-dimensional module
with trivial <M>Q</M>-action will therefore be denoted by <M>p^1</M>. These symbols
will be listed under the description of <M>Q</M>. The group name consists
essentially of a list of the composition factors working from the top of
the group downwards; hence it always starts with the name of <M>Q</M> itself.
(This convention is the most convenient in our context, but it is
different from that adopted in the ATLAS <Cite Key="CCN85"/>, for example, where
composition factors are listed in the reverse order. For example, we
denote a group isomorphic to <M>SL(2,5)</M> by <M>A_5 2^1</M> rather than <M>2.A_5</M>.)
<P/>
Some other symbols are used in the name, in order to give some idea of
the relationship between these composition factors, and splitting
properties. We shall now list these additional symbols.
<P/>
<List>
<Mark><M>\times</M></Mark>
<Item>
between two factors denotes a direct product of
<M>F_pQ</M>-modules or groups.
</Item>
<Mark>C</Mark>
<Item>
(for <Q>commutator</Q>) between two factors means that the second
lies in the commutator subgroup of the first. Similarly, a segment
of the form <M>(f_1 \! \times \! f_2) C f_3</M> would mean that
the factors <M>f_1</M> and <M>f_2</M> commute modulo <M>f_3</M> and <M>f_3</M> lies in
<M>[f_1,f_2]</M>.
</Item>
<Mark>A</Mark>
<Item>
(for <Q>abelian</Q>) between two factors indicates that the second
is in the <M>p</M>th power (but not the commutator subgroup) of the
first. <Q>A</Q> may also follow the factors, if bracketed.
</Item>
<Mark>E</Mark>
<Item>
(for <Q>elementary abelian</Q>) between two factors indicates that
together they generate an elementary abelian group (modulo
subsequent factors), but that the resulting <M>F_p Q</M>-module extension
does not split.
</Item>
<Mark>N</Mark>
<Item>
(for <Q>nonsplit</Q>) before a factor indicates that <M>Q</M> (or
possibly its covering group) splits down as far at this factor but
not over the factor itself. So <Q><M>Q f_1 N f_2</M></Q> means that
the normal subgroup <M>f_1 f_2</M> of the group has no complement but,
modulo <M>f_2</M>, <M>f_1</M>, does have a complement.
</Item>
</List>
<P/>
Brackets have their obvious meaning. Summarizing, we have:
<P/>
<List>
<Mark><M>\times</M></Mark>
<Item>
= direct product;
</Item>
<Mark>C</Mark>
<Item>
= commutator subgroup;
</Item>
<Mark>A</Mark>
<Item>
= abelian;
</Item>
<Mark>E</Mark>
<Item>
= elementary abelian; and
</Item>
<Mark>N</Mark>
<Item>
= nonsplit.
</Item>
</List>
<P/>
Here are some examples.
<P/>
<List>
<Mark>(i)</Mark>
<Item>
<M>A_5 (2^4 E 2^1 E 2^4) A</M> means that the
pairs <M>2^4 E 2^1</M> and <M>2^1 E 2^4</M> are both elementary
abelian of exponent 4.
</Item>
<Mark>(ii)</Mark>
<Item>
<M>A_5 (2^4 E 2^1 A) C 2^1</M> means that
<M>O_2(G)</M> is of symplectic type <M>2^{{1+5}}</M>,
with Frattini factor group of type <M>2^4 E 2^1</M>.
The <Q>A</Q> after the <M>2^1</M> indicates that <M>G</M> has a central
cyclic subgroup <M>2^1 A 2^1</M> of order 4.
</Item>
<Mark>(iii)</Mark>
<Item>
<M>L_3(2) ((2^1 E) \! \times \! ( N 2^3 E 2^{{3'}} A) C) 2^{{3'}}</M>
means that the <M>2^{{3'}}</M>
factor at the bottom lies in the commutator subgroup
of the pair <M>2^3 E 2^{{3'}}</M> in the middle, but the lower
pair <M>2^{{3'}} A 2^{{3'}}</M> is abelian of exponent 4.
There is also a submodule <M>2^1 E 2^{{3'}}</M>, and the
covering group <M>L_3(2) 2^1</M> of <M>L_3(2)</M> does not split over the
<M>2^3</M> factor. (Since <M>G</M> is perfect, it goes without saying that
the extension <M>L_3(2) 2^1</M> cannot split itself.)
</Item>
</List>
<P/>
We must stress that this notation does not always succeed in being
precise or even unambiguous, and the reader is free to ignore it if it
does not seem helpful.
<P/>
If such a group description has been given in the book for <M>G</M>
(and, in fact, this is the case for most of the library groups),
it is displayed by <Ref Func="DisplayInformationPerfectGroups"
Label="for group order (and index)"/>.
Otherwise the function provides a less explicit description of the
(in these cases unique) Holt-Plesken class to which <M>G</M> belongs,
together with a serial number if this is necessary to make it unique.

</Subsection>
</Section>


<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<Section Label="Irreducible Maximal Finite Integral Matrix Groups">
Expand Down
1 change: 0 additions & 1 deletion doc/ref/makedocreldata.g
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@ GAPInfo.ManualDataRef:= rec(
"../../grp/basic.gd",
"../../grp/classic.gd",
"../../grp/conformal.gd",
"../../grp/perf.gd",
"../../grp/ree.gd",
"../../grp/suzuki.gd",
"../../lib/addmagma.gd",
Expand Down
8 changes: 6 additions & 2 deletions etc/emscripten/startup_manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -220,7 +220,6 @@
"grp/basic.gd",
"grp/classic.gd",
"grp/conformal.gd",
"grp/perf.gd",
"grp/suzuki.gd",
"grp/ree.gd",
"grp/simple.gd",
Expand Down Expand Up @@ -491,7 +490,6 @@
"grp/basicprm.gi",
"grp/basicmat.gi",
"grp/basicfp.gi",
"grp/perf.grp",
"grp/classic.gi",
"grp/conformal.gi",
"grp/suzuki.gi",
Expand Down Expand Up @@ -641,6 +639,7 @@
"pkg/packagemaker/PackageInfo.g",
"pkg/packagemanager/PackageInfo.g",
"pkg/patternclass/PackageInfo.g",
"pkg/perfgrp/PackageInfo.g",
"pkg/permut/PackageInfo.g",
"pkg/polenta/PackageInfo.g",
"pkg/polycyclic/PackageInfo.g",
Expand Down Expand Up @@ -730,6 +729,11 @@
"pkg/gapdoc/lib/GAPDoc2HTML.gi",
"pkg/gapdoc/lib/Examples.gi",
"pkg/gapdoc/lib/HelpBookHandler.g",
"pkg/perfgrp/init.g",
"pkg/perfgrp/gap/perf.gd",
"pkg/perfgrp/read.g",
"pkg/perfgrp/gap/perf.gi",
"pkg/perfgrp/gap/subgrp.gi",
"pkg/primgrp/init.g",
"pkg/primgrp/lib/primitiv.gd",
"pkg/primgrp/lib/irredsol.gd",
Expand Down
Loading
Loading