Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement fusion algebras #15485

Closed
tscrim opened this issue Dec 5, 2013 · 47 comments
Closed

Implement fusion algebras #15485

tscrim opened this issue Dec 5, 2013 · 47 comments

Comments

@tscrim
Copy link
Collaborator

tscrim commented Dec 5, 2013

As defined by Fuchs for WZW field theories.

CC: @sagetrac-sage-combinat @anneschilling @darijgr @dwbump

Component: algebra

Keywords: fusion algebras, rings, quantum groups, CFT

Reviewer: Travis Scrimshaw

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

@tscrim
Copy link
Collaborator Author

tscrim commented Dec 5, 2013

New commits:

[22fcc30](https://github.com/sagemath/sagetrac-mirror/commit/22fcc30)Initial implementation.
[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
[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.

@tscrim
Copy link
Collaborator Author

tscrim commented Dec 5, 2013

@tscrim
Copy link
Collaborator Author

tscrim commented Dec 5, 2013

Dependencies: #15289

@tscrim
Copy link
Collaborator Author

tscrim commented Dec 5, 2013

Commit: 22fcc30

@sagetrac-vbraun-spam sagetrac-vbraun-spam mannequin modified the milestones: sage-6.0, sage-6.1 Dec 17, 2013
@sagetrac-vbraun-spam sagetrac-vbraun-spam mannequin modified the milestones: sage-6.1, sage-6.2 Jan 30, 2014
@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Feb 8, 2014

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

dc50e22Merge branch 'develop' into public/algebras/fusion_algebras-15485
6c8a02eMerge branch 'develop' into public/algebras/fusion_algebras-15485
12f1412Merge branch 'develop' into public/algebras/fusion_algebras-15485
c37df3eMerge branch 'develop' into public/algebras/fusion_algebras-15485
1bcda69Merge branch 'develop' into public/algebras/fusion_algebras-15485
545a8dfMerge branch 'develop' into public/monoids/15289-indexed
2975c87Merge branch 'develop' into public/monoids/15289-indexed
4002b0dMerge branch 'develop' into public/monoids/15289-indexed
9e9b769Merge branch 'develop' into public/monoids/15289-indexed
a278afaAdded cardinality methods.

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Feb 8, 2014

Changed commit from 22fcc30 to 967207a

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Apr 9, 2014

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

56703ebMade Indexed* have entry points through Free*.
163df6eChanged more _basis_keys to _indices, deprecated the former.
8db8e0aChanged `_an_element_` to indexed_monoid.py.
760c939Merge branch 'public/monoids/15289-indexed' of trac.sagemath.org:sage into public/monoids/15289-indexed
03057a4Merge branch 'develop' into public/monoids/15289-indexed
a2996e0Merge branch 'develop' into public/monoids/15289-indexed
c1cc341Merge branch 'develop' into public/monoids/15289-indexed
49068b2Merge branch 'develop' into public/monoids/15289-indexed
6875cfbMerge branch 'develop' into public/monoids/15289-indexed
47a7f51Merge branch 'public/algebras/fusion_algebras-15485' of trac.sagemath.org:sage into public/algebras/fusion_algebras-15485

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Apr 9, 2014

Changed commit from 967207a to 47a7f51

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Apr 15, 2014

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

1818a3eMerge branch 'develop' into public/monoids/15289-indexed
8b2566fMerge branch 'public/monoids/15289-indexed' into public/algebras/fusion_algebras-15485

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Apr 15, 2014

Changed commit from 47a7f51 to 8b2566f

@sagetrac-vbraun-spam sagetrac-vbraun-spam mannequin modified the milestones: sage-6.2, sage-6.3 May 6, 2014
@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented May 17, 2014

Changed commit from 8b2566f to 49dba22

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented May 17, 2014

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

18fd094Fixed affine weight lattice symmetric form.
cb88df7Merge branch 'develop' into public/combinat/root_systems/improvements-15384
760194bMore changes and fixes.
eab1afeFixed doctest.
66f5674Fixed type BC positive roots.
e17ce53Merge branch 'develop' into public/combinat/root_systems/improvements-15384
7e83910Fixes for other twisted root systems.
c91754dMerge branch 'develop' into public/combinat/root_systems/improvements-15384
c71ee92Merge branch 'public/combinat/root_systems/improvements-15384' into public/algebras/fusion_algebras-15485
49dba22Fixed doctests from recent versions.

@tscrim
Copy link
Collaborator Author

tscrim commented May 17, 2014

Changed dependencies from #15289 to #15289 #15384

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 25, 2014

Changed commit from 49dba22 to 7876b6e

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 25, 2014

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

7876b6eMerge branch 'public/algebras/fusion_algebras-15485' of trac.sagemath.org:sage into public/algebras/fusion_algebras-15485

@sagetrac-vbraun-spam sagetrac-vbraun-spam mannequin modified the milestones: sage-6.3, sage-6.4 Aug 10, 2014
@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Mar 17, 2015

Changed commit from 7876b6e to 840c56b

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Oct 1, 2017

Changed commit from f29afd8 to f05b087

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Oct 1, 2017

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

f05b087Improving documentation, changing FusionAlgebra -> VerlindeAlgebra, other updates.

@tscrim

This comment has been minimized.

@tscrim
Copy link
Collaborator Author

tscrim commented Oct 1, 2017

comment:26

Replying to @koffie:

I thought maybe it was not to much work to learn what fusion algebras are, but this seems more work then expected. So here some non mathematical comments.

All the same, thank you for taking a look at the ticket.

  1. in the class docstring it might be good to list the INPUT: heading before all the mathematical explanation going on (but after the only senctence description of this class). This is something you want to be able to see at a quick glance if you sort of know how to use this class but forgot what the exact input was.

I disagree with this as I feel it is better to define your objects for people. If you need to look at the inputs, it takes 3 seconds to scroll to find the INPUT: block. Also, I think Sage more consistently has things this way.

  1. The examples in the __init__ function should be in a TESTS: section instead

This really doesn't matter, but done.

  1. Is there a reason you don't subclass sage.algebras.finite_dimensional_algebras.finite_dimensional_algebra.FiniteDimensionalAlgebra Otherwise, if this gives problems, you should at least make it behave more like a FiniteDimensionalAlgebra, by making a function that computes the underlying FiniteDimensionalAlgebra and delegates the most important function to the abstract underlying algebra to make it behave like a FiniteDimensionalAlgebra in order for users to have a consistent user experience.

Yes, there are many. Most importantly, it would mean we have to construct the entire multiplication table upon initialization rather than on-demand, which could be very expensive. Also, FiniteDimensionalAlgebra is a more concrete implementation than CombinatorialFreeModule and does not have the same feature set in terms of indexing of the basis. The consistency should be controlled through the category (is gen the thing you are talking about?); so if you want something, lift it from FiniteDimensionalAlgebra (or have some generic implementation or requirement added to the API).

  1. This raises an error:
sage: F(F.monomial(0))*F(F.monomial(1))

As it should. monomial wants something of the index set (although this is not checked currently for speed reasons and Python's "consenting adults" philosophy). While 0 could be considered in the index set, 1 definitely is not.

  1. While this works
sage: F.gens()[0] * F.gens()[1]
F[Lambda[2]]

You should not do this. See below.

  1. It would be nice to have a method gen like FreeModule(QQ,42) has (although admittedly this is a shortcoming of CombinatorialFreeModule) I just found this out in testing this ticket.

I completely disagree because gens (and hence gen) is ambiguous, and hence, should generally be avoided. In particular, the generators as a what? See #15381 and #17768.

In this case, there is not a good way to determine what generates it as an algebra, so the generators as an R-algebra are the same as those as a free R-module. Yet, in this case, there is no natural order on the generators because there is no natural order on the indexing set.

@dwbump
Copy link
Mannequin

dwbump mannequin commented Oct 4, 2018

comment:27

The documentation in algebras/verlinde_algebra.py .mentions the "Kac-Waldron formula". I think this should be "Kac-Walton".

Walton, Mark A. Fusion rules in Wess-Zumino-Witten models. Nuclear Phys. B 340 (1990), no. 2-3, 777–790.

Also in algebras/verlinde_algebra.py [Feigngold2004] should be [Feingold2004].

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Oct 8, 2018

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

7603245Initial implementation.
592aa5bFixed doctests from recent versions.
177e074trac #15485 fixing the catalog
2febb38Improving documentation, changing FusionAlgebra -> VerlindeAlgebra, other updates.
4492c9dFixing various small things.

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Oct 8, 2018

Changed commit from f05b087 to 4492c9d

@tscrim
Copy link
Collaborator Author

tscrim commented Oct 8, 2018

comment:30

I have fixed Dan's comment:27 (Waldron must have been a Freudenthal slip :P). I also rebased this over the current develop to help clean up the history a bit.

@fchapoton
Copy link
Contributor

comment:31

red branch => needs work

@tscrim
Copy link
Collaborator Author

tscrim commented Mar 26, 2021

Changed branch from public/algebras/fusion_algebras-15485 to none

@tscrim
Copy link
Collaborator Author

tscrim commented Mar 26, 2021

comment:33

This is a duplicate of #26440.

@tscrim
Copy link
Collaborator Author

tscrim commented Mar 26, 2021

Reviewer: Travis Scrimshaw

@tscrim
Copy link
Collaborator Author

tscrim commented Mar 26, 2021

Changed commit from 4492c9d to none

@tscrim
Copy link
Collaborator Author

tscrim commented Mar 26, 2021

Changed author from Travis Scrimshaw to none

@tscrim
Copy link
Collaborator Author

tscrim commented Mar 26, 2021

Changed dependencies from #15289 #15384 to none

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants