MathGroup Archive 1999

[Date Index] [Thread Index] [Author Index]

Search the Archive

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[1]:=
Bracket[X_Plus, Y_Plus] := Block[{Bracket}, Distribute[Bracket[X, Y]]]

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

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


next anti-commutativity

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

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

Finally the Jacobi identity:


In[5]:=
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[6]:=
Bracket[e, h] = 2e; Bracket[f, h] = -2f; Bracket[e, f] = h;

And we can now do Lie algebra computations like:

In[7]:=
Bracket[3f + 2h, 5e - f + 11h]
Out[7]=
-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