Lie Algebras/Lie Groups

243 views
Skip to first unread message

Mary Clark

unread,
Feb 15, 2013, 8:52:54 PM2/15/13
to sympy
Hi all,

I've noticed that sympy doesn't have any classes which would deal with
Lie Algebras. I was wondering if this is a direction in which it
could be useful to extend sympy? Lie algebras (and by extension Lie
groups) have many applications in both physics and mathematics. It
could also be useful to have something about the semisimple Lie
algebras, their roots systems, Dynkin diagrams, etc.

Is this something that would be useful/wanted?

Mary

Matthew Rocklin

unread,
Feb 15, 2013, 9:07:17 PM2/15/13
to sy...@googlegroups.com
(Given your previous e-mail I assume that you're asking because you're interested in doing a GSoC project)

This general type of topic is certainly appropriate for SymPy, however I'm not able to judge if this particular topic is useful or wanted.  The utility might come from communities outside of SymPy.

In my experience SymPy GSoC projects are either inward-facing or outward-facing.  This project sounds outward-facing because it targets an external community (mathematical physicists and the like).  In these cases I think that the question of utility is up for debate.  The impact and importance of this project to the broader community should be part of a project proposal.  In this sense a GSoC proposal is good practice for other academic proposals.

Some questions: 

1.  How does this fit into other modules that might already exist in SymPy?  What does it leverage?  What can it support in the future?
2.  Are there other systems out there that already deal with Lie Algebras? (this is expected)
3.  What communities would this work support?  How would such a module be useful for researchers today?  What important problems would be made easier by this work?



Mary

--
You received this message because you are subscribed to the Google Groups "sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sympy+un...@googlegroups.com.
To post to this group, send email to sy...@googlegroups.com.
Visit this group at http://groups.google.com/group/sympy?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.



David Joyner

unread,
Feb 15, 2013, 9:29:15 PM2/15/13
to sy...@googlegroups.com
Is what you are thinking of different from what Sage has?
http://www.sagemath.org/doc/thematic_tutorials/lie/introduction.html

Aaron Meurer

unread,
Feb 15, 2013, 9:29:26 PM2/15/13
to sy...@googlegroups.com
To these, I would add the (perhaps obvious) question: what are some
specific things that the completed module might be expected to
compute? If these things are highly symbolic and difficult to compute
by hand, then this is exactly the sort of thing that belongs in SymPy,
I think.

Aaron Meurer

Mary Clark

unread,
Feb 16, 2013, 4:09:24 PM2/16/13
to sympy
To address the questions:
- I would hope for this module to compute root systems, the weight
lattice, the Weyl group, the Cartan matrix, and hopefully the Dynkin
diagram (i.e. more or less what the linked Sage document covers).
Ideally, the module would also be able to tell whether a given Lie
algebra is nilpotent or solvable. These things are all symbolic, and
can be extraordinarily difficult to compute by hand, especially once
you move past n = 3. I've written programs in Mathematica to compute
some of these, which has been dead useful.

-The solvability and nilpotency of a Lie algebra are analogous to the
solvability and nilpotency of groups, so the code to that is used to
compute these things in the groups module would be easily adapted to a
Lie algebra module. Calculating things like ideals and subalgebras
als have analogues with groups, so there is some tie in there.

-In terms of applicability to research and research communities, I
think this would be very useful. For example, quite recently, it has
been shown that all finite dimensional cluster algebras are in a
bijection with the classical semisimple Lie algebras. This was done
through the Cartan matrices and root diagrams. Additionally, the
actions of Lie groups are useful in expressing the concept of
continuous symmetries of geometric objects. Lie algebras (because
they are linear and much easier to work with than Lie groups) pop up
all over in differential geometry. They're also useful to physicists
as symmetry groups in particle physicists. For my own research (and
that of my supervisor) Lie algebras are useful in describing boundary
conditions for certain lattice systems and associated Young diagrams
and other combinatoric objects.

I'm not sure if all of this answered all the questions posed, and I
hope that I have not been too rambly.
> > On Fri, Feb 15, 2013 at 5:52 PM, Mary Clark <mary.spritel...@gmail.com>
> > wrote:
>
> >> Hi all,
>
> >> I've noticed that sympy doesn't have any classes which would deal with
> >> Lie Algebras.  I was wondering if this is a direction in which it
> >> could be useful to extend sympy?  Lie algebras (and by extension Lie
> >> groups) have many applications in both physics and mathematics.  It
> >> could also be useful to have something about the semisimple Lie
> >> algebras, their roots systems, Dynkin diagrams, etc.
>
> >> Is this something that would be useful/wanted?
>
> >> Mary
>
> >> --
> >> You received this message because you are subscribed to the Google Groups
> >> "sympy" group.
> >> To unsubscribe from this group and stop receiving emails from it, send an
> >> email to sympy+un...@googlegroups.com.
> >> To post to this group, send email to sy...@googlegroups.com.
> >> Visit this group athttp://groups.google.com/group/sympy?hl=en.
> >> For more options, visithttps://groups.google.com/groups/opt_out.

