Closed tscrim closed 3 years ago
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. |
Dependencies: #15289
Branch pushed to git repo; I updated commit sha1. Last 10 new commits:
dc50e22 | Merge branch 'develop' into public/algebras/fusion_algebras-15485 |
6c8a02e | Merge branch 'develop' into public/algebras/fusion_algebras-15485 |
12f1412 | Merge branch 'develop' into public/algebras/fusion_algebras-15485 |
c37df3e | Merge branch 'develop' into public/algebras/fusion_algebras-15485 |
1bcda69 | Merge branch 'develop' into public/algebras/fusion_algebras-15485 |
545a8df | Merge branch 'develop' into public/monoids/15289-indexed |
2975c87 | Merge branch 'develop' into public/monoids/15289-indexed |
4002b0d | Merge branch 'develop' into public/monoids/15289-indexed |
9e9b769 | Merge branch 'develop' into public/monoids/15289-indexed |
a278afa | Added cardinality methods. |
Branch pushed to git repo; I updated commit sha1. Last 10 new commits:
56703eb | Made Indexed* have entry points through Free*. |
163df6e | Changed more _basis_keys to _indices, deprecated the former. |
8db8e0a | Changed `_an_element_` to indexed_monoid.py. |
760c939 | Merge branch 'public/monoids/15289-indexed' of trac.sagemath.org:sage into public/monoids/15289-indexed |
03057a4 | Merge branch 'develop' into public/monoids/15289-indexed |
a2996e0 | Merge branch 'develop' into public/monoids/15289-indexed |
c1cc341 | Merge branch 'develop' into public/monoids/15289-indexed |
49068b2 | Merge branch 'develop' into public/monoids/15289-indexed |
6875cfb | Merge branch 'develop' into public/monoids/15289-indexed |
47a7f51 | Merge branch 'public/algebras/fusion_algebras-15485' of trac.sagemath.org:sage into public/algebras/fusion_algebras-15485 |
Branch pushed to git repo; I updated commit sha1. Last 10 new commits:
18fd094 | Fixed affine weight lattice symmetric form. |
cb88df7 | Merge branch 'develop' into public/combinat/root_systems/improvements-15384 |
760194b | More changes and fixes. |
eab1afe | Fixed doctest. |
66f5674 | Fixed type BC positive roots. |
e17ce53 | Merge branch 'develop' into public/combinat/root_systems/improvements-15384 |
7e83910 | Fixes for other twisted root systems. |
c91754d | Merge branch 'develop' into public/combinat/root_systems/improvements-15384 |
c71ee92 | Merge branch 'public/combinat/root_systems/improvements-15384' into public/algebras/fusion_algebras-15485 |
49dba22 | Fixed doctests from recent versions. |
Changed dependencies from #15289 to #15289 #15384
Branch pushed to git repo; I updated commit sha1. New commits:
7876b6e | Merge branch 'public/algebras/fusion_algebras-15485' of trac.sagemath.org:sage into public/algebras/fusion_algebras-15485 |
Branch pushed to git repo; I updated commit sha1. New commits:
840c56b | Merge branch 'public/algebras/fusion_algebras-15485' of trac.sagemath.org:sage into public/algebras/fusion_algebras-15485 |
Branch pushed to git repo; I updated commit sha1. New commits:
7a23e3f | Merge branch 'public/algebras/fusion_algebras-15485' into 6.9.b7 |
Branch pushed to git repo; I updated commit sha1. New commits:
b2d45d9 | Merge branch 'public/algebras/fusion_algebras-15485' of trac.sagemath.org:sage into public/algebras/fusion_algebras-15485 |
Merge conflict with sage 8.1.beta3 needs to be resolved
Branch pushed to git repo; I updated commit sha1. New commits:
baf5b00 | Merge branch 'public/algebras/fusion_algebras-15485' of trac.sagemath.org:sage into public/algebras/fusion_algebras-15485 |
Boring trivial rebase.
Hi,
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.
__init__
function should be in a TESTS: section insteadsage.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.sage: F(F.monomial(0))*F(F.monomial(1))
sage: F.gens()[0] * F.gens()[1]
F[Lambda[2]]
gen
like FreeModule(QQ,42) has (although admittedly this is a shortcoming of CombinatorialFreeModule) I just found this out in testing this ticket.Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:
f05b087 | Improving documentation, changing FusionAlgebra -> VerlindeAlgebra, other updates. |
Description changed:
---
+++
@@ -1 +1 @@
-As defined by Fuchs for WZW and conformal field theories.
+As defined by Fuchs for WZW field theories.
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.
- 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.
- The examples in the
__init__
function should be in a TESTS: section instead
This really doesn't matter, but done.
- 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).
- 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.
- While this works
sage: F.gens()[0] * F.gens()[1] F[Lambda[2]]
You should not do this. See below.
- 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.
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].
Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:
7603245 | Initial implementation. |
592aa5b | Fixed doctests from recent versions. |
177e074 | trac #15485 fixing the catalog |
2febb38 | Improving documentation, changing FusionAlgebra -> VerlindeAlgebra, other updates. |
4492c9d | Fixing various small things. |
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.
red branch => needs work
Changed branch from public/algebras/fusion_algebras-15485 to none
This is a duplicate of #26440.
Reviewer: Travis Scrimshaw
Changed author from Travis Scrimshaw to none
Changed dependencies from #15289 #15384 to none
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