-
-
Notifications
You must be signed in to change notification settings - Fork 656
Construct the composition series of Garsia-Procesi modules #37871
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
Construct the composition series of Garsia-Procesi modules #37871
Conversation
c9f4d53
to
671994d
Compare
Documentation preview for this PR (built with commit 34418b5; changes) is ready! 🎉 |
""" | ||
G = self._semigroup | ||
B = self.basis() | ||
chi = [sum((g * B[k])[k] for k in B.keys()) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
perhaps
chi = [sum((g * B[k])[k] for k in B.keys()) | |
chi = [sum((g * b)[k] for k, b in B.items()) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I prefer the explicitness here, and I would like to keep it the way it is.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ok
d7fd435
to
361a36b
Compare
I've made all the other changes. |
Test failures. Looks like the rename |
Indeed, I missed one. Fixed. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
sagemathgh-37871: Construct the composition series of Garsia-Procesi modules <!-- ^ Please provide a concise and informative title. --> <!-- ^ Don't put issue numbers in the title, do this in the PR description below. --> <!-- ^ For example, instead of "Fixes sagemath#12345" use "Introduce new method to calculate 1 + 2". --> <!-- v Describe your changes below in detail. --> <!-- v Why is this change required? What problem does it solve? --> <!-- v If this PR resolves an open issue, please link to it here. For example, "Fixes sagemath#12345". --> We provide an implementation of Garsia-Procesi modules, which are an important class of representations of the symmetric group that comes from the cohomology of the Springer fiber. This provides an implementation as a representation on a quotient ring. This also does the following as part of getting the code to work (and a few related changes): - Implement the meataxe algorithm over finite fields to compute the composition series. - Move the (Brauer) character and other methods from symmetric group representation to the general representation class. - Made the abstract representation class work more generically and streamlined the implementation. - Expose the `Representation` class as part of the semigroup (algebras) API. ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> - [x] The title is concise and informative. - [x] The description explains in detail what this PR is about. - [x] I have linked a relevant issue or discussion. - [x] I have created tests covering the changes. - [x] I have updated the documentation and checked the documentation preview. ### ⌛ Dependencies <!-- List all open PRs that this PR logically depends on. For example, --> <!-- - sagemath#12345: short description why this is a dependency --> <!-- - sagemath#34567: ... --> URL: sagemath#37871 Reported by: Travis Scrimshaw Reviewer(s): Matthias Köppe, Travis Scrimshaw
Thank you. |
sagemathgh-37830: Implement the Schur functors applied to semigroup representations <!-- ^ Please provide a concise and informative title. --> <!-- ^ Don't put issue numbers in the title, do this in the PR description below. --> <!-- ^ For example, instead of "Fixes sagemath#12345" use "Introduce new method to calculate 1 + 2". --> <!-- v Describe your changes below in detail. --> <!-- v Why is this change required? What problem does it solve? --> <!-- v If this PR resolves an open issue, please link to it here. For example, "Fixes sagemath#12345". --> The Schur functor is an important part of the representation theory of $GL_n$, but it can be defined generically for any representation of a semigroup (well, really for any vector space, but the utility is for representation theory). We provide an implementation, realizing the natural representation structure. To help with examples, we also implement the natural representation of any matrix (semi)group. Along the way, we clean up some stuff with the sign representations. ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> - [x] The title is concise and informative. - [x] The description explains in detail what this PR is about. - [x] I have linked a relevant issue or discussion. - [x] I have created tests covering the changes. - [x] I have updated the documentation and checked the documentation preview. ### ⌛ Dependencies <!-- List all open PRs that this PR logically depends on. For example, --> <!-- - sagemath#12345: short description why this is a dependency --> <!-- - sagemath#34567: ... --> - sagemath#37871 - Uses the `Subrepresentation` class implemented here. URL: sagemath#37830 Reported by: Travis Scrimshaw Reviewer(s): Matthias Köppe
sagemathgh-37830: Implement the Schur functors applied to semigroup representations <!-- ^ Please provide a concise and informative title. --> <!-- ^ Don't put issue numbers in the title, do this in the PR description below. --> <!-- ^ For example, instead of "Fixes sagemath#12345" use "Introduce new method to calculate 1 + 2". --> <!-- v Describe your changes below in detail. --> <!-- v Why is this change required? What problem does it solve? --> <!-- v If this PR resolves an open issue, please link to it here. For example, "Fixes sagemath#12345". --> The Schur functor is an important part of the representation theory of $GL_n$, but it can be defined generically for any representation of a semigroup (well, really for any vector space, but the utility is for representation theory). We provide an implementation, realizing the natural representation structure. To help with examples, we also implement the natural representation of any matrix (semi)group. Along the way, we clean up some stuff with the sign representations. ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> - [x] The title is concise and informative. - [x] The description explains in detail what this PR is about. - [x] I have linked a relevant issue or discussion. - [x] I have created tests covering the changes. - [x] I have updated the documentation and checked the documentation preview. ### ⌛ Dependencies <!-- List all open PRs that this PR logically depends on. For example, --> <!-- - sagemath#12345: short description why this is a dependency --> <!-- - sagemath#34567: ... --> - sagemath#37871 - Uses the `Subrepresentation` class implemented here. URL: sagemath#37830 Reported by: Travis Scrimshaw Reviewer(s): Matthias Köppe
sagemathgh-37830: Implement the Schur functors applied to semigroup representations <!-- ^ Please provide a concise and informative title. --> <!-- ^ Don't put issue numbers in the title, do this in the PR description below. --> <!-- ^ For example, instead of "Fixes sagemath#12345" use "Introduce new method to calculate 1 + 2". --> <!-- v Describe your changes below in detail. --> <!-- v Why is this change required? What problem does it solve? --> <!-- v If this PR resolves an open issue, please link to it here. For example, "Fixes sagemath#12345". --> The Schur functor is an important part of the representation theory of $GL_n$, but it can be defined generically for any representation of a semigroup (well, really for any vector space, but the utility is for representation theory). We provide an implementation, realizing the natural representation structure. To help with examples, we also implement the natural representation of any matrix (semi)group. Along the way, we clean up some stuff with the sign representations. ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> - [x] The title is concise and informative. - [x] The description explains in detail what this PR is about. - [x] I have linked a relevant issue or discussion. - [x] I have created tests covering the changes. - [x] I have updated the documentation and checked the documentation preview. ### ⌛ Dependencies <!-- List all open PRs that this PR logically depends on. For example, --> <!-- - sagemath#12345: short description why this is a dependency --> <!-- - sagemath#34567: ... --> - sagemath#37871 - Uses the `Subrepresentation` class implemented here. URL: sagemath#37830 Reported by: Travis Scrimshaw Reviewer(s): Matthias Köppe
We provide an implementation of Garsia-Procesi modules, which are an important class of representations of the symmetric group that comes from the cohomology of the Springer fiber. This provides an implementation as a representation on a quotient ring. This also does the following as part of getting the code to work (and a few related changes):
Representation
class as part of the semigroup (algebras) API.📝 Checklist
⌛ Dependencies