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 (firstname.lastname@example.org) and Niels Lauritzen (email@example.com). 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.).
rsyswill appear in the synopsis, otherwise
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.
3 3 3 3 : The top alcove for A4, p=5.
long can be given to specify the longest
element in the (finite) Weyl group. Similarly the word
means the affine Weyl group element corresponding to the top alcove. Both
top are valid subexpressions as
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
% longelem rsys
% plusroots rsys
% intweights rsys-p
% nmat rsys
% minexp rsys wge
minexp A4 long 0 long
% alcove rsys-p wge
alcove A4-7 0 1 2 3
% alctoexp rsys-p weight
alctoexp A4-5 3 3 3 3
% klpoly rsys wge1 - wge2
klpoly A4 - long ## first wge is the identity.
% kltable [-s] rsys
Example: kltable A3
% lesseq rsys wge1 - wge2
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.
-c is used, the output
depends on the characteristic, at least if the affine reflection is in
bruhat -r A3 top
bruhat -c A2 long
% figbruhat [-drwc] [-z pagesize] [-o file.fig] [-p permfile] rsys wge
-care the same as for bruhat. Other options:
B5, and expressions like
a4-rest.permand try the examples below.
In each of the following examples, a .fig file is created. This file can be viewed using xfig.
figbruhat -c -z B5 -o a3-roots.fig a3-5 long
figbruhat -rw -o a4-rest1.fig a4-5 top
figbruhat -rw -o a4-rest2.fig -p a4-rest.perm a4-5 top
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
psbruhat -c a3-5 long | lp
% wdif rsys weight1 - weight2
wdif A4 3 3 3 3 - 2 2 2 2
% kostant [-c] rsys weight
weightas a sum of positive roots. If the
-coption is used, only the number of ways is printed.
kostant A4 1 1 1 1
% freudenthal rsys weight
% jsum rsys-p weight
% redu rsys-p weight
% 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
-soption gives the output in short form.
% matprint [-s] file.mat
-sfor 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