The programs in this package were written for the purpose of proving or disproving Lusztigs conjecture in the case A4, p=5. Participants in the project were Anders S. Buch (abuch@imf.au.dk) and Niels Lauritzen (niels@imf.au.dk). In the project we were able to verify that Lusztig's conjecture is correct in the above case, by April, 1995. We hope that you may find any of the programs in the package useful.
% alcove rsys-p wge
This means that the program alcove
expects an argument describing
the root system and characteristics (rsys-p
) followed by an element in
the affine Weyl group (wge
). To invoke the command for A2, p=7, and
with the longest element in the finite Weyl group, you can write:
% alcove A2-5 2 1 2
This section describes the different argument types (except for filenames, etc.).
rsys
or rsys-p
)rsys
will appear in the synopsis, otherwise rsys-p
will appear.
In any case, the valid arguments are one of the root system types,
possibly followed by a dash and a prime number. If no prime number is
specified, the internal calculations will use the Coxeter number.
This works whenever an rsys
argument is required, but may produce
unexpected results when rsys-p
is required.
If the shell environment variable ROOTSYSTEM
is set to a valid root
system name, any root system argument may be omitted, which means that
the value of ROOTSYSTEM
will be used in place.
A4 : Root system A4. A2-3 : A2 in characteristic 3. B3-7 : B3 in characteristic 7. E8-19 : E8 in characteristic 19.
weight
)3 3 3 3 : The top alcove for A4, p=5.
wge
) The word long
can be given to specify the longest
element in the (finite) Weyl group. Similarly the word top
means the affine Weyl group element corresponding to the top alcove. Both
long
and top
are valid subexpressions as
well.
1 2 1 : Longest element for A2. long : Longest element for root system in use. long 0 : Longest element composed with affine reflection. long top : Product of longest element and element for top alcove.
A_n: 1 --- 2 --- 3 --- . . . --- n B_n: 1 --- 2 --- 3 --- . . . =>= n C_n: 1 --- 2 --- 3 --- . . . =<= n (n-1) / D_n: 1 --- 2 --- . . . --- (n-2) \ n E_8: 1 --- 3 --- 4 --- 5 --- 6 --- 7 --- 8 | 2 F_4: 1 --- 2 =>= 3 --- 4 G_2: 1 =<= 2
% calcdata rsys-p
Example: calcdata A4-7
% longelem rsys
Example: longelem A4
% plusroots rsys
Example: plusroots A4
% intweights rsys-p
Example: intweights A4-5
% nmat rsys
Example: nmat A5
% minexp rsys wge
Example: minexp A4 long 0 long
% alcove rsys-p wge
Example: alcove A4-7 0 1 2 3
% alctoexp rsys-p weight
Example: alctoexp A4-5 3 3 3 3
% klpoly rsys wge1 - wge2
Example: klpoly A4 - long ## first wge is the identity.
% kltable [-s] rsys
Example: kltable A3
% lesseq rsys wge1 - wge2
Example: lesseq A4 long - 0 long 0
% bruhat [-drwc] rsys-p wge
wge
. Each
Weyl group element is printed, followed by the list of elements
directly below it.
Options:
-d
-r
-w
-c
Note: When -w
or -c
is used, the output
depends on the characteristic, at least if the affine reflection is in
use.
Example: bruhat -r A3 top
Example: bruhat -c A2 long
% figbruhat [-drwc] [-z pagesize] [-o file.fig] [-p permfile] rsys wge
-d
, -r
, -w
, and -c
are the same as for bruhat. Other options:
-z pagesize
Letter
, Legal
,
A4
, B5
, and expressions
like 9.5x8.3
.
-o file.fig
-p permfile
a4-dom.perm
and
a4-rest.perm
and try the examples below.
In each of the following examples, a .fig file is created. This file can be viewed using xfig.
Example: figbruhat -c -z B5 -o a3-roots.fig a3-5 long
Example: figbruhat -rw -o a4-rest1.fig a4-5 top
Example: figbruhat -rw -o a4-rest2.fig -p a4-rest.perm a4-5 top
Example: figbruhat -d -o a4-dom.fig -p a4-dom.perm a4 top
% psbruhat [-drwc] [-z pagesize] [-m mag] [-o file.ps] [-p permfile] rsys wge
Example: psbruhat -c a3-5 long | lp
% wdif rsys weight1 - weight2
Example: wdif A4 3 3 3 3 - 2 2 2 2
% kostant [-c] rsys weight
weight
as a sum of positive roots.
If the -c
option is used, only the number of ways is
printed.
Example: kostant A4 1 1 1 1
% freudenthal rsys weight
weight
.
% jsum rsys-p weight
% redu rsys-p weight
rsys-p
.
% reduinfo rsys-p weight
% lusztig [-p] rsys-p weight
The following programs do the same job as redu, except they can deal with larger matrices by storing matrix entries in .mat files. redumat and redumat2 calculate an interval of matrix entries (two versions, with redumat2 the newest). matmerge combines different partial .mat files into one. matrank calculates the rank. Please see this example on how to use these programs. These programs are useful if you want to break up the N-matrix and compute on several computers in parallel.
% redumat rsys-p weight1 weight2 [first [last]]
% redumat2 rsys-p weight1 weight2 [first [last]]
% matrank file.mat
% matrank2 file.mat
% mathead file.mat
% matcheck [-s] file.mat
-s
option gives the output in short form.
% matprint [-s] file.mat
-s
for short
form.
% matfix old.mat new.mat
% matmerge file1.mat file2.mat ... filen.mat -o new.mat
% ispc 1234
% makelie rsys wge
% makekl rsys wge