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 &AUTHOREMAIL;.

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

For general information about character tables in &GAP;, see Chapter .

The doc and htm directories of the &GAP; Character Table Library contain several files with examples of character theoretic computations, in PDF and HTML format. <a name="application_files">Currently these are</a> Currently these are

Ambiguous class fusions, see http://www.math.rwth-aachen.de/~Thomas.Breuer/ctbllib/doc/ambigfus.pdf doc/ambigfus.pdf and http://www.math.rwth-aachen.de/~Thomas.Breuer/ctbllib/htm/ambigfus.htm htm/ambigfus.htm . Constructions of character tables using table automorphisms, see http://www.math.rwth-aachen.de/~Thomas.Breuer/ctbllib/doc/ctblcons.pdf doc/ctblcons.pdf and http://www.math.rwth-aachen.de/~Thomas.Breuer/ctbllib/htm/ctblcons.htm htm/ctblcons.htm . Ordinary character tables, Brauer tables, and decomposition matrices, see http://www.math.rwth-aachen.de/~Thomas.Breuer/ctbllib/doc/ctbldeco.pdf doc/ctbldeco.pdf and http://www.math.rwth-aachen.de/~Thomas.Breuer/ctbllib/htm/ctbldeco.htm htm/ctbldeco.htm . Constructing the irreducible characters of J_4 from one faithful character, see http://www.math.rwth-aachen.de/~Thomas.Breuer/ctbllib/doc/ctblj4.pdf doc/ctblj4.pdf and http://www.math.rwth-aachen.de/~Thomas.Breuer/ctbllib/htm/ctblj4.htm htm/ctblj4.htm . Computations of possible permutation characters, see http://www.math.rwth-aachen.de/~Thomas.Breuer/ctbllib/doc/ctblpope.pdf doc/ctblpope.pdf and http://www.math.rwth-aachen.de/~Thomas.Breuer/ctbllib/htm/ctblpope.htm htm/ctblpope.htm . Computations of common central extensions, see http://www.math.rwth-aachen.de/~Thomas.Breuer/ctbllib/doc/ctocenex.pdf doc/ctocenex.pdf and http://www.math.rwth-aachen.de/~Thomas.Breuer/ctbllib/htm/ctocenex.htm htm/ctocenex.htm . Some computations concerning the classification of groups with the property that all complex irreducible characters of the same degree are Galois conjugate (together with Klaus Lux), see http://www.math.rwth-aachen.de/~Thomas.Breuer/ctbllib/doc/dntgap.pdf doc/dntgap.pdf and http://www.math.rwth-aachen.de/~Thomas.Breuer/ctbllib/htm/dntgap.htm htm/dntgap.htm . Hamiltonian cycles in the generating graphs of finite groups, see http://www.math.rwth-aachen.de/~Thomas.Breuer/ctbllib/doc/hamilcyc.pdf doc/hamilcyc.pdf and http://www.math.rwth-aachen.de/~Thomas.Breuer/ctbllib/htm/hamilcyc.htm htm/hamilcyc.htm . Multiplicity-free permutation characters of the sporadic simple groups and their automorphism groups, see http://www.math.rwth-aachen.de/~Thomas.Breuer/ctbllib/doc/multfree.pdf doc/multfree.pdf and http://www.math.rwth-aachen.de/~Thomas.Breuer/ctbllib/htm/multfree.htm htm/multfree.htm . Multiplicity-free permutation characters of central extensions of the sporadic simple groups, and their automorphic extensions (together with Jürgen Müller), see http://www.math.rwth-aachen.de/~Thomas.Breuer/ctbllib/doc/multfre2.pdf doc/multfre2.pdf and http://www.math.rwth-aachen.de/~Thomas.Breuer/ctbllib/htm/multfre2.htm htm/multfre2.htm . A question about the group PSO^+(8,5).S_3, see http://www.math.rwth-aachen.de/~Thomas.Breuer/ctbllib/doc/o8p2s3_o8p5s3.pdf doc/o8p2s3_o8p5s3.pdf and http://www.math.rwth-aachen.de/~Thomas.Breuer/ctbllib/htm/o8p2s3_o8p5s3.htm htm/o8p2s3_o8p5s3.htm . Probabilistic generation of finite simple groups, see http://www.math.rwth-aachen.de/~Thomas.Breuer/ctbllib/doc/probgen.pdf doc/probgen.pdf and http://www.math.rwth-aachen.de/~Thomas.Breuer/ctbllib/htm/probgen.htm htm/probgen.htm . Solvable subgroups of maximal order in sporadic simple groups http://www.math.rwth-aachen.de/~Thomas.Breuer/ctbllib/doc/sporsolv.pdf doc/sporsolv.pdf and http://www.math.rwth-aachen.de/~Thomas.Breuer/ctbllib/htm/sporsolv.htm htm/sporsolv.htm . Maintenance issues concerning the &GAP; Character Table Library http://www.math.rwth-aachen.de/~Thomas.Breuer/ctbllib/doc/maintain.pdf doc/maintain.pdf and http://www.math.rwth-aachen.de/~Thomas.Breuer/ctbllib/htm/maintain.htm htm/maintain.htm .

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

    @misc{ CTblLib&VERSIONNUMBER;,
      author =       {Breuer, T.},
      title =        {The \textsf{GAP} {C}haracter {T}able {L}ibrary,
                      {V}ersion &VERSIONNUMBER;},
      month =        {&RELEASEMONTH;},
      year =         {&RELEASEYEAR;},
      note =         {\textsf{GAP} package},
      howpublished = {http://www.math.rwth-aachen.de/\~{}Thomas.Breuer/ctbllib}
    }

For referencing the &GAP; system in general, use the entry in the bibliography of this manual, see also

http://www.gap-system.org.
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 ) in &GAP;, as a part of the process of reimplementing the algorithms of &CAS; in &GAP;, see . &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 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 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 , and part of the library has been published in the &ATLAS; of Brauer Characters . 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., and ).

