There are in general four different ways to get a character table which GAP already ``knows'': You can either
read a file that contains the table record,
construct the table using
generic formulae,
derive it from known tables or
use a presentation
or representation of the group.
The first two methods are used by CharTable CharTable. For the
conception of generic character tables, see chapter Generic Character Tables.
Note that library files often contain something that is much
different from the tables returned by CharTable, see chapter
Character Table Libraries. Especially see Selecting Library Tables.
As for the third method, some generic ways to derive a character table are
implemented::
One can obtain it as table of a factor group where the
table of the group is given (see CharTableFactorGroup),
for given tables
the table of the direct product can be constructed (see CharTableDirectProduct),
the restriction of a table to the p-regular classes can be formed (see
CharTableRegular),
for special cases, an isoclinic table of a given table
can be constructed (see CharTableIsoclinic),
the splitting and fusion of
classes may be viewed as a generic process (see CharTableSplitClasses,
CharTableCollapsedClasses).
At the moment, for the last method there are algorithms dealing with arbitrary groups (see CharTable), and with finite polycyclic groups with special properties (see CharTablePGroup).
Note that whenever fusions between tables occur in these
functions, they are stored on the concerned tables, and the fusionsource
fields are updated (see Character Table Records).