Dear GAP Forum,
on Tue, 23 Feb 99 14:51:25 +0100 Thomas Breuer wrote as reply to the mail of Dima Pasechnik:
So if one really wants to compute this character table,
it is perhaps worth a try to use the Dixon-Schneider method,
since computers are getting faster and larger.
More precisely, one could follow use the functions described
in the manual section ``Advanced Methods for Dixon-Schneider
Calculations'' (and the example in the following section).
I tested two years ago the program to compute character table
described in the GAP-manual section Dixon-Schneider "An Example of Advanced
Calculations" and I had some problems for some finite groups, for example, for
G:=MathieuGroup(22) of Order 443520 and for G:=PrimitiveGroup(8,4) of Order 336
(=PGL(2,7)).
After comments
"...#Finally we calculate the characters induced from all cyclic subgroups
# and obtain the missing irreducibles by applying the LLL-algorithm to them."
and after GAP-commands:
ic:= InducedCyclic( c, "all" );;
ro:= ReducedOrdinary( c, c.irreducibles, ic );;
and before GAP-command:
l:= LLL( c, ro.remainders );;
I received the message:
Error, List Element: <list>[1] must have a value at
B := [ scpr( L, b[1], b[1] ) ] ... in
LLLReducedBasis( arg[1], arg[2], y ) called from
LLL( c, ro.remainders ) called from
main loop
brk>
Now I work with the package GAP3r4p4. The problems have remained.
The reason of the message about an error is in following:
for some groups after GAP-commands:
ro:= ReducedOrdinary( c, c.irreducibles, ic );;
we have record 'ro' with empty record components:
ro = rec( remainders := [ ], irreducibles := [ ] ) Length(ro.irreducibles) = 0
In such situation the command LLL(...) does not work.
For correction of the program it is enough add the trivial character
[1, 1, ... ,1 ] to record components ro.irreducibles,
if Length(ro.irreducibles) = 0,
and add the zero string [0, 0, ... ,0 ] to record components ro.remainders,
if Length(ro.remainders) = 0.
It will be good if you replace the last GAP-command of "An Example
of Advanced ... "
Sum( last, i -> i^2 );
by:
Print(" c.irreducibles = \n",c.irreducibles,"\n");
I have a GAP-code with this corrections and can send it
if it will be necessary for somebody.
Sincerely yours,
Anatolii^ V. Rukolaine (St.Petersburg, Russia).
PS:
My home e-mail: rukolaha@tower.hop.stu.neva.ru