Section 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 http://www.math.rwth-aachen.de/~Thomas.Breuer/ctbllib/doc/ctbldiff.pdf 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 and .

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.
What's New in `CTblLib`, Compared to Older Versions? <a id="sect:news"/> What's New in Version 1.2? The following bugs were fixed in version 1.2.2. The functions and ran into an error in certain situations, if the library had been extended by private tables, see Section . (As a consequence, the description of has been extended.) Thanks to Alexander Konovalov and Lukas Maas for pointing out this error. The function returned a wrong result if the two factors were given by the same character table, for example in the case of (A_5 \times A_5).2 created as a subdirect product of two copies of S_5.

Concerning character table data, we have the following. A few bugs in character tables have been fixed. Several class fusions stored in character tables have been changed, in order to be more consistent with related data, see Section for reasons of such changes. Many new character tables have been added. For example, a character table is available for each table of marks in the `TomLib` package. Like in earlier versions, the PDF file doc/ctbldiff.pdf of the package lists the important changes, mainly related to the relevant simple groups. However, a probably more suitable overview is given by the &GAP; readable file data/ctbldiff.dat, 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 using if the `Browse` package (see ) is available.

Besides these changes of the data, the following features are new. A tutorial for beginners was added to the package manual, see Chapter , and the package manual was restructured. The manual is now based on the `GAPDoc` package. Generic constructions of Brauer tables are now available if the underlying ordinary table is encoded via , , or , and if the Brauer tables of the compound tables are known. The attributes and are no longer set in duplicate tables. This can be regarded as a bugfix, in the following sense. For the sake of consistency, it would in general be necessary to apply a permutation to the fusion into the table of marks, and to add the class fusions from the tables of the maximal subgroups to the duplicate table. The consistency checks for character tables have been improved and are now documented, see Section . Due to these checks, several class fusions had to be replaced. The concept of duplicate character tables is now explicit, see Section . As a consequence, the behaviour of has changed in situations where IsSimple and IsSporadicSimple (see ) occur, as follows. In earlier versions of the package, duplicate tables had automatically been excluded. From now on, duplicates can be excluded if one wants so, but they are not automatically excluded. This change may be regarded as a bugfix. Several attribute values for character tables, such as and are now available without reading the character table data files, provided that the `Browse` package (see ) has been loaded. See the documentation of for details; this function is much faster if only these attributes appear in the conditions given. Thus it is now more reasonable to use this function for searches in the table library. &GAP;'s group libraries provide many groups for which the Character Table Library contains the character tables. Given a character table from the library, one can list and access available groups with the functions described in Section , provided that the `Browse` package (see ) has been loaded. An interactive overview of the contents is now available that is based on the `Browse` package , see Section . Information about Deligne-Lusztig names of unipotent characters of finite groups of Lie type is now available, see Section . An interface for reading `Magma` tables was added, see Section . 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 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. values of tables that are constructed from generic tables are now valid arguments of , 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 Section ); 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 ). The functions that are used for the table constructions have been documented (see Chapter ). 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 ) 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. (In version 1.1, the function CTblLibSetUnload had been provided for that. Since version 1.2, a &GAP; 4.5 user preference replaces this function.)

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 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 ), because they are useful only for library tables. The &GAP; 3 format is now also supported, mainly for documentation purposes (see Section ).
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), and the Schwerpunkt Algorithmische Zahlentheorie und Algebra (from 1991 until 1997).

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 .

The functions in Section (, , and ) 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 .

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

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, on which the manual of the &CTblLib; package is based. The previously available documentation format had been completely inappropriate.