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

Various improvements to Weyl character rings #35186

Merged

Conversation

tscrim
Copy link
Collaborator

@tscrim tscrim commented Feb 24, 2023

📚 Description

We provide a number of improvements to the Weyl character ring:

  1. We make it know that it is commutative (along with its ambient ring).
  2. We speedup the _demazure_helper method by only doing operations based upon the support of the simple roots.
    sage: F = FusionRing(['B',10], 2, base_ring=QQ)
    sage: dd = {(1,0,0,1,0,0,0,0,0,0): 1}
    sage: %time X = F._demazure_helper(dd)
    CPU times: user 3.1 s, sys: 12 ms, total: 3.11 s
    Wall time: 3.11 s
    
    Previously took ~6s.
  3. We don't set the FusionRing as a subobject of the WeightRing.

📝 Checklist

  • I have made sure that the title is self-explanatory and the description concisely explains the PR.
  • I have linked an issue or discussion.
  • I have created tests covering the changes.
  • I have updated the documentation accordingly.

⌛ Dependencies

@tscrim
Copy link
Collaborator Author

tscrim commented Feb 24, 2023

@dwbump @willieab Here are some improvements to the WCR which also improves the fusion rings.

@github-actions
Copy link

Documentation preview for this PR is ready! 🎉
Built with commit: d008a9c

@dwbump
Copy link
Contributor

dwbump commented Feb 26, 2023

I built the commit and verified the speedup, which is pretty good if the rank is moderately large. The Demazure character formula is used to compute characters, which also underly the calculations of tensor products. The exception is that for reductive groups that are not semisimple such as GL(r), the Demazure character formula is not used, in lieu of the Freudenthal multiplicity formula. Because of this here is no speedup for WeylCharacterRings in Type A unless you make the WeylCharacterRing with style="coroots" but this is the default for FusionRings.

Nothing in the patch would require doctest revisions. I can recommend a positive review.

@tscrim
Copy link
Collaborator Author

tscrim commented Feb 27, 2023

Someone with sufficient powers (e.g., @mkoeppe @dimpase) needs to approve the PR request (and also upgrade @dwbump to the triage team since he is a long-term contributor).

Copy link
Member

@dimpase dimpase left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

as requested by @tscrim

@dimpase
Copy link
Member

dimpase commented Feb 27, 2023

@dwbump is a member of triage team

@tscrim
Copy link
Collaborator Author

tscrim commented Feb 28, 2023

Thank you @dimpase!

@vbraun vbraun merged commit 88a9ab8 into sagemath:develop Mar 26, 2023
@mkoeppe mkoeppe added this to the sage-10.0 milestone Mar 26, 2023
@tscrim tscrim deleted the algebras/improvements_weyl_char_ring branch April 28, 2023 05:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants