The usefulness of GAP for character theoretic tasks depends on the availability of many known character tables, and there is a lot of character tables in the GAP table library. Of course, this library is ``open'' in the sense that it shall be extended. So we would be grateful for any further tables of interest sent to us for inclusion into our library. Please offer interesting new character tables via e-mail to sam@math.rwth-aachen.de.
It depends on your GAP installation whether the character table library is available. You can check this as follows.
gap> InstalledPackageVersion( "ctbllib" ) <> fail; trueIf the result is
false
then the library is not installed,
and you may ask your system administrator for installing it,
or install the library in your home directory
(see Installing the GAP Character Table Library).
For general information about character tables in GAP, see Chapter Character Tables in the GAP Reference Manual.
The doc
directory of the GAP Character Table Library contains several
files with demonstrations of computations with character tables.
Currently these are ambigfus.pdf
, ctbldeco.pdf
, ctblj4.pdf
,
ctblpope.pdf
, ctocenex.pdf
, multfree.pdf
, and multfre2.pdf
.
If you use the GAP Character Table Library to solve a problem then please send a short email to sam@math.rwth-aachen.de about it. The GAP Character Table Library database should be referenced with the entry CTblLib in the bibliography of this manual.
For referencing the GAP system in general, use the entry GAP4 in the bibliography of this manual.
The first version of the GAP Character Table Library was released with GAP 3.1 in March 1992.
It was the first aim of this library to continue the character table library of the CAS system (see NPP84) in GAP, as a part of the process of reimplementing the algorithms of CAS in GAP (see History of Character Theory Stuff in GAP in the GAP Reference Manual). GAP 3.1 provided only very restricted methods for computing character tables from groups, so its character theory part was concerned mainly with library tables.
A second aspect of the character table library was to make all character tables shown in the ATLAS of Finite Groups (CCN85) available in GAP. In fact GAP turned out to provide a very good environment for systematic checks of these character tables.
To some extent, the access to the (ordinary) character tables in CCN85 was a prerequisite for storing also the corresponding Brauer character tables in the GAP character table library. Already GAP 3.1 contained many of these tables. They have been computed mainly ``outside of GAP'', using the methods described in HJLP92, and part of the library has been published in the ATLAS of Brauer Characters (JLPW95). One of the roles of GAP was again to perform systematic checks.
Besides these projects, many individual character tables have been added
to the GAP Character Table Library since the times of GAP 3.1.
They were computed from groups or with character theoretic methods
or using a combination of these two possibilities
(see, e.g., NPP84 and LP91).
Section Contents of the GAP Character Table Library lists some of the
sources.
The changes in the GAP Character Table Library since the release of
GAP 4.1 (in July 1999) are individually documented in the file
ctbldiff.pdf
which can be found in the doc
directory of the package.
In the meantime, a rudimentary interface between groups in GAP and the tables in the GAP Character Table Library has been provided (see The Interface between Character Tables and Groups in the GAP Reference Manual). Similarly, there is an interface to the GAP Libary of Tables of Marks (see The Interface between Tables of Marks and Character Tables in the GAP Reference Manual).
Currently the main focus in the development of the GAP Character Table Library is --besides the addition of tables that appear to be interesting-- the better interaction with other databases, such as the ATLAS of Group Representations (see the GAP 4 package AtlasRep), and an improvement of the ``database'' aspect of the character table library itself, for example by providing a ``WWW table of contents''.
Until the release of GAP 4.3 in spring 2002, the GAP Character Table Library had been a part of the main GAP library. With GAP 4.3, it was ``split off'' as a GAP package.
To install the package unpack the archive file in a
directory in the pkg
directory of your local copy of GAP 4.
This might be the pkg
directory of the GAP 4 home directory,
see Section Installing a GAP Package
of the GAP 4 Reference Manual for details.
It is however also possible to keep an additional pkg
directory
in your private directories,
see GAP Root Directory of the GAP 4 Reference Manual.
The latter possibility must be chosen if you do not have write access
to the GAP root directory.
The package consists entirely of GAP code, no external binaries need to be compiled.
For checking the installation of the package, you should start GAP, load the package (see Loading the GAP Character Table Library), and then call
gap> ReadPackage( "ctbllib", "tst/testinst.g" );If the installation is o.k. then
true
is printed, and the GAP prompt
appears again;
otherwise the output lines tell you what should be changed.
More testfiles are available in the tst
directory of the package.
Both dvi and pdf versions of the package manual are available
(as manual.dvi
and manual.pdf
respectively) in the doc
directory
of the package,
and an HTML version can be found in the htm
directory.
The GAP Character Table Library may be loaded automatically when GAP is started, or it has to be loaded within GAP as follows.
gap> LoadPackage( "ctbllib" ); trueSee Loading a GAP Package in the GAP Reference Manual for details about these alternatives; also the possibility to disable automatic loading of the package is described in this manual section. The default is that the GAP Character Table Library is loaded automatically.
If the main memory of your computer is large enough then it may save time to keep all data in memory once they have been loaded, see CTblLibSetUnload.
First of all, of course several character tables were added; for an overview,
see the file doc/ctbldiff.pdf
in the home directory of the package.
Also lots of class fusions were added.
This includes factor fusions onto the tables of the factor groups modulo the
largest normal p-subgroups whenever the tables of the factors are
available; these maps admit the automatic construction of the p-modular
Brauer tables if the corresponding tables of the factors are available.
For example, the 2-modular Brauer table of the maximal subgroup of the
type 210:M22 in the group Fi22 is available because of the known
2-modular table of M22 and the stored factor fusion onto the table of
M22.
Second, more information has been made more explicit, in the following sense.
Identifier
values of tables that are constructed from generic tables
are now valid arguments of CharacterTable
,
for example CharacterTable( "C10" )
and CharacterTable( "Sym(5)" )
can be used to create the character table of the cyclic group of order
10 and of the symmetric group of degree 5, respectively.
gap4/test.gd
and gap4/test.gi
.
However, currently they are not documented.
The new file tst/testall.g
lists the files that belong to the
``standard test suite''.
Further checks involving the GAP Character Table Library are parts
of the GAP packages AtlasRep (see AtlasRep) and TomLib.
text
components have been standardized;
this means that the texts express whether the maps are unique, unique
up to table automorphisms, or ambiguous.
However, currently this is not documented.
Third, several errors have been corrected (again see doc/ctbldiff.pdf
).
Most of them affect class fusions, and for most of those, the term error
could be regarded as not really appropriate.
The point is that there are class fusions which predate the availability of
Brauer tables in the Character Table Library (in fact many of them have been
inherited from the library of the CAS system),
but they are not compatible with the Brauer tables.
For example, there are four possible class fusion from M23 into Co3,
which lie in one orbit under the relevant groups of table automorphisms;
two of these maps are not compatible with the 3-modular Brauer tables of
M23 and Co3, and unfortunately the class fusion that was stored on
the CAS tables --and that was available in version 1.0 of the GAP
Character Table Library-- was one of the not compatible maps.
One could argue that the class fusion has older rights,
and that the Brauer tables should be adjusted to them, but the Brauer tables
are published in the ATLAS of Brauer Characters JLPW95,
which is an accepted standard.
Finally, the GAP functions for reading and writing other formats of character tables have been moved here from the main GAP library (see Chapter Interfaces to Other Data Formats for Character Tables), because they are useful only for library tables. The GAP 3 format is now also supported, mainly for documentation purposes (see Interface to GAP 3).
The functions for the conversion of CAS tables to GAP format have been written by Götz Pfeiffer. The functions for converting the ``Cambridge format'' (in which the original data of the ATLAS of Finite Groups had been stored) to GAP format have been written by Christoph Jansen.
The development of the GAP Character Table Library has been supported by several DFG grants, in particular the project ``Representation Theory of Finite Groups and Finite Dimensional Algebras'' (until 1991), and the Schwerpunkt ``Algorithmische Zahlentheorie und Algebra'' (from 1991 until 1997).
Thanks to Frank Lübeck and Max Neunhöffer for their help with solving technical problems concerning the HMTL part of the example files that belong to the package documentation, and to Ian Hutchinson whose TeX to HTML translator TtH was used to provide these HTML files.
CTblLib manual