       FW: How to do Lie Algebras in Mathematica...

• To: mathgroup at smc.vnet.net
• Subject: [mg20774] FW: [mg20751] How to do Lie Algebras in Mathematica...
• From: Andrzej Kozlowski <andrzej at tuins.ac.jp>
• Date: Thu, 11 Nov 1999 00:22:48 -0500
• Sender: owner-wri-mathgroup at wolfram.com

```Here is one quick attempt. We simply define a Lie algebra axiomatically
using a bracket operation just as one would do in an introductory math
course on the subject:

First we want the bracket to be bi-linear:

In:=
Bracket[X_Plus, Y_Plus] := Block[{Bracket}, Distribute[Bracket[X, Y]]]

In:=
Bracket[a_?NumericQ*X_, Z_] := a*Bracket[X, Z]

In:=
Bracket[Z_, a_?NumericQ*X_] := a*Bracket[Z, X]

next anti-commutativity

In:=
Bracket[X_, X_] = 0;

In:=
Bracket[x_, y_] /;
Sort[{x, y}] =!= {x, y} := -Bracket[Apply[Sequence, Sort[{x, y}]]]

Finally the Jacobi identity:

In:=
Bracket /:
Bracket[Bracket[x_, y_], z_] + Bracket[Bracket[y_, z_], x_] +
Bracket[Bracket[z_, x_], y_] = 0;

(This is not a minimal system of axioms but seems convenient in this case)

Now we only need to define the Bracket on generators, e.g.

In:=
Bracket[e, h] = 2e; Bracket[f, h] = -2f; Bracket[e, f] = h;

And we can now do Lie algebra computations like:

In:=
Bracket[3f + 2h, 5e - f + 11h]
Out=
-20 e - 70 f - 15 h

--
Andrzej Kozlowski
Toyama International University
JAPAN
http://sigma.tuins.ac.jp

> From: Melih Sener <melih at ks.uiuc.edu>
To: mathgroup at smc.vnet.net
> Organization: TBG/Beckman Institute
> Date: Wed, 10 Nov 1999 00:17:57 -0500
> To: mathgroup at smc.vnet.net
> Subject: [mg20774] [mg20751] How to do Lie Algebras in Mathematica...
>
>
> Hi...
>
> Lets say I want to generate the Lie Algebra [of say su(3)]
> on Mathematica without going to explicitly
> constucting matrices for the generators...
>
> So I want Mathematica to "learn" relations like:
>
> [G_ij , G_kl] = (something)*G_mn
>
> and I want to define a "commutator product" [A , B]
> which is distributive, linear etc.
>
> So that I can produce expressions for things like
> [a*G_12+b*G_23, c*G_33+d*G_13] in an easy way...
> [ "Distribute" is useful... but I don't know how to
> make mathematica learn to factor coefficents of generators
> outside the commutator...]
>
> What is the best way to do this?
>
> Thanks,
>
> Melih
>

```

• Prev by Date: FW: How to do Lie Algebras in Mathematica...
• Next by Date: Re: complex variable
• Previous by thread: FW: How to do Lie Algebras in Mathematica...
• Next by thread: Reed Solomon Codes in matrix form