[GAP Forum] GAP and SL(4,3)

Frank Lübeck frank.luebeck at math.rwth-aachen.de
Wed Nov 7 15:25:26 GMT 2007


On Sat, Oct 27, 2007 at 03:51:22PM -0500, peter manolov wrote:
> Can I use GAP to find the character table of SL(4,3) ? (Special linear
> group of 4x4 matrices of determinant 1 over field with 3 elements)
> 
> I'm particularly interested in the cuspidal characters of SL(4,3). I've
> never used GAP before. If it is possible to find that character table, how
> do I start?

Dear Petar, dear Forum,

It was already pointed out how the character table of SL(4,3) can be
obtained from the GAP character table library by CharacterTable("2.L4(3)").

But this table may not have enough of the information you are interested in,
for example representatives of the conjugacy classes or the identification
of the cuspidal characters (I think these are the characters of degrees 416 
and 208, right?).

The information on the character degrees expressed as "polynomials in q"
which you can find on
http://www.math.rwth-aachen.de/~Frank.Luebeck/chev/DegMult/
could be interesting for you.

Actually, with current computers one can explore SL(4,3), its characters and
subgroups quite nicely in GAP. I append below some example GAP input. Maybe
you find it useful to get started. First find out in GAP with

gap> ?help

how to use the GAP help system. You can use the help system to get more
information on the shown commands.

Feel free to ask if you have more questions (but maybe off this list,
write to support at gap-system.org).

Best regards,

  Frank

-- 
///  Dr. Frank Lübeck, Lehrstuhl D für Mathematik, Templergraben 64,  ///
\\\                    52062 Aachen, Germany                          \\\
///  E-mail: Frank.Luebeck at Math.RWTH-Aachen.De                        ///
\\\  WWW:    http://www.math.rwth-aachen.de/~Frank.Luebeck/           \\\

##################  some example GAP input  #############################
gap> # create group and find its order
gap> s := SL(4,3);
SL(4,3)
gap> Size(s);
12130560
gap> # the conjugacy classes and their representatives
gap> cl := ConjugacyClasses(s);;
gap> clrep := List(cl, Representative);;
gap> # explore the representatives
gap> Display(clrep[20]);
 . . . 1
 1 . . 1
 . 1 . 2
 . . 2 1
gap> Order(clrep[20]);
24
gap> Eigenvalues(GF(3^4),clrep[20]);
[ Z(3^2)^5, Z(3^2)^7 ]
gap> # compute the character table, the first step is fast
gap> ct := CharacterTable(s);;
gap> # only now the character values are computed, takes some minutes ...
gap> Display(ct);;   # or try: LoadPackage("Browse");; Browse(ct);
gap> # function to give element of root subgroup (entry a in position (i,j))
gap> rootelt := function(i, j, a) local res;
>            res := MutableCopyMat(One(s)); res[i][j] := a; return res; end;;
gap> # subgroup u of upper triangular unipotent elements (3-Sylow)
gap> ugens := [];
gap> for i in [1..4] do for j in [i+1..4] do
>         Add(ugens, rootelt(i,j,Z(3)^0)); od; od;
gap> u := Subgroup(s, ugens);
gap> # maximally split torus
gap> torelt := function(a,b,c) local res;
>           res := MutableCopyMat(One(s)); res[1][1] := a; res[2][2] := b;
            res[3][3] := c; res[4][4] := (a*b*c)^-1; return res; end;;
gap> tgens := [torelt(Z(3),Z(3)^0,Z(3)^0), torelt(Z(3)^0,Z(3),Z(3)^0),
>              torelt(Z(3)^0,Z(3)^0,Z(3))];;
gap> t := Subgroup(s, tgens);;
gap> # standard parabolic subgroup of type A_1
gap> p := Subgroup(s, Concatenation(tgens, ugens, [rootelt(2,1,Z(3)^0)]));;
gap> # this is quick, character table of parabolic subgroup
gap> ctp := CharacterTable(p);;
gap> Irr(ctp);;
gap> # induce them to s
gap> indp := InducedClassFunctions(ctp, Irr(ctp), s);;
gap> # express each induced character as linear combination of irreducibles of s
gap> sc := MatScalarProducts(indp, Irr(s));;
gap> # for example look at decomposition of 20-th irreducible of p induced to s
gap> Irr(p)[20];
Character( CharacterTable( <matrix group of size 23328 with 10 generators> ),
[ 3, 3, 3, 3, 3, 3, -1, 0, 0, 0, 0, 3, 3, 3, -1, 0, 0, 0, 0, 0, 0, 0, 0, 1,
  1, 1, 1, 1, -1, -1, -3, -3, -3, -3, -3, -3, 1, 0, 0, 0, 0, -3, -3, -3, 1,
  0, 0, 0, 0, 0, 0, 0, 0, -1, -1, -1, -1, -1, 1, 1 ] )
gap> indp[20];
Character( CharacterTable( SL(4,3) ), [ 1560, -75, -12, -12, -3, 0, 0, -1560,
  75, 12, 12, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, -3, 0, 0, 0, 0, 0, 0,
  0, 0, 0, 0, 4, 1, -4, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ] )
gap> sc[20];
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 2, 1, 0, 0, 0, 0,
  0, 0, 0, 0, 0, 1, 0, 1, 0, 1 ]



More information about the Forum mailing list