Ticket #8411 (closed defect: fixed)
Branching rule fix and doc revision
| Reported by: | bump | Owned by: | sage-combinat |
|---|---|---|---|
| Priority: | major | Milestone: | sage-4.4 |
| Component: | combinatorics | Keywords: | Branching rules |
| Cc: | sage-combinat, brant@… | Work issues: | |
| Report Upstream: | N/A | Reviewers: | Nicolas M. Thiéry, Brant Jones |
| Authors: | Daniel Bump | Merged in: | sage-4.4.alpha2 |
| Dependencies: | Stopgaps: |
Description (last modified by bump) (diff)
This corrects a minor problem with branching rules in weyl_characters.py.
Previously branching rules SO(m+n)->SO(m)xSO(n) were implemented using rule="extended", and similarly for symplectic groups. However there is one case where this does not meet the definition of the extended rule, namely SO(2n+2m+2)->SO(2n+1)xSO(2m+1). Indeed, the extended rule checks to see if the ranks are equal, which they are not in this case.
I thought the cleanest fix was to implement a new rule called "orthogonal_sum" for such cases.
I also took the chance to revise the documentation since what was said before about rule="symmetric" was misleading.
Minor bugfix in weightring: 0 in weight lattice should coerce to 1 not 0 in weight ring.
Attachments
Change History
comment:3 Changed 3 years ago by nthiery
All test pass on 4.3.4 and, from a technical point of view, the patch looks good.
So it is good to go as soon as someone more knowledgeable with branching rules will have double check the mathematics? Well, of course, the expert is Dan :-) Maybe Brant?
comment:4 Changed 3 years ago by nthiery
- Cc brant@… added
- Keywords Branching rules added
- Reviewers set to Nicolas M. Thiéry, Brant Jones
comment:5 Changed 3 years ago by bump
jhpalmieri objected in #8414 to the fact that the patch there did not contain mercurial headers information.
I therefore remade this patch. There is no change to the content of the patch.
comment:6 Changed 3 years ago by nthiery
Please also include the ticket number in the patch title!
#8411: Branching rule fix and doc revision
Sorry for the extra bother ...
Changed 3 years ago by bump
-
attachment
trac_8411_branching_rules.patch
added
Branching rule fix and revised doc in weyl_characters.py
comment:8 Changed 3 years ago by brant.c.jones
- Status changed from needs_review to positive_review
This is a positive review for trac_8411.
Prior to this patch, sage would not branch e.g. SO(3) x SO(3) -> SO(6) because this would embed a rank 2 group in a rank 3 group, and the get_branching_rule() code required the ranks to be equal. After applying this patch, the "orthogonal_sum" rule will allow such branching (as the identity map) between types B/D, and within type C (only).
This patch correctly implements useful mathematics.
-- Brant Jones
