[Up] [Next] [Index]

# 1 Introduction to the GAP Character Table Library

### Sections

1. History of the GAP Character Table Library
2. Installing the GAP Character Table Library
3. Loading the GAP Character Table Library
4. What's New in Version 1.1?
5. Acknowledgements

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;
    true

If 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.

## 1.1 History of the GAP Character Table Library

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.

## 1.2 Installing the GAP Character Table Library

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.

## 1.3 Loading the GAP Character Table Library

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" );
    true

See 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.

## 1.4 What's New in Version 1.1?

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.
--
  Attributes have been introduced that replace more or less hidden components (see Access to Library Character Tables); in particular, the way how many ordinary tables are encoded via the construction from other tables is no longer encapsulated in a function call but instead the name of the function and the arguments are stored as an attribute value (see ConstructionInfoCharacterTable).
--
  The functions that are used for the table constructions have been documented (see Chapter Functions for Character Table Constructions).
--
  Several consistency checks are now part of the package distribution, in the files `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.
--
  As a part of the consistency checks, class fusions between character tables and from character tables into corresponding tables of marks have been recomputed, and the `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.
--
  One can now avoid unloading the contents of data files, which can speed up computations involving many library tables (see CTblLibSetUnload).

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).

## 1.5 Acknowledgements

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.

[Up] [Next] [Index]