-
Notifications
You must be signed in to change notification settings - Fork 134
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
Implement morphisms of elliptic surfaces given by translations #3630
Implement morphisms of elliptic surfaces given by translations #3630
Conversation
function morphism_from_section( | ||
X::EllipticSurface, P::EllipticCurvePoint; | ||
divisor::AbsWeilDivisor=_section(X, P) | ||
) |
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.
This works now, but returns two maps: The identification IP^1 with the section and the inclusion of the latter.
@afkafkafk13 : There's a lazy type for strict transforms of ideal sheaves here now. Maybe you would like to have a look. |
lat = algebraic_lattice(X) | ||
A = [intersect(a, b) for a in lat, b in lat] | ||
|
||
ll = Oscar._pushforward_lattice_along_isomorphism(trans) | ||
B = [intersect(a, b) for a in ll, b in ll] | ||
@test A == B |
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 added some more expensive tests here. Maybe we should disable them again, but leave them here as comment for later reference.
I just tried to compute the algebraic lattice with this branch and after 12 hours the computation did not complete. It was stuck in the computation of some gluings. |
For the record on master I got |
I can confirm these findings. Interestingly, it did not get stuck on any Groebner basis computation, but on This problem does not occur on the second last commit 54288df and this suggests to me that we are only stepping on a mine which has been there all the time. This unfortunate step is probably taken due to new heuristics implemented with All this is pretty worrying to me since the desingularizations we are considering here should be regarded as rather simple, but yet they can not be fully computed. @afkafkafk13 : Does this seem familiar from your earlier experiences in Singular's desingularization? |
It is. Looking at some intermediate computations with |
Yes, this observation makes a lot of sense to me: the overhead for translation back and forth does not make a large difference for each single instance of non-trivial computations, but working on covered schemes we have a huge amount of these (often smaller) non-trivial computations and this just adds up. |
Here I have two bits of input: |
But if I understand this correctly, this does not save us from such gluing-mines in total, correct? It's just a guessing game to avoid stepping on them. That's rather unsatisfactory in a linear environment where we can not perform "race-to-win" tasks in parallel on different workers. |
Indeed A is just a guessing game. This is the background, why I was so interested to have all this in parallel in the first place. In a non-sequential setting, you are allowed to simply let thoses mines explode on some of the nodes, clean up the debris in due time (after heureka) and then reuse the nodes for new tasks. |
The bibtool tests fail due to external reasons. Let's see whether they get back to normal. |
In conclusion I think that this can be merged once the tests are adjusted and some parts of the comments dealt with. It is a big step forward in performance. Thank you for your work @HechtiDerLachs ! |
About the |
Did you check that the test runs reasonably fast? |
Roughly 12 minutes for the newly added test. Still a bit much, so we might want to leave a comment that this test is a candidate for being disabled? Any suggestions/opinions, @fingolfin ? |
11 Minutes is far too much. I guess we could live with something that takes 2 minutes. |
The good news is that the old tests which were previously too slow now all run in less than a minute. I think we can enable some of them now. |
My suggestion would be to disable the test for now, get it merged and then do the testing in a different PR. |
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #3630 +/- ##
==========================================
- Coverage 82.79% 82.67% -0.13%
==========================================
Files 577 577
Lines 77731 77995 +264
==========================================
+ Hits 64357 64479 +122
- Misses 13374 13516 +142
|
CC: @simonbrandhorst
Sections seem to be nasty. In the example added for the tests I couldn't get all charts to produce the local ideals for 2*P.