Character expansions

Semi-automatic character computation

Based on "Group theory factors for Feynman diagrams" by T. van Ritbergen, A. Schellekens and J. Vermaseren, hereafter referred to as "the paper".

Contents

Routines that can be used to expand the character of any representation of any simple Lie-algebra to arbitrary order.

Programs needed

1. Form , by J. Vermaseren

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.

Outline

The procedure consist of three basic steps:

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".

Directories

The necessary programs for each algebra type are in the directories "algebra_A" ... "algebra_G". The "form" input files .._generator perform step 1; the "form" input files .._characters perform step 3.

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.

Examples

If the directory "algebra_X" contains already a file "Xr_characters" where "X"=A...G and "r" is the rank, one may go directly to step 3. and type in a terminal window

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.

Parameters

This computation is controlled by three parameters:

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".

How to make "Xr_characters"

1. In the file X_generator change the values of RANK, MAXPOW and STANDARDNORM as desired. 2. In a terminal window, type

#-
#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.

Limitations

The procedures Atensor.prc, highpow.prc and evenpow.prc are computer generated. Atensor.prc computes anti-symmetric tensor products of fundamental characters; highpow.prc reduces traces of order higher than MAXPOW to lower ones; evenpow.prc does the same, but under the assumption that odd traces vanish (as is the case for SO(N) and Sp(N)). These procedures are generated by C programs that requires as input the maximal antisymmetric tensor power (Atensor) or the maximal expansion order (highpow, evenpow). These C-programs are not included in this distribution.

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

Back to homepage