> < ^ Date: Wed, 23 Mar 1994 18:25:00 +0100
> < ^ From: Meinolf Geck <meinolf.geck@math.rwth-aachen.de >
> < ^ Subject: Re: Lie algebras

Dear Forum,
Mike Falk asked in an email,

> Does anyone on this list know of a facility for computation in a
> finite-dimensional Lie algebra, i.e. a subalgebra of gl(n,C)? Does gap
> have such capabilities? (To start with, how about finding (a basis for)
> the solvable radical of L?) Thanks.
I haven't checked this, but maybe the system LIE has already some
built-in functions for working with Lie algebras? I myself have written
a collection of programs in GAP for working with finite Weyl groups and
Iwahori-Hecke algebras. Maybe I may add some more general comments
based on the experience I made with those programs:

The first question is the following: In which form to you want to enter
your Lie algebra into the computer? Is it a list of n by n matrices
which generate the algebra (as a Lie algebra)? If so, which fields
of entries do you allow? You mention the complex numbers. How do you
want to represent them? As a+bi where a,b are reals?; and then, what about
the reals? In GAP there are the rationals and cyclotomic extensions of them,
as well as all the finite fields. Maybe this is already sufficient for you.
If so, then you can build up matrices from them and apply all the
general operations for matrices.

(The same question arose for the Weyl groups: In books they are either
defined via a presentation or as a reflection group. But eventually,
I chose to represent them as a permutation group on the root system
because this made certain operations, like computing the length of
an element, extremely efficient.)

The second question is about the specific problem you mention (computing
the solvable radical): Suppose you are given your Lie algebra in terms of
generating matrices as above. Do you have, at least theoretically, an
algorithm which does the job, taking those matrices as input? I don't
remember exactly but I think the solvable radical is the radical of
the Killing form. So, one could form various products of the generating
matrices, thus building a vector space basis of the Lie algebra. Then
one could set up the Gram matrix of the Killing form and compute its
null space. (This will not be the best possible algorithm but it is one.)

(Again, an example taken from the Weyl groups: There is a partial order
on the elements of the group called the Bruhat order. An element w
is bigger than an element v if you can find a reduced expression for
w, as a word in the standard generators, such that v is obtained by
omitting some factors in this expression. This definition is not
suitable at all for computational purposes. So, one first has to look
for better ways to decide this, and then the implementation as a program
was easy.)

The point that I am trying to make is the following: I am quite certain
that it is possible to use GAP (or any other computer algebra system)
to work with Lie algebras and write programs which solve specific
problems. But one main problem, as it seems to me, is that of a good
representation of the algebra (''good'' with respect to computational
approaches); another problem is that of efficient algorithms.

Best regards, Meinolf Geck

> < [top]