-
Notifications
You must be signed in to change notification settings - Fork 130
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
Sheaf cohomology improvements #3238
Sheaf cohomology improvements #3238
Conversation
Running the tests in On current master:
With the changes here:
I am sure there is room for further improvements (see e.g. the compilation time!). But the minor things I did here already have a significant effect. |
With the latest changes I am now down to
for The main issue was the following: Whenever a degree of a graded module element or an element of a graded polynomial ring was computed, the computation went on to check that really all terms have the same degree and throw an error message if this was not the case. As far as I understand, this is alright for user facing functions and this behavior is generally desired/accepted in Oscar. But for internal computations one must then provide a fast function which does the same thing on input which can be assumed to be sane! I made a first attempt at providing such functions, but I guess their usage still has to be spread. That's basically the juice of it, besides avoiding the useless creation of various matrices. P.S.: The
with roughly 85% of the time spent on |
Fixing #2999 turns out to be more involved than first estimated. We will eventually keep working on this PR together with @jankoboehm next week. Until then I will make a new PR containing only the minimal changes to make the sheaf cohomology computation run. |
044b6b9
to
b651fa7
Compare
Most of this is probably addressed in other PRs which have been merged already. |
Two minor fixes to speed up the computation of cohomology.
CC: @wdecker