Ticket #8411 (closed defect: fixed)

Opened 3 years ago

Last modified 3 years ago

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

trac_8411_branching_rules.patch Download (4.9 KB) - added by bump 3 years ago.
Branching rule fix and revised doc in weyl_characters.py

Change History

comment:1 Changed 3 years ago by bump

  • Status changed from new to needs_review

comment:2 Changed 3 years ago by bump

  • Description modified (diff)

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

Branching rule fix and revised doc in weyl_characters.py

comment:7 Changed 3 years ago by bump

Please also include the ticket number in the patch title!

#8411: Branching rule fix and doc revision

Sorry for the extra bother ...

OK, I changed the patch description to begin #8411.

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

comment:9 Changed 3 years ago by jhpalmieri

  • Status changed from positive_review to closed
  • Resolution set to fixed
  • Merged in set to sage-4.4.alpha2

Merged into 4.4.alpha2.

Note: See TracTickets for help on using tickets.