Goto Chapter: Top 1 2 3 4 5 6 7 Bib Ind
 [Top of Book]  [Contents]   [Previous Chapter]   [Next Chapter] 

1 Introduction to the GAP Character Table Library
 1.1 History of the GAP Character Table Library
 1.2 What's New in CTblLib, Compared to Older Versions?
 1.3 Acknowledgements

1 Introduction to the GAP Character Table Library

The usefulness of GAP for character theoretic tasks depends on the availability of many known character tables, and there are 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

It depends on your GAP installation whether the character table library is available. You can check this as follows.

gap> InstalledPackageVersion( "ctbllib" ) <> fail;

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 Section 4.5-1.

For general information about character tables in GAP, see Chapter Reference: Character Tables.

Examples of character theoretic computations involving the GAP Character Table Library are part of the package. They are dealing with the following aspects.

If you use the GAP Character Table Library to solve a problem then please send a short e-mail to about it. The GAP Character Table Library database should be referenced as follows.

@misc{ CTblLib1.3.7,
  author =       {Breuer, T.},
  title =        {The \textsf{GAP} {C}haracter {T}able {L}ibrary,
                  {V}ersion 1.3.7},
  month =        {January},
  year =         {2024},
  note =         {\textsf{GAP} package},
  howpublished = {\~{}Thomas.Breuer/ctbllib}

For referencing the GAP system in general, use the entry [GAP21] in the bibliography of this manual, see also

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 Reference: History of Character Theory Stuff in GAP. 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 [CCN+85] 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 [CCN+85] 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 [HJLP], 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 4.1 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 doc/ctbldiff.pdf of the package.

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 and the GAP Library of Tables of Marks (see the GAP packages AtlasRep and TomLib) and GAP's group libraries, and an improvement of the "database" aspect of the character table library itself, see the sections 3.1 and 3.5.

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 What's New in CTblLib, Compared to Older Versions?

The PDF file doc/ctbldiff.pdf of the package lists the important changes to the data since October 1996, mainly related to the relevant simple groups.

A perhaps more suitable overview of these changes is given by the GAP readable file data/ctbldiff.json, which contains a complete overview of all changes, including the additions of class fusions. (Note that each added or changed fusion is mentioned twice in this list, once for the "from" table and once for the "to" table.) This list of changes can be shown and evaluated using BrowseCTblLibDifferences (3.5-4) if the Browse package (see [BL23]) is available.

1.2-1 What's New in Version 1.3.7? (January 2024)

The following bug was fixed.

The following data have been added.

1.2-2 What's New in Version 1.3.6? (May 2023)

The release of Version 1.3.6 was necessary for technical reasons: The code for building the documentation of the package had to be adjusted to a change in GAP 4.13. This does not affect most users of the package because the package archive contains a ready documentation. (The ability to rebuild the package documentation had been requested by packagers for Linux distributions.)

1.2-3 What's New in Version 1.3.5? (March 2023)

1.2-4 What's New in Version 1.3.4? (April 2022)

The release of Version 1.3.4 was necessary for technical reasons: Now the testfile mentioned in PackageInfo.g exits GAP in the end.

1.2-5 What's New in Version 1.3.3? (January 2022)

The reason for this release was the addition of the new example section CTblLibXpls: Generation of sporadic simple groups by π- and π'-subgroups (December 2021), which requires the new data file data/prim_perm_M.json. (The data had already been used before in the example section CTblLibXpls: The Monster, which has now been changed accordingly.)

The database attribute IsQuasisimple has been added, which describes perfect central extensions of nonabelian simple groups. It can be used for example to select the character tables of quasisimple groups with AllCharacterTableNames (3.1-4). Thanks to Gunter Malle for suggesting this addition.

No new character tables have been added, and there are only a few new class fusions, admissible names, and group constructions.

1.2-6 What's New in Version 1.3.2? (March 2021)

The main new features of this release are technical.

In several InfoText (3.7-5) values of character tables, information about group constructions has been added; where possible, these constructions are now also available via GroupInfoForCharacterTable (3.3-1); for example, this function now supports also the construction of a group as the automorphism group of a simple group. (Thanks to Gunter Malle for ideas and discussions about this feature.)

The function BrowseAtlasImprovements (3.5-10) can now show (also) the improvements for the Atlas of Brauer Characters [JLPW95].

The strings "L2(49)" and "L2(81)" are now valid inputs for DisplayAtlasMap (3.5-8) and BrowseAtlasTable (3.5-9), and DisplayAtlasContents (3.5-6) and BrowseAtlasContents (3.5-5) now show information about these two and "L6(2)" and "S10(2)".

Besides these changes, a few new tables and class fusions have been added. A few new examples of applications have been added, see the sections 2.3-10, CTblLibXpls: The Character Table of 4.L_2(49).2_3 (December 2020), CTblLibXpls: The Character Table of 4.L_2(81).2_3 (December 2020).

1.2-7 What's New in Version 1.3.1? (April 2020)

This release was motivated by small technical changes: A few typos were fixed, an acknowledgement was added, the directory name of the package now contains the version number (in order not to overwrite older versions), and the process to generate the package documentation was made independent of other packages.

Besides that, the function CharacterTableComputedByMagma (6.5-3) was made more robust.

In particular, the data part of the package was not changed at all.

1.2-8 What's New in Version 1.3.0? (December 2019)

We distinguish bug fixes, new features, new character table data, new data of other kind, and changed documentation.

The following bugs were fixed.

The following features have been added.

Concerning added character table data, the full list of differences w. r. t. earlier versions can be found in the file data/ctbldiff.json of the package; see BrowseCTblLibDifferences (3.5-4) for a way to utilize this list in a GAP session.

The following other data have been added.

Finally, the documentation was changed as follows.

1.2-9 What's New in Version 1.2.2? (March 2013)

The following bugs were fixed.

1.2-10 What's New in Version 1.2.0 and 1.2.1? (May 2012)

Concerning character table data, we have the following.

Besides these changes of the data, the following features are new.

1.2-11 What's New in Version 1.1? (November 2003)

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 \(2^{10}:M_{22}\) in the group \(Fi_{22}\) is available because of the known \(2\)-modular table of \(M_{22}\) and the stored factor fusion onto the table of \(M_{22}\).

Second, more information has been made more explicit, in the following sense.

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. See 4.9 for details.

Finally, the GAP functions for reading and writing other formats of character tables have been moved from the main GAP library to this package (see Chapter 6), because they are useful only for library tables. The GAP 3 format is now also supported, mainly for documentation purposes (see Section 6.3).

1.3 Acknowledgements

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), the Schwerpunkt "Algorithmische Zahlentheorie und Algebra" (from 1991 until 1997), and the SFB-TRR 195 "Symbolic Tools in Mathematics and their Applications" (Project-ID 286237555, since 2017).

The functions for the conversion of CAS tables to GAP format have been written by Götz Pfeiffer. The functions for converting the so-called "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 generic character tables of double covers of alternating and symmetric groups were contributed by Felix Noeske, see [Noe02].

The functions in Section 3.4 (DeligneLusztigName (3.4-3), DeligneLusztigNames (3.4-2), and UnipotentCharacter (3.4-1)) as well as the corresponding data for the finite groups of Lie type in the GAP Character Table Library have been contributed by Michael Claßen-Houben, see [CH05].

Several character tables of maximal subgroups of covering groups of simple groups have been computed by Sebastian Dany, see [Dan06].

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.

Thanks to Frank Lübeck and Max Neunhöffer also for developing the GAPDoc package (see [LN18]), on which the manual of the CTblLib package is based. The previously available documentation format had been completely inappropriate.

 [Top of Book]  [Contents]   [Previous Chapter]   [Next Chapter] 
Goto Chapter: Top 1 2 3 4 5 6 7 Bib Ind

generated by GAPDoc2HTML