Brauer table records are similar to the records which
represent ordinary character tables. They contain many of the well--known
record components, like identifier, centralizers,
irreducibles etc.; but there are two kinds of differences:
First, the operations record is BrauerTableOps instead of CharTableOps
(see Operations Records for Character Tables). Second, there are two extra
components, namely
ordinary, which contains the ordinary character table
corresponding to the Brauer table, and
block, which reflects the block information; it
is a list of records with components
defect:
the defect of the block,
ordchars:
a list of integers indexing the ordinary
irreducibles in the block,
modchars:
a list of integers indexing the Brauer characters
in the block,
basicset:
a list of integers indexing the ordinary
irreducibles of a basic set; note that the indices refer to
the positions in the whole irreducibles list of the ordinary
table, not to the positions in the block,
decinv:
the inverse of the restriction of the decomposition
matrix of the block to the basic set given by the basicset
component, and possibly
brauertree:
if exists, a list that represents the
decomposition matrix which in this case is viewed as incidence matrix of a
tree (the so--called Brauer tree); the entries of the list correspond to the
edges of the tree, they refer to positions in the block, not in the whole
irreducibles list of the tables. Brauer trees are mainly used to
store the information in a more compact way than by decomposition matrices,
planar embeddings etc. are not (or not yet) included.
Note that Brauer tables in the library have different format (see Organization of the Table Libraries).
We give an example:
gap> PrintCharTable( CharTable( "M11" ) mod 11 );
rec( identifier := "M11mod11", text := "origin: modular ATLAS of finit\
e groups, tests: DEC, TENS", prime := 11, order := 7920, size :=
7920, centralizers := [ 7920, 48, 18, 8, 5, 6, 8, 8 ], orders :=
[ 1, 2, 3, 4, 5, 6, 8, 8 ], classes :=
[ 1, 165, 440, 990, 1584, 1320, 990, 990 ], powermap :=
[ , [ 1, 1, 3, 2, 5, 3, 4, 4 ], [ 1, 2, 1, 4, 5, 2, 7, 8 ],,
[ 1, 2, 3, 4, 1, 6, 8, 7 ],,,,,, [ 1, 2, 3, 4, 5, 6, 7, 8 ]
], fusions := [ rec(
name := "M11",
map := [ 1, 2, 3, 4, 5, 6, 7, 8 ],
type := "choice" ) ], irreducibles :=
[ [ 1, 1, 1, 1, 1, 1, 1, 1 ], [ 9, 1, 0, 1, -1, -2, -1, -1 ],
[ 10, -2, 1, 0, 0, 1, E(8)+E(8)^3, -E(8)-E(8)^3 ],
[ 10, -2, 1, 0, 0, 1, -E(8)-E(8)^3, E(8)+E(8)^3 ],
[ 11, 3, 2, -1, 1, 0, -1, -1 ], [ 16, 0, -2, 0, 1, 0, 0, 0 ],
[ 44, 4, -1, 0, -1, 1, 0, 0 ], [ 55, -1, 1, -1, 0, -1, 1, 1 ]
], irredinfo := [ rec(
), rec(
), rec(
), rec(
), rec(
), rec(
), rec(
), rec(
) ], blocks := [ rec(
defect := 1,
ordchars := [ 1, 2, 3, 4, 6, 7, 9 ],
modchars := [ 1, 2, 3, 4, 6 ],
decinv :=
[ [ 1, 0, 0, 0, 0 ], [ -1, 1, 0, 0, 0 ], [ 0, 0, 1, 0, 0 ],
[ 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 1 ] ],
basicset := [ 1, 2, 3, 4, 6 ],
brauertree :=
[ [ 1, 2 ], [ 2, 7 ], [ 3, 7 ], [ 4, 7 ], [ 5 .. 7 ] ] ), rec(
defect := 0,
ordchars := [ 5 ],
modchars := [ 5 ],
decinv := [ [ 1 ] ],
basicset := [ 5 ] ), rec(
defect := 0,
ordchars := [ 8 ],
modchars := [ 7 ],
decinv := [ [ 1 ] ],
basicset := [ 8 ] ), rec(
defect := 0,
ordchars := [ 10 ],
modchars := [ 8 ],
decinv := [ [ 1 ] ],
basicset := [ 10 ] )
], ordinary := CharTable( "M11" ), operations := BrauerTableOps, name\
:= "M11mod11", automorphisms := Group( (7,8) ) )