> < ^ From:

< ^ Subject:

Dear GAP-Forum,

Thierry Dana-Picard asked a question about computing decomposition matrices.

While trying to compute the decomposition matrix with a modular

character table, I got a "surprising" answer:

Here is the gap session (the group is A7, the prime is 5; but I got the same

kind of answer for other primes/other groups):gap> a7m5:=CharTable("A7mod5"); CharTable( "A7mod5" )(some input and output omitted)

gap> reg5:=CharTableRegular(a7,5);

CharTable( "Regular(A7,5)" )

gap> chars5:=Restricted(a7,reg5,a7.irreducibles);(some output omitted)

gap> Decomposition(a7m5.irreducibles,chars5,"nonnegative");

[ [ 1, 0, 0, 0, 0, 0, 0, 0 ], false, false, false, false, false, false,

false, false ]So what happens?

And what can be done in order to get the decomposition matrix?

When dealing with Brauer tables of the GAP table library, one has to be

careful to use also the corresponding ordinary library tables.

So probably the reason for the strange behaviour is the table of A7.

There are at least two possibilities to get a character table with name "A7".

The first is to call 'CharTable( "A7" )', which yields the table as it is

given in the ATLAS of Finite Groups.

The second is to call 'CharTable( "Alternating", 7 )', which yields a table

that is constructed from a generic character table, and for that the

succession of rows and columns differs from that of the ATLAS table.

In both cases, the fusion of conjugacy classes from the 5-regular table to

the table of A7 is used to restrict the characters.

In the example above, apparently the succession of classes in the 5-regular

table does not agree with that in the Brauer table.

With the correct table of A7, the example above looks like this.

(Note that it is not necessary to construct a 5-regular table.)

gap> a7:= CharTable( "A7" ); CharTable( "A7" ) gap> a7mod5:= CharTable( "A7mod5" ); CharTable( "A7mod5" ) gap> chars5:= Restricted( a7, a7mod5, a7.irreducibles );; gap> Decomposition( a7mod5.irreducibles, chars5, "nonnegative" ); [ [ 1, 0, 0, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0, 0, 0 ], [ 0, 0, 0, 0, 1, 0, 0, 0 ], [ 0, 1, 1, 0, 0, 0, 0, 0 ], [ 1, 0, 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 0, 0, 1, 0 ], [ 0, 0, 1, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 0, 0, 0, 1 ] ]

Using the generic table leads to the reported behaviour also when we

restrict directly to the 5-modular table, because both ordinary tables

have the name "A7".

gap> a7generic:= CharTable( "Alternating", 7 );

CharTable( "A7" )

gap> chars5:= Restricted( a7generic, a7mod5, a7generic.irreducibles );;

gap> Decomposition( a7mod5.irreducibles, chars5, "nonnegative" );

[ [ 1, 0, 0, 0, 0, 0, 0, 0 ], false, false, false, false, false, false,

false, false ]

One more comment on the relation between ordinary and Brauer tables.

GAP constructs a Brauer library table using the underlying ordinary table

and the decomposition matrices, and the Brauer table stores this table

in the component 'ordinary'.

So if one has already the Brauer table, one does not need to call 'CharTable'

to get the corresponding ordinary table.

gap> a7mod5:= CharTable( "A7mod5" ); CharTable( "A7mod5" ); gap> a7mod5.ordinary; CharTable( "A7" )

I hope this helps

Thomas Breuer

> < [top]