2. Kac , by B. Schellekens
3. Character expansion package , by B. Schellekens
Kac is free, Form2.0 is not. The character expansion package is free. Th rest of this document is adapted form the README file.
1. Compute the characters of the basic representations
2. Find the decomposition of any other representation in terms of basic ones using tensor product
3. Compute the characters of any representation.
Step 1. and 3. are performed by "form", step 2 by "kac".
These "form" programs make use of procedures in the "Procedures" subdirectory. In order for "form" to find this directory, type, before running "form" for the first time, "setenv FORMPRC path/Procedures" where "path" is the directory in which "Procedures" is located.
The program "kac" requires the files in the subdirectory "Indices". They must be placed in the directory "~/Library/Kac". They are only needed for the exceptional algebras.
form Xr_characters
For E8 this gives the following answer for the characters of the (248) and (3875) reps: E8 example If the output does not include the representation one needs, or if the character expansion is not to sufficiently large order, or if there is no file "Xr_characters", start with step 1: read "How to make Xr_characters" below.
A. RANK: The rank of the algebra
B. MAXPOW: The maximal power in the expansion
C. l: (The Kac-Moody level). Its role in Kac-Moody representation theory is not relevant here. It is only used to restrict the representations that can occur. Increasing l adds additional representations to the list.
D. STANDARDFORM:
Determines whether the output is in terms of traces over the reference representation (value 0), or whether the standard index normalizations (defined in the paper) are used (value 1).
Parameter A is irrelevant for the exceptional algebras, and D is not available for these algebras. A,B and D appear as parameters in the "form" programs, C is input to "kac".
#-
#define MAXPOW "8"
S x,y,Chiral,
#do i=2,'MAXPOW',1
T'i',Cas'i',fac'i',[Tr_F^'i'],
#enddo
;
nwrite statistics;
.global
with MAXPOW equal to the value chosen in step 1.
- Then include the output of the "form" procedure of step 2, starting with the line " char0 = ..." until the end.
- Change " char... " to "G char... " in all RANK+1 lines starting with " char" (char0 is the identity character, char1...charRANK are the characters of the basic reps.).
- Add a line ".store", and save the file
4. Put the file in the standard search path of "kac" (currently this path is "~/Library/Kac"; it cannot be changed in the terminal version of "kac") under the name "Xr_characters".
5. Remove the file "Xr_indices" if such a file exists in "~/Library/Kac". For exceptional algebras: replace the file "Xr_indices" by the version in this distribution (in the directory "Indices").
6. run "kac", at the prompt type > Alg X r l where "X" is the type, "r" the rank, "l" the level. Use the command "display" to see if the representation of interest is on the list. If not, increase "l". Then type > Indices and wait for the message "All indices determined".
The file "Xr_characters" is now a "form" input file that computes the characters of all representations that occur at level l.
The procedures that are included allow tensors of rank 9 or less (sufficient for SU(N), SO(N), Sp(N) with N < 10) and maximal expansion order 30 (highpow) and 32 (evenpow). If you need higher values, send an e-mail to t58@nikhef.nl, and I will send the procedures. The higher rank cases are in any case not very efficient, and could be improved.
The spinor character require Bernoulli numbers, which are built in up to order 32. Going to orders beyond 32 for SO(N) would require a little bit of extra work, to adapt B_generator and D_generator. The same holds for F4_generator and E8_generator, in which SO(N) subgroups are used.
If exceptional group characters are expanded to higher order (higher than in the programs included here), the output may not always be fully reduced to basic polynomials. This is not an easy problem, and we didn't attempt to construct an algorithm for it.
Bert Schellekens t58@nikhef.nl