Alan Bromborsky

unread,
Feb 16, 2013, 5:41:45 PM2/16/13
to sy...@googlegroups.com
The attached paper might be of interest
Lie groups as spin groups - Doran, Hestenes, Sommen, Van Acker - 1993.pdf

Ondřej Čertík

unread,
Feb 18, 2013, 2:42:22 AM2/18/13
to sy...@googlegroups.com
Hi Mary,

I think its useful to have this functionality in SymPy. So far we only
have the so(3) / su(2) algebra here:

https://github.com/sympy/sympy/blob/master/sympy/physics/quantum/spin.py
https://github.com/sympy/sympy/blob/master/sympy/physics/quantum/tests/test_spin.py

it's the angular momentum algebra, representations, and addition of
angular momenta. Other Lie algebras that would be very nice to have
are Lorentz, Galileo, as well as useful groups from particle physics,
as you mentioned.
I personally only have some experience with their physical properties
and applications. You seem to be more interested in the math itself,
where I am not strong with all the possible applications and what it
can do for people, but
as Aaron said, if it does useful things that are otherwise hard to do
by hand, it should be in sympy.

Ondrej

Mary Clark

unread,
Feb 18, 2013, 3:39:45 AM2/18/13
to sy...@googlegroups.com
Would this be something sympy is interested in supporting as a gsoc project?  I'd like to approach it from the mathematical point of view, but I think that it would also be doable to perhaps put in more information about sl(2,c) which is the double cover of the Lorentz algebra and so on.

Aaron Meurer

unread,
Feb 18, 2013, 1:03:00 PM2/18/13
to sy...@googlegroups.com
So I'm gong to go ahead and say yes on this one. The fact that some stuff already exists in the physics module says to me that this is useful. 

What we should do is move everything that's not directly physics related into a separate submodule, probably a "groups" module, which would also house the group theory stuff that is currently living in combinatorics. Then physics will just import that and use it, possibly modifying it if there are physics specific details it needs to worry about. 

At this point, I'd like to point you, as well as all other potential GSoC applicants to a blog post I made a couple of years back on advice for GSoC applicants: http://asmeurersympy.wordpress.com/2011/04/27/advice-for-future-prospective-gsoc-students/

All the advice there is good, but for you, I particularly want to point out number 4. It's pretty clear that you understand the math, and that is good and you should indeed try to demonstrate that, but it's also very important that you start to think about implementation. 

So I would start thinking very specifically about what your code will look like. In other words, now is a good time to start developing an API for your module. The final API might not look anything like it, but this will show us that you are indeed thinking about the implementation and not just the mathematics. This also has the side effect of getting the community excited about your proposal, which is always a good thing. 

Also, I didn't notice a patch from you yet (correct me if I am wrong). This is also very important, as it shows us that you actually know Python. It's only February, so you have a pretty good head start, but it's best to use that to your best advantage. 

Aaron Meurer

On Feb 18, 2013, at 1:39 AM, Mary Clark <mary.sp...@gmail.com> wrote:

Would this be something sympy is interested in supporting as a gsoc project?  I'd like to approach it from the mathematical point of view, but I think that it would also be doable to perhaps put in more information about sl(2,c) which is the double cover of the Lorentz algebra and so on.

--

Mary Clark

unread,
Feb 18, 2013, 1:15:14 PM2/18/13
to sy...@googlegroups.com
I'm working on a patch right now; I'd like to add some stuff to the groups module that Aleksander from last year's GSoC said would be useful to be added in.   I'm totally new to git though, so I'm probably going to have questions about that. 

I really appreciate the advice and the blog post.  That is certainly something I'll take into account.  Once I've started on an API, is that something that I should post on this group for advice and input?

Mary

Aaron Meurer

unread,
Feb 18, 2013, 6:03:53 PM2/18/13
to sy...@googlegroups.com
On Mon, Feb 18, 2013 at 11:15 AM, Mary Clark <mary.sp...@gmail.com> wrote:
> I'm working on a patch right now; I'd like to add some stuff to the groups
> module that Aleksander from last year's GSoC said would be useful to be
> added in. I'm totally new to git though, so I'm probably going to have
> questions about that.

Great. Feel free to ask about that here, or you can try IRC for live
help. Everyone has a hard time with git at first, so it's pretty much
expected that we'll need to help you with it.

>
> I really appreciate the advice and the blog post. That is certainly
> something I'll take into account. Once I've started on an API, is that
> something that I should post on this group for advice and input?

Yes, let's discuss it here.

Aaron Meurer

>
>
> Mary
Reply all
Reply to author
Forward
0 new messages