Opened 4 years ago

Last modified 3 years ago

#18398 needs_work enhancement

Automate Branching Rules for IntegrableRepresentations

Reported by: bump Owned by:
Priority: major Milestone: sage-6.10
Component: combinatorics Keywords:
Cc: sage-combinat Merged in:
Authors: Daniel Bump Reviewers:
Report Upstream: N/A Work issues:
Branch: public/combinat/branching-15398 (Commits) Commit: 1706a8dea96a178e09b817fc793bf881dfa889b8
Dependencies: #18767 Stopgaps:

Description

Currently branching rules for IntegrableRepresentations? of untwisted affine Lie algebras are implemented. But the process requires the user to create a dictionary between the nodes of two Dynkin diagrams, a process that can be automated.

Change History (9)

comment:1 Changed 4 years ago by bump

  • Branch set to public/combinat/branching-15398
  • Commit set to 3779d1a904ebebdf453cf2f6e20a2c75b0e9407a

New commits:

3779d1aget_branching_rule method

comment:2 Changed 4 years ago by git

  • Commit changed from 3779d1a904ebebdf453cf2f6e20a2c75b0e9407a to 186389c95a92b6430c19647a9842e2e025512cc4

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

186389cautomated branching rules now working

comment:3 Changed 4 years ago by bump

  • Cc sage-combinat added
  • Status changed from new to needs_review
  • Type changed from PLEASE CHANGE to enhancement

comment:4 Changed 4 years ago by git

  • Commit changed from 186389c95a92b6430c19647a9842e2e025512cc4 to 1ee0267f7bf4a926a3f6e0295a08be464e2e529f

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

1ee0267doc revision

comment:5 Changed 4 years ago by tscrim

I think it would be better if we implement a method on the various CartanType classes which does the respective branching rules. In #15463, I go part of the way there by implementing a subtype method, but I think we should take that idea and expand on it here, and then use subtype to do the branching rule here. Does this sound like a good approach or do you need something more direct here (FYI - I haven't looked too closely at this patch yet)?

comment:6 Changed 4 years ago by bump

  • Work issues set to #18767 should be merged first since it is more important

This patch contains a lot of case-by-case encoding of work that can also be done by hand by the user when the user needs the branching rules (explained in the reference manual). It saves the reader having to line up the Dynkin diagrams.

So although it is convenient not to have to do this, the reader who needs a branching rule can do so without this patch. This patch is therefore less important than #18767 which adds real new functionality. After #18767 this patch should be generalized to include the twisted types. So I think it is better if #18767 (which adds real new functionality) is merged first. After that, this patch should be extended to include the twisted cases.

In #15463, I go part of the way there by implementing a subtype method, but I think we should take that idea and expand on it here, and then use subtype to do the branching rule here.

Following a suggestion of Volker Braun, branching rules for finite dimensional Lie algebras were implemented in the categorical framework in the Weyl character ring.

sage: R1=branching_rule("E7","A7","extended")
sage: type(R1)
<class 'sage.combinat.root_system.branching_rules.BranchingRule'>
sage: R2=branching_rule("A7","A3xA3","levi")
sage: R1*R2
composite branching rule E7 => (extended) A7 => (levi) A3xA3

One could try to extend this to the affine case but here we are only dealing with Levi branching rules. (The Levi subalgebras are finite-dimensional.) This is less ambitious but still useful.

Last edited 4 years ago by bump (previous) (diff)

comment:7 Changed 4 years ago by tscrim

  • Dependencies set to #18767
  • Milestone changed from sage-6.7 to sage-6.10
  • Work issues #18767 should be merged first since it is more important deleted

We could probably benefit from using the subtype method in #17798 (and could potentially need improvements) so it requires less hard-coded branching rules.

comment:8 Changed 3 years ago by cheuberg

  • Status changed from needs_review to needs_work

multiple doctests fail, cf. patchbot

comment:9 Changed 3 years ago by git

  • Commit changed from 1ee0267f7bf4a926a3f6e0295a08be464e2e529f to 1706a8dea96a178e09b817fc793bf881dfa889b8

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

79963f8Merge branch 'public/combinat/branching-15398' in 7.6.b6
1706a8dtrac 18398 python3 print
Note: See TracTickets for help on using tickets.