sagemath / sage

Main repository of SageMath
https://www.sagemath.org
Other
1.46k stars 484 forks source link

Lie algebras #14901

Open tscrim opened 11 years ago

tscrim commented 11 years ago

Initial implementation of Lie algebras in sage.

This will contain the following:

There might also be the following:

With this, one will be able to do basic computations, as well as compute things such as the lower central series (depending on the type).

Current ticket breakdown (more might follow):

Bug tickets: #25007, #25008, #33836, #34006

Quantum group tickets:

Other related tickets:

Nilpotent Lie algebras tickets:

Depends on #16824 Depends on #16826

CC: @sagetrac-sage-combinat @anneschilling @nthiery @darijgr @bsalisbury1 @dwbump @simon-king-jena

Component: algebra

Keywords: Lie algebras, Kac Moody, days54, fpsac2019

Author: Travis Scrimshaw

Branch/Commit: public/algebras/lie_algebras-14901 @ b8bcd7d

Issue created by migration from https://trac.sagemath.org/ticket/14901

tscrim commented 11 years ago

Description changed:

--- 
+++ 
@@ -1 +1,25 @@
 Initial implementation of Lie algebras in sage.
+
+This will contain the following:
+
+- Free Lie algebras in the Hall basis
+- Abelian Lie algebras
+- Lie algebras from an associative algebra
+- Lie algebras from structure coefficients
+- Finite type Lie algebras
+  - As matrices for types ABCD
+  - In the Chevalley basis
+- gl_n
+- The Lie algebra of strictly upper triangular matrices
+- The Lie algebra of upper triangular matrices
+- Untwisted affine Lie algebras constructed from a finite type
+- Untwisted affine Kac-Moody Lie algebras (i.e. the above + the Lie derivative)
+- Universal enveloping algebras
+
+There might also be the following:
+
+- The Lyndon basis for the free Lie algebra
+- su_n
+- Kac-Moody algebras based only on a (generalized) Cartan matrix
+
+With this, one will be able to do basic computations, as well as compute things such as the lower central series (depending on the type).
tscrim commented 11 years ago
comment:4

Other (poosible) additions:

tscrim commented 11 years ago

Description changed:

--- 
+++ 
@@ -9,17 +9,17 @@
 - Finite type Lie algebras
   - As matrices for types ABCD
   - In the Chevalley basis
-- gl_n
+- **gl**<sub>n</sub>
 - The Lie algebra of strictly upper triangular matrices
 - The Lie algebra of upper triangular matrices
 - Untwisted affine Lie algebras constructed from a finite type
-- Untwisted affine Kac-Moody Lie algebras (i.e. the above + the Lie derivative)
+- Untwisted affine Kac-Moody Lie algebras (i.e. the above and the Lie derivative)
 - Universal enveloping algebras

 There might also be the following:

 - The Lyndon basis for the free Lie algebra
-- su_n
+- **su**<sub>n</sub>
 - Kac-Moody algebras based only on a (generalized) Cartan matrix

 With this, one will be able to do basic computations, as well as compute things such as the lower central series (depending on the type).
darijgr commented 11 years ago
comment:5

That's a hell of a project!

At some point, when linear algebra works in combinatorial free modules, I'll want (and probably make) the Lie algebra of primitives of a Hopf algebra.

tscrim commented 11 years ago

Changed dependencies from #10963 to #10963 #14898

tscrim commented 11 years ago
comment:6

I'm currently setting #14898 as a dependency since that will likely be done before this patch and because they should play together.

tscrim commented 11 years ago

Changed dependencies from #10963 #14898 to #10963 #14898 #15151

tscrim commented 11 years ago
comment:7

For defining the action on Fock space needs #15151.

tscrim commented 11 years ago

Changed dependencies from #10963 #14898 #15151 to #10963 #14898 #15151 #15289

tscrim commented 11 years ago
comment:8

To do PBW(-type) bases, I'll need #15289.

tscrim commented 11 years ago

Attachment: trac_14901-lie_algebras-ts.patch.gz

tscrim commented 11 years ago
comment:9

Okay, here's the current version of the patch for reference for those don't want to get/use the combinat queue. It does about 80% or so of the functionality I want, but it probably could use some restructuring. It's also missing a lot of documentation (most importantly doctests). Here's what's done and (mostly) working:

Everything else:

tscrim commented 11 years ago

Changed dependencies from #10963 #14898 #15151 #15289 to #10963 #14898 #15151 #15289 #15384

tscrim commented 11 years ago

Branch: public/algebras/lie_algebras-14901

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 11 years ago

Commit: 9d33268

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 11 years ago

Branch pushed to git repo; I updated commit sha1. Last 10 new commits:

[9d33268](https://github.com/sagemath/sagetrac-mirror/commit/9d33268)#14901: Initial implementation of Lie algebras.
[db19b7c](https://github.com/sagemath/sagetrac-mirror/commit/db19b7c)Merge branch 'public/monoids/15289-indexed' into public/algebras/lie_algebras-14901
[643bfcb](https://github.com/sagemath/sagetrac-mirror/commit/643bfcb)Merge branch 'public/combinat/root_systems/improvements' into public/algebras/lie_algebras-14901
[362fd5e](https://github.com/sagemath/sagetrac-mirror/commit/362fd5e)# Tue Oct 29 20:14:19 2013 +0100
[b2914f3](https://github.com/sagemath/sagetrac-mirror/commit/b2914f3)# Sun Oct 27 13:58:49 2013 +0100
[9d9cae3](https://github.com/sagemath/sagetrac-mirror/commit/9d9cae3)# Sat Oct 19 11:50:04 2013 +0200
[0251a33](https://github.com/sagemath/sagetrac-mirror/commit/0251a33)Trac #13394: Implement faster and safer WeakValueDictionary
[c1b5afe](https://github.com/sagemath/sagetrac-mirror/commit/c1b5afe)#15289: Implemented indexed monoids and groups.
[6fd33b2](https://github.com/sagemath/sagetrac-mirror/commit/6fd33b2)#15169: Fix FreeAlgebra element constructor from a base field.
[0fa598a](https://github.com/sagemath/sagetrac-mirror/commit/0fa598a)imported patch root_system_data-ts.patch
tscrim commented 11 years ago

Changed keywords from Lie algebras Kac Moody to Lie algebras Kac Moody, days54

kcrisman commented 11 years ago
comment:13

You might find this link interesting and relevant. Apparently this person implemented quite a bit...

tscrim commented 11 years ago
comment:14

Replying to @kcrisman:

You might find this link interesting and relevant. Apparently this person implemented quite a bit...

Thanks. That has the branching rules and operations on the algebras themselves, which is useful, than doing computations within them.

Also as a reference for myself: http://coropa.sourceforge.net/

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 11 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

[658e41d](https://github.com/sagemath/sagetrac-mirror/commit/658e41d)Merge branch 'master' into public/algebras/lie_algebras-14901
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 11 years ago

Changed commit from 9d33268 to 658e41d

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 11 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

[efecd11](https://github.com/sagemath/sagetrac-mirror/commit/efecd11)Fixes to printing of PBW basis elements.
[eec85ad](https://github.com/sagemath/sagetrac-mirror/commit/eec85ad)Merge branch 'public/combinat/root_systems/improvements-15384' into public/algebras/lie_algebras-14901
[b4c7865](https://github.com/sagemath/sagetrac-mirror/commit/b4c7865)Merge branch 'master' into public/combinat/root_systems/improvements-15384
[e40f892](https://github.com/sagemath/sagetrac-mirror/commit/e40f892)Changed horizontal to basic_untwisted.
[930782b](https://github.com/sagemath/sagetrac-mirror/commit/930782b)Fixed indentation error.
[f87789d](https://github.com/sagemath/sagetrac-mirror/commit/f87789d)Merge branch 'master' into public/combinat/root_systems/improvements-15384
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 11 years ago

Changed commit from 658e41d to efecd11

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 10 years ago

Changed commit from efecd11 to 4466b12

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 10 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

[4466b12](https://github.com/sagemath/sagetrac-mirror/commit/4466b12)Merge branch 'public/monoids/15289-indexed' into public/algebras/lie_algebras-14901
[9dca526](https://github.com/sagemath/sagetrac-mirror/commit/9dca526)Added comparison operations.
[a493bee](https://github.com/sagemath/sagetrac-mirror/commit/a493bee)Merge branch 'master' into public/monoids/15289-indexed
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 10 years ago

Changed commit from 4466b12 to 84b241f

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 10 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

[84b241f](https://github.com/sagemath/sagetrac-mirror/commit/84b241f)Merge branch 'public/functorial_constructions-10963' into public/algebras/lie_algebras-14901
[80d55fe](https://github.com/sagemath/sagetrac-mirror/commit/80d55fe)merging sage/categories/category.py
tscrim commented 10 years ago

Description changed:

--- 
+++ 
@@ -10,16 +10,26 @@
   - As matrices for types ABCD
   - In the Chevalley basis
 - **gl**<sub>n</sub>
-- The Lie algebra of strictly upper triangular matrices
-- The Lie algebra of upper triangular matrices
 - Untwisted affine Lie algebras constructed from a finite type
 - Untwisted affine Kac-Moody Lie algebras (i.e. the above and the Lie derivative)
 - Universal enveloping algebras
+  * PBW bases
+- Quotient, sub, and direct sum Lie algebras and Lie algebra ideals
+- Other examples:
+  * Upper triangular matrices
+  * Strictly upper triangular matrices
+  * Heisenberg algebra
+  * Witt algebra
+  * Virasoro algebra
+  * Some nilpotent Lie algebras
+- The Lyndon basis for the free Lie algebra
+- Kac-Moody algebras based only on a (generalized) Cartan matrix
+- Fock space #15508

 There might also be the following:

-- The Lyndon basis for the free Lie algebra
 - **su**<sub>n</sub>
-- Kac-Moody algebras based only on a (generalized) Cartan matrix
+- recovery of Lie group from Lie algebra
+- connection between the quantum group and the Hall algebra (coming from representations of a quiver over Fq)

 With this, one will be able to do basic computations, as well as compute things such as the lower central series (depending on the type).
tscrim commented 10 years ago
comment:19

I've separated out Fock space into #15508. More splittings to come.

I'd also like to get Lie cohomology and connections with the exterior algebra (#15300) and De Rahm cohomology done as well.

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 10 years ago

Changed commit from 84b241f to d79c483

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 10 years ago

Branch pushed to git repo; I updated commit sha1. Last 10 new commits:

[d79c483](https://github.com/sagemath/sagetrac-mirror/commit/d79c483)Merge branch 'public/combinat/root_systems/improvements-15384' into public/algebras/lie_algebras-14901
[585729a](https://github.com/sagemath/sagetrac-mirror/commit/585729a)Merge branch 'public/modules/fock_space' into public/algebras/lie_algebras-14901
[702f96a](https://github.com/sagemath/sagetrac-mirror/commit/702f96a)Merge branch 'u/tscrim/lie_algebras-14901' of trac.sagemath.org:sage into public/algebras/lie_algebras-14901
[4548a5b](https://github.com/sagemath/sagetrac-mirror/commit/4548a5b)Merge branch 'public/modules/fock_space' of trac.sagemath.org:sage into public/modules/fock_space
[31b1cf2](https://github.com/sagemath/sagetrac-mirror/commit/31b1cf2)Finished GW algorithm and finalized files.
[0374b6f](https://github.com/sagemath/sagetrac-mirror/commit/0374b6f)Merge branch 'master' into public/algebras/lie_algebras-14901
[20af672](https://github.com/sagemath/sagetrac-mirror/commit/20af672)Merge branch 'master' into public/modules/fock_space
[1d8057a](https://github.com/sagemath/sagetrac-mirror/commit/1d8057a)Merge branch 'u/tscrim/lie_algebras-14901' of ssh://trac.sagemath.org:2222/sage into public/algebras/lie_algebras-14901
[63ac373](https://github.com/sagemath/sagetrac-mirror/commit/63ac373)Tweaks to Virasoro algebra documentation.
[90424b3](https://github.com/sagemath/sagetrac-mirror/commit/90424b3)More work on GW algorithm.
tscrim commented 10 years ago

Description changed:

--- 
+++ 
@@ -2,7 +2,9 @@

 This will contain the following:

-- Free Lie algebras in the Hall basis
+- Free Lie algebras
+  * Hall basis
+  * Lyndon basis
 - Abelian Lie algebras
 - Lie algebras from an associative algebra
 - Lie algebras from structure coefficients
@@ -22,7 +24,6 @@
   * Witt algebra
   * Virasoro algebra
   * Some nilpotent Lie algebras
-- The Lyndon basis for the free Lie algebra
 - Kac-Moody algebras based only on a (generalized) Cartan matrix
 - Fock space #15508
tscrim commented 10 years ago
comment:22

Also for reference (and in case anyone can translate mathematica code into pseudocode or pseudo Sage) http://www.equaonline.com/math/SuperLie/.

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 10 years ago

Changed commit from d79c483 to 3eb6784

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 10 years ago

Branch pushed to git repo; I updated commit sha1. Last 10 new commits:

6863447Merge branch 'master' into public/algebras/lie_algebras-14901
a970464Work on finite dimensional Lie algebras with bases.
b153849Merge branch 'master' into public/algebras/lie_algebras-14901
494ad67Merge branch 'develop' into public/algebras/lie_algebras-14901
4038bc8Starting work.
b09a669Fixed implementation, now to documentation.
2fdb307Started new file for PBW algebras and ideals.
6fb3c0dMerge branch 'develop' into public/algebras/fp_algebras
d2d1019Refactoring PBW ideals and FP algebras.
6213e71Merge branch 'develop' into public/algebras/fp_algebras
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 10 years ago

Changed commit from 3eb6784 to 4b66ac3

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 10 years ago

Branch pushed to git repo; I updated commit sha1. Last 10 new commits:

a278afaAdded cardinality methods.
f681606Added cardinality to free abelian monoid for consistancy.
3a0e50bMerge branch 'develop' into public/monoids/15289-indexed
d4606ccAdded more robustness to element creation.
991953aMerge branch 'develop' into public/monoids/15289-indexed
480188eMerge branch 'public/monoids/15289-indexed' into public/algebras/lie_algebras-14901
cc0c2a5Merge branch 'develop' into public/algebras/lie_algebras-14901
c3e7244Added are_linearly_dependent.
b8ef03bMerge branch 'public/linear_algebra/linear_dep_check-15827' into public/algebras/lie_algebras-14901
4b66ac3Refactoring of Lie algebras with structure coefficients.
tscrim commented 10 years ago

Changed dependencies from #10963 #14898 #15151 #15289 #15384 to #10963 #14898 #15151 #15289 #15384 #15827

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 10 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

f356239Fixes from refactoring and (hopefully) a working version of finitely presented algebras.
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 10 years ago

Changed commit from 4b66ac3 to f356239

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 10 years ago

Changed commit from f356239 to 11c9bf3

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 10 years ago

Branch pushed to git repo; I updated commit sha1. Last 10 new commits:

7db4ef0Trac 10963: Fixed repr for the symmetric group algebra by improving a bit the generic repr methods in the categories
367d72eTrac 10963: fixed trivial doctest failure
8919180Trac 10963: reverted change that was meant to be put in #15801
d1b5374Trac 10963: reverted change that required #15801 for no good reason
4580db1Trac 10963: fixed trivial doctest failures
f44661fTrac 15801: added repr in HeckeModule_free_module (the generic one in modules with basis can't handle it anymore)
feab04amanual merge with 6.2.beta8
ce2193eMerge branch 'public/ticket/10963-doc-distributive' of trac.sagemath.org:sage into public/ticket/10963-doc-distributive
e5567c1Merge branch 'public/ticket/10963-doc-distributive' into public/algebras/lie_algebras-14901
11c9bf3Cleaning up bad merging.
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 10 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

6de0121Tweaks to elements and struct coeffs.
1c1b4ebChanged monomial_cmp to generator_cmp and added free (static)method to monoids and groups category.
47b5be7Removed `__contains__` and fix monomial_cmp in indexed_monoid.py
4097a8cMerge branch 'develop' into public/monoids/15289-indexed
374ae3dMerge branch 'public/monoids/15289-indexed' into public/algebras/base_lie_algebras
211e1c7Merge branch 'public/algebras/base_lie_algebras' into public/algebras/lie_algebras-14901
23301a8Misc fixes and tweaks.
e30bf4eMerge branch 'public/monoids/15289-indexed' into public/algebras/lie_algebras-14901
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 10 years ago

Changed commit from 11c9bf3 to e30bf4e

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 10 years ago

Changed commit from e30bf4e to c738b02

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 10 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

4f719e1Reverted FreeLieAlgebra error.
6993e66Fixes for removing of ngens() for morphisms.
c738b02Merge branch 'develop' into public/algebras/lie_algebras-14901
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 10 years ago

Branch pushed to git repo; I updated commit sha1. Last 10 new commits:

f9f8b9fMerge branch 'public/combinat/root_systems/improvements-15384' into public/algebras/lie_algebras-14901
56e3891Putting out some fires.
329ea79Merge branch 'develop' into public/algebras/base_lie_algebras
6da634bMerge branch 'develop' into public/algebras/base_lie_algebras
dc6747bBetter repr/latex and actually use IndexedGenerators.
2346150Merge branch 'public/algebras/base_lie_algebras' into public/algebras/lie_algebras-14901
4785df5Some fixes from the merge.
21e7b0bRemoved s from affine Lie algebras module name.
1edf001Merge branch 'public/algebras/base_lie_algebras' into public/algebras/lie_algebras-14901
850ab5cPutting out more fires. (Untwisted) Affine Lie algebras working agian.
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 10 years ago

Changed commit from c738b02 to 850ab5c

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 10 years ago

Branch pushed to git repo; I updated commit sha1. Last 10 new commits:

ecdc00fFixed doctests because of different processing of input.
909196eMerge branch 'develop' into public/monoids/15289-indexed
1db7c1dMerge branch 'develop' into public/monoids/15289-indexed
73a4e48Implemented other changes/improvements Nicolas suggested.
b9f6f18Merge branch 'develop' into public/monoids/15289-indexed
45ee958Merge branch 'public/monoids/15289-indexed' into public/algebras/lie_algebras-14901
399bb1eRebased over changes from indexed generators.
ab4fa91Removed duplicate code and fixed ideals.
469a5b2Putting out more fires.
b8bcd7dMerge branch 'public/algebras/lie_algebras-14901' of trac.sagemath.org:sage into public/algebras/lie_algebras-14901
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 10 years ago

Changed commit from 850ab5c to b8bcd7d