Several attributes for groups are valid also for character tables.
These are on one hand those that have the same meaning for both group and
character table, and whose values can be read off or computed,
respectively, from the character table,
such as Size, IsAbelian, or IsSolvable.
On the other hand, there are attributes whose meaning for character
tables is different from the meaning for groups, such as
ConjugacyClasses.
CharacterDegrees( G ) A
CharacterDegrees( G, p ) O
CharacterDegrees( tbl ) A
In the first two forms, CharacterDegrees returns a collected list of
the degrees of the absolutely irreducible characters of the group G;
the optional second argument p must be either zero or a prime integer
denoting the characteristic, the default value is zero.
In the third form, tbl must be an (ordinary or Brauer) character
table, and CharacterDegrees returns a collected list of the degrees of
the absolutely irreducible characters of tbl.
(The default method for the call with only argument a group is to call
the operation with second argument 0.)
For solvable groups, the default method is based on Con90b.
gap> CharacterDegrees( SymmetricGroup( 4 ) ); [ [ 1, 2 ], [ 2, 1 ], [ 3, 2 ] ] gap> CharacterDegrees( SymmetricGroup( 4 ), 2 ); [ [ 1, 1 ], [ 2, 1 ] ] gap> CharacterDegrees( CharacterTable( "A5" ) ); [ [ 1, 1 ], [ 3, 2 ], [ 4, 1 ], [ 5, 1 ] ] gap> CharacterDegrees( CharacterTable( "A5" ) mod 2 ); [ [ 1, 1 ], [ 2, 2 ], [ 4, 1 ] ]
Irr( G ) A
Irr( G, p ) O
Irr( tbl ) A
Called with a group G, Irr returns the irreducible characters of the
ordinary character table of G.
Called with a group G and a prime integer p, Irr returns the
irreducible characters of the p-modular Brauer table of G.
Called with an (ordinary or Brauer) character table tbl,
Irr returns the list of all complex absolutely irreducible characters
of tbl.
For a character table tbl with underlying group,
Irr may delegate to the group.
For a group G, Irr may delegate to its character table only if the
irreducibles are already stored there.
(If G is p-solvable (see IsPSolvable) then the p-modular irreducible characters can be computed by the Fong-Swan Theorem; in all other cases, there may be no method.)
Note that the ordering of columns in the Irr matrix of the group G
refers to the ordering of conjugacy classes in CharacterTable( G ),
which may differ from the ordering of conjugacy classes in G
(see The Interface between Character Tables and Groups).
As an extreme example, for a character table obtained from sorting the
classes of CharacterTable( G ),
the ordering of columns in the Irr matrix respects the sorting of
classes (see Sorted Character Tables),
so the irreducibles of such a table will in general not coincide with
the irreducibles stored as Irr( G ) although also the sorted table
stores the group G.
gap> Irr( SymmetricGroup( 4 ) );
[ Character( CharacterTable ( Sym( [ 1 .. 4 ] )), [ 1, 1, 1, 1, 1 ] ),
Character( CharacterTable ( Sym( [ 1 .. 4 ] )), [ 1, -1, 1, 1, -1 ] ),
Character( CharacterTable ( Sym( [ 1 .. 4 ] )), [ 2, 0, 2, -1, 0 ] ),
Character( CharacterTable ( Sym( [ 1 .. 4 ] )), [ 3, -1, -1, 0, 1 ] ),
Character( CharacterTable ( Sym( [ 1 .. 4 ] )), [ 3, 1, -1, 0, -1 ] ) ]
gap> Irr( SymmetricGroup( 4 ), 2 );
[ Character( BrauerTable( Sym( [ 1 .. 4 ] ), 2 ), [ 1, 1 ] ),
Character( BrauerTable( Sym( [ 1 .. 4 ] ), 2 ), [ 2, -1 ] ) ]
gap> Irr( CharacterTable( "A5" ) );
[ Character( CharacterTable( "A5" ), [ 1, 1, 1, 1, 1 ] ),
Character( CharacterTable( "A5" ), [ 3, -1, 0, -E(5)-E(5)^4, -E(5)^2-E(5)^3
] ), Character( CharacterTable( "A5" ),
[ 3, -1, 0, -E(5)^2-E(5)^3, -E(5)-E(5)^4 ] ),
Character( CharacterTable( "A5" ), [ 4, 0, 1, -1, -1 ] ),
Character( CharacterTable( "A5" ), [ 5, 1, -1, 0, 0 ] ) ]
gap> Irr( CharacterTable( "A5" ) mod 2 );
[ Character( BrauerTable( "A5", 2 ), [ 1, 1, 1, 1 ] ),
Character( BrauerTable( "A5", 2 ), [ 2, -1, E(5)+E(5)^4, E(5)^2+E(5)^3 ] ),
Character( BrauerTable( "A5", 2 ), [ 2, -1, E(5)^2+E(5)^3, E(5)+E(5)^4 ] ),
Character( BrauerTable( "A5", 2 ), [ 4, 1, -1, -1 ] ) ]
LinearCharacters( G ) A
LinearCharacters( G, p ) O
LinearCharacters( tbl ) A
LinearCharacters returns the linear (i.e., degree 1) characters in
the Irr (see Irr) list of the group G or the character table tbl,
respectively.
In the second form, LinearCharacters returns the p-modular linear
characters of the group G.
For a character table tbl with underlying group,
LinearCharacters may delegate to the group.
For a group G, LinearCharacters may delegate to its character table
only if the irreducibles are already stored there.
The ordering of linear characters in tbl need not coincide with the ordering of linear characters in the irreducibles of tbl (see Irr).
gap> LinearCharacters( SymmetricGroup( 4 ) ); [ Character( CharacterTable ( Sym( [ 1 .. 4 ] )), [ 1, 1, 1, 1, 1 ] ), Character( CharacterTable ( Sym( [ 1 .. 4 ] )), [ 1, -1, 1, 1, -1 ] ) ]
OrdinaryCharacterTable( G ) A
OrdinaryCharacterTable( modtbl ) A
OrdinaryCharacterTable returns the ordinary character table of the
group G or the Brauer character table modtbl, respectively.
Since Brauer character tables are constructed from ordinary tables, the attribute value for modtbl is already stored (cf. Character Table Categories).
gap> OrdinaryCharacterTable( SymmetricGroup( 4 ) ); CharacterTable( Sym( [ 1 .. 4 ] ) ) gap> tbl:= CharacterTable( "A5" );; modtbl:= tbl mod 2; BrauerTable( "A5", 2 ) gap> OrdinaryCharacterTable( modtbl ) = tbl; true
The following operations for groups are applicable to character tables and mean the same for a character table as for the group; see the chapter about groups for the definition.
AbelianInvariantsindexAbelianInvariants!for character tables
CommutatorLengthindexCommutatorLength!for character tables
ExponentindexExponent!for character tables
IsAbelianindexIsAbelian!for character tables
IsCyclicindexIsCyclic!for character tables
IsFiniteindexIsFinite!for character tables
IsMonomialindexIsMonomial!for character tables
IsNilpotentindexIsNilpotent!for character tables
IsPerfectindexIsPerfect!for character tables
IsSimpleindexIsSimple!for character tables
IsSolvableindexIsSolvable!for character tables
IsSupersolvableindexIsSupersolvable!for character tables
NrConjugacyClassesindexNrConjugacyClasses!for character tables
SizeindexSize!for character tables
gap> tables:= [ CharacterTable( CyclicGroup( 3 ) ), > CharacterTable( SymmetricGroup( 4 ) ), > CharacterTable( AlternatingGroup( 5 ) ) ];; gap> List( tables, AbelianInvariants ); [ [ 3 ], [ 2 ], [ ] ] gap> List( tables, CommutatorLength ); [ 1, 1, 1 ] gap> List( tables, Exponent ); [ 3, 12, 30 ] gap> List( tables, IsAbelian ); [ true, false, false ] gap> List( tables, IsCyclic ); [ true, false, false ] gap> List( tables, IsFinite ); [ true, true, true ] gap> List( tables, IsMonomial ); [ true, true, false ] gap> List( tables, IsNilpotent ); [ true, false, false ] gap> List( tables, IsPerfect ); [ false, false, true ] gap> List( tables, IsSimple ); [ true, false, true ] gap> List( tables, IsSolvable ); [ true, true, false ] gap> List( tables, IsSupersolvable ); [ true, false, false ] gap> List( tables, NrConjugacyClasses ); [ 3, 5, 5 ] gap> List( tables, Size ); [ 3, 24, 60 ]
The following three attributes for character tables would make sense
also for groups but are in fact not used for groups.
This is because the values depend on the ordering of conjugacy classes
stored as value of ConjugacyClasses, and this value may differ for a
group and its character table
(see The Interface between Character Tables and Groups).
Note that for character tables, the consistency of attribute values must
be guaranteed,
whereas for groups, there is no need to impose such a consistency rule.
OrdersClassRepresentatives( tbl ) A
is a list of orders of representatives of conjugacy classes of the character table tbl, in the same ordering as the conjugacy classes of tbl.
SizesCentralizers( tbl ) A
is a list that stores at position i the size of the centralizer of any element in the i-th conjugacy class of the character table tbl.
SizesConjugacyClasses( tbl ) A
is a list that stores at position i the size of the i-th conjugacy class of the character table tbl.
gap> tbl:= CharacterTable( "A5" );; gap> OrdersClassRepresentatives( tbl ); [ 1, 2, 3, 5, 5 ] gap> SizesCentralizers( tbl ); [ 60, 4, 3, 5, 5 ] gap> SizesConjugacyClasses( tbl ); [ 1, 15, 20, 12, 12 ]
The following attributes apply only to character tables, not to groups.
AutomorphismsOfTable( tbl ) A
is the permutation group of all column permutations of the character table tbl that leave the set of irreducibles and each power map of tbl invariant (see also TableAutomorphisms).
gap> tbl:= CharacterTable( "Dihedral", 8 );; gap> AutomorphismsOfTable( tbl ); Group([ (4,5) ]) gap> OrdersClassRepresentatives( tbl ); [ 1, 4, 2, 2, 2 ] gap> SizesConjugacyClasses( tbl ); [ 1, 2, 1, 2, 2 ]
UnderlyingCharacteristic( tbl ) A
UnderlyingCharacteristic( psi ) A
For an ordinary character table tbl, the result is 0,
for a p-modular Brauer table tbl, it is p.
The underlying characteristic of a class function psi is equal to
that of its underlying character table.
The underlying characteristic must be stored when the table is constructed, there is no method to compute it.
We cannot use the attribute Characteristic (see Characteristic)
to denote this, since of course each Brauer character is an element
of characteristic zero in the sense of GAP
(see Chapter Class Functions).
gap> tbl:= CharacterTable( "A5" );; gap> UnderlyingCharacteristic( tbl ); 0 gap> UnderlyingCharacteristic( tbl mod 17 ); 17
ClassNames( tbl ) A
ClassNames( tbl, "ATLAS" ) O
CharacterNames( tbl ) A
ClassNames and CharacterNames return lists of strings,
one for each conjugacy class or irreducible character, respectively,
of the character table tbl.
These names are used when tbl is displayed.
The default method for ClassNames computes class names consisting of
the order of an element in the class and at least one distinguishing
letter.
There is no default method for CharacterNames.
The position of the class with name name in tbl can be accessed as
tbl.name.
When ClassNames is called with two arguments, the second being the
string "ATLAS", the class names returned obey the convention used in
Chapter 7, Section 5 of the ATLAS of Finite Groups CCN85.
gap> tbl:= CharacterTable( "A5" );; gap> ClassNames( tbl ); [ "1a", "2a", "3a", "5a", "5b" ] gap> tbl.2a; 2
Identifier( tbl ) A
is a string that identifies the character table tbl in the current GAP session. It is used mainly for class fusions into tbl that are stored on other character tables. For character tables without group, the identifier is also used to print the table; this is the case for library tables, but also for tables that are constructed as direct products, factors etc. involving tables that may or may not store their groups.
The default method for ordinary tables constructs strings of the form
"CTn", where n is a positive integer.
LARGEST_IDENTIFIER_NUMBER is a list containing the largest integer n
used in the current GAP session.
The default method for Brauer tables returns the concatenation of the
identifier of the ordinary table, the string "mod",
and the (string of the) underlying characteristic.
gap> Identifier( CharacterTable( "A5" ) ); "A5" gap> g:= Group( () );; HasName( g ); false gap> SetName( g, "g" ); gap> Identifier( CharacterTable( g ) ); "g" gap> tbl:= CharacterTable( Group( () ) );; gap> Identifier( tbl ); Identifier( tbl mod 2 ); "CT8" "CT8mod2"
InfoText( tbl ) A
is a mutable string with information about the character table tbl. There is no default method to create an info text.
Usual parts of the information are the origin of the table
(see The Character Table Library),
tests it has passed (1.o.r. for the test of orthogonality,
pow[p] for the construction of the p-th power map,
DEC for the decomposition of ordinary into Brauer characters,
TENS for the decomposition of tensor products of irreducibles),
and choices made without loss of generality.
gap> Print( InfoText( CharacterTable( "A5" ) ), "\n" ); origin: ATLAS of finite groups, tests: 1.o.r., pow[2,3,5]
InverseClasses( tbl ) A
For a character table tbl, InverseClasses returns the list mapping
each conjugacy class to its inverse class.
This list can be regarded as (-1)-st power map of tbl
(see PowerMap).
RealClasses( tbl ) A
For a character table tbl, RealClasses returns the strictly sorted
list of positions of classes in tbl that consist of real elements.
An element x is real iff it is conjugate to its inverse x-1 = xo(x)-1.
gap> InverseClasses( CharacterTable( "A5" ) ); [ 1, 2, 3, 4, 5 ] gap> InverseClasses( CharacterTable( "Cyclic", 3 ) ); [ 1, 3, 2 ] gap> RealClasses( CharacterTable( "A5" ) ); [ 1, 2, 3, 4, 5 ] gap> RealClasses( CharacterTable( "Cyclic", 3 ) ); [ 1 ]
ClassOrbit( tbl, cc ) O
is the list of positions of those conjugacy classes
of the character table tbl that are Galois conjugate to the cc-th
class.
That is, exactly the classes at positions given by the list returned by
ClassOrbit contain generators of the cyclic group generated
by an element in the cc-th class.
This information is computed from the power maps of tbl.
ClassRoots( tbl ) A
For a character table tbl, ClassRoots returns a list
containing at position i the list of positions of the classes
of all nontrivial p-th roots, where p runs over the prime divisors
of Size( tbl ).
This information is computed from the power maps of tbl.
gap> ClassOrbit( CharacterTable( "A5" ), 4 ); [ 4, 5 ] gap> ClassRoots( CharacterTable( "A5" ) ); [ [ 2, 3, 4, 5 ], [ ], [ ], [ ], [ ] ] gap> ClassRoots( CharacterTable( "Cyclic", 6 ) ); [ [ 3, 4, 5 ], [ ], [ 2 ], [ 2, 6 ], [ 6 ], [ ] ]
The following attributes for a character table tbl correspond to
attributes for the group G of tbl.
But instead of a normal subgroup (or a list of normal subgroups) of G,
they return a strictly sorted list of positive integers (or a list of
such lists) which are the positions
--relative to ConjugacyClasses( tbl )--
of those classes forming the normal subgroup in question.
ClassPositionsOfNormalSubgroups( ordtbl ) A
ClassPositionsOfMaximalNormalSubgroups( ordtbl ) A
correspond to NormalSubgroups and MaximalNormalSubgroups
for the group of the ordinary character table ordtbl
(see NormalSubgroups, MaximalNormalSubgroups).
The entries of the result lists are sorted according to increasing length. (So this total order respects the partial order of normal subgroups given by inclusion.)
ClassPositionsOfAgemo( ordtbl, p ) O
corresponds to Agemo (see Agemo)
for the group of the ordinary character table ordtbl.
ClassPositionsOfCentre( ordtbl ) A
corresponds to Centre (see Centre)
for the group of the ordinary character table ordtbl.
ClassPositionsOfDirectProductDecompositions( tbl ) A
ClassPositionsOfDirectProductDecompositions( tbl, nclasses ) O
Let tbl be the ordinary character table of the group G, say.
Called with the only argument tbl,
ClassPositionsOfDirectProductDecompositions returns the list of all
those pairs [ l1, l2 ] where l1 and l2 are lists of
class positions of normal subgroups N1, N2 of G
such that G is their direct product and |N1| £ |N2| holds.
Called with second argument a list nclasses of class positions of a
normal subgroup N of G,
ClassPositionsOfDirectProductDecompositions returns the list of pairs
describing the decomposition of N as a direct product of two
normal subgroups of G.
ClassPositionsOfDerivedSubgroup( ordtbl ) A
corresponds to DerivedSubgroup (see DerivedSubgroup)
for the group of the ordinary character table ordtbl.
ClassPositionsOfElementaryAbelianSeries( ordtbl ) A
corresponds to ElementaryAbelianSeries (see ElementaryAbelianSeries)
for the group of the ordinary character table ordtbl.
ClassPositionsOfFittingSubgroup( ordtbl ) A
corresponds to FittingSubgroup (see FittingSubgroup)
for the group of the ordinary character table ordtbl.
ClassPositionsOfLowerCentralSeries( tbl ) A
corresponds to LowerCentralSeries (see LowerCentralSeriesOfGroup)
for the group of the ordinary character table ordtbl.
ClassPositionsOfUpperCentralSeries( ordtbl ) A
corresponds to UpperCentralSeries (see UpperCentralSeriesOfGroup)
for the group of the ordinary character table ordtbl.
ClassPositionsOfSupersolvableResiduum( ordtbl ) A
corresponds to SupersolvableResiduum (see SupersolvableResiduum)
for the group of the ordinary character table ordtbl.
ClassPositionsOfNormalClosure( ordtbl, classes ) O
is the sorted list of the positions of all conjugacy classes of the ordinary character table ordtbl that form the normal closure (see NormalClosure) of the conjugacy classes at positions in the list classes.
gap> tbla5:= CharacterTable( "A5" );; gap> tbls4:= CharacterTable( "Symmetric", 4 );; gap> tbld8:= CharacterTable( "Dihedral", 8 );; gap> ClassPositionsOfNormalSubgroups( tbls4 ); [ [ 1 ], [ 1, 3 ], [ 1, 3, 4 ], [ 1, 2, 3, 4, 5 ] ] gap> ClassPositionsOfAgemo( tbls4, 2 ); [ 1, 3, 4 ] gap> ClassPositionsOfCentre( tbld8 ); [ 1, 3 ] gap> ClassPositionsOfDerivedSubgroup( tbld8 ); [ 1, 3 ] gap> ClassPositionsOfElementaryAbelianSeries( tbls4 ); [ [ 1 .. 5 ], [ 1, 3, 4 ], [ 1, 3 ], [ 1 ] ] gap> ClassPositionsOfElementaryAbelianSeries( tbla5 ); fail gap> ClassPositionsOfFittingSubgroup( tbls4 ); [ 1, 3 ] gap> ClassPositionsOfLowerCentralSeries( tbls4 ); [ [ 1 .. 5 ], [ 1, 3, 4 ] ] gap> ClassPositionsOfLowerCentralSeries( tbld8 ); [ [ 1 .. 5 ], [ 1, 3 ], [ 1 ] ] gap> ClassPositionsOfUpperCentralSeries( tbls4 ); [ [ 1 ] ] gap> ClassPositionsOfUpperCentralSeries( tbld8 ); [ [ 1, 3 ], [ 1, 2, 3, 4, 5 ] ] gap> ClassPositionsOfSupersolvableResiduum( tbls4 ); [ 1, 3 ] gap> ClassPositionsOfNormalClosure( tbls4, [ 1, 4 ] ); [ 1, 3, 4 ]
[Top] [Previous] [Up] [Next] [Index]
GAP 4 manual