# Classes for a character table

Keywords: Character table, Conjugacy Classes, Symmetric group

## Respondent:

Max Neunhöffer ( Max.Neunhoeffer@Math.RWTH-Aachen.DE)
Alexander Hulpke ( hulpke@math.colostate.edu)

## Question:

Suppose I have the character table fo Sym4 generated by
```
gap> tbl:=CharacterTable("Symmetric",4);
```

How can I get the conjugacy classes from this table ( in the right
order) (I don't want to have to compute them again using
ConjugacyClasses(Sym4))?

The above table has an Attribute "ClassParameters":
```
gap> ClassParameters(tbl);
[ [ 1, [ 1, 1, 1, 1 ] ], [ 1, [ 2, 1, 1 ] ], [ 1, [ 2, 2 ] ], [ 1, [ 3, 1 ] ],
[ 1, [ 4 ] ] ]
```

The partitions in the second components describe the mapping to the
conjugacy classes in the symmetric group, i.e. the third class ([2,2]) is
the class of (1,2)(3,4)

Note that for character tables of other groups than symmetric groups
"ClassParameters" do not exist. The following method works in general:

Create the table from the group:

```
gap> Sym4 := SymmetricGroup(4);;
gap> tbl := CharacterTable(Sym4);;
gap> Irr(tbl);;
```

For symmetric groups this essentially only is a lookup of
known information and does not take significantly longer than
<tt>CharacterTable("Symmetric",4);</tt> would, for other groups it will
actually calculate the character table from scratch. However in many cases
this will be still faster than trying to identify classes by hand.

You can now get the conjugacy classes in the right order from the character
table:

```
gap> ConjugacyClasses(tbl);
[ ()^G, (1,2)^G, (1,2)(3,4)^G, (1,2,3)^G, (1,2,3,4)^G ]
```

Though it is the case in this example, it is not guaranteed in general
that the arrangement of classes in the table is the same as in the group.
You can get the identification by
```
gap> IdentificationOfConjugacyClasses(tbl);
[ 1 .. 5 ]
```

which in this case guarantees that the order of the (already computed) conjugacy
classes in the object Sym4 is the same as the order of the classes
in the character table object tbl.
This approach will also work for other groups than symmetric groups,
provided that GAP is able to calculate the character table.