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

Rigorously computing analytic ranks of elliptic curves (for ranks < 4) #19145

Open
sagetrac-mkovesi mannequin opened this issue Sep 5, 2015 · 18 comments
Open

Rigorously computing analytic ranks of elliptic curves (for ranks < 4) #19145

sagetrac-mkovesi mannequin opened this issue Sep 5, 2015 · 18 comments

Comments

@sagetrac-mkovesi
Copy link
Mannequin

sagetrac-mkovesi mannequin commented Sep 5, 2015

This is an improvement to the analytic_rank() function in the Elliptic curves over the rational numbers class. The current implementation only produces a value that is probably the analytic rank. This ticket is based on error bound computations to give a provable value of analytic rank. The computations were derived in my MSc thesis, "Proving the weak BSD conjecture for elliptic curves in the Cremona Database".

CC: @pjbruin @JohnCremona

Component: elliptic curves

Keywords: elliptic curves analytic rank sd69

Author: Michelle Kovesi

Branch/Commit: u/cremona/19145 @ ef01fdb

Issue created by migration from https://trac.sagemath.org/ticket/19145

@sagetrac-mkovesi sagetrac-mkovesi mannequin added this to the sage-6.9 milestone Sep 5, 2015
@sagetrac-mkovesi

This comment has been minimized.

@sagetrac-mkovesi sagetrac-mkovesi mannequin changed the title Rigorously computing analytic ranks of elliptic curves (for ranks 1, 2, 3) Rigorously computing analytic ranks of elliptic curves (for ranks < 4) Sep 8, 2015
@sagetrac-mkovesi
Copy link
Mannequin Author

sagetrac-mkovesi mannequin commented Sep 9, 2015

@sagetrac-mkovesi
Copy link
Mannequin Author

sagetrac-mkovesi mannequin commented Sep 9, 2015

@sagetrac-mkovesi
Copy link
Mannequin Author

sagetrac-mkovesi mannequin commented Sep 9, 2015

Branch: u/mkovesi/19145

@sagetrac-mkovesi
Copy link
Mannequin Author

sagetrac-mkovesi mannequin commented Sep 9, 2015

New commits:

b18ef23Added provable functionality to analytic rank computation.

@sagetrac-mkovesi
Copy link
Mannequin Author

sagetrac-mkovesi mannequin commented Sep 9, 2015

Commit: b18ef23

@sagetrac-mkovesi

This comment has been minimized.

@sagetrac-tmonteil
Copy link
Mannequin

sagetrac-tmonteil mannequin commented Apr 20, 2017

comment:8

Does this ticket needs review ? I am not volunteering, just point that nobody will look at it unless its status is set to needs_review.

@JohnCremona
Copy link
Member

comment:10

I am merging with develop (9.3.beta3) -- there were some merge conflicts, but easily fixed. Then I'll upload the new merged branch and set to needs review.

I noticed that the old 'pari' code for analytic rank manages to call ellanalyticrank twice which should be fixed whether or not we keep this. But I hope it will be judged as correct, since I use the analytic rank function a lot.

I suspect that that the author has disappeared as this is the work of a 5-year old MSc thesis.

@JohnCremona
Copy link
Member

Changed branch from u/mkovesi/19145 to u/cremona/19145

@JohnCremona
Copy link
Member

comment:11

I pushed a branch u/cremona/19145 which just merges develop into u/mkovesi/19145.


New commits:

26f694dCRLF issue
539410dMerge branch 'develop' into 19145

@JohnCremona
Copy link
Member

Changed commit from b18ef23 to 539410d

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Feb 12, 2021

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

ef01fdbMerge branch 'develop' into 19145

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Feb 12, 2021

Changed commit from 539410d to ef01fdb

@fchapoton
Copy link
Contributor

comment:13

some python2 print are lurking ==> needs work

@chriswuthrich
Copy link
Contributor

comment:14

A few comments:

The while loops in the last few functions can be simplified.

Why is k>15000 an indication that something is wrong? Doesn't k increase as sqrt{N} and so we expect it that large when the conductor is in the millions.

I guess we are certain that precision loss in the sum is never larger than epsilon, are we?

The sums can be made a bit faster by using Horner's scheme; especially in _G2 etc. Though I would guess that these sums are already implemented in pari. Probably much faster.

@mezzarobba
Copy link
Member

comment:15

Maybe a stupid question because I don't know anything about the context, sorry, but just in case: Your code is using floating-point arithmetic in several places. Is it clear that the computation is rigorous in spite of possible rounding errors? (If not, you may want to consider working in RBF instead of RR.)

@mkoeppe
Copy link
Member

mkoeppe commented Jul 19, 2021

comment:16

Setting a new milestone for this ticket based on a cursory review.

@mkoeppe mkoeppe modified the milestones: sage-9.4, sage-9.5 Jul 19, 2021
@mkoeppe mkoeppe modified the milestones: sage-9.5, sage-9.6 Dec 18, 2021
@mkoeppe mkoeppe modified the milestones: sage-9.6, sage-9.7 Apr 7, 2022
@mkoeppe mkoeppe modified the milestones: sage-9.7, sage-9.8 Sep 19, 2022
@mkoeppe mkoeppe removed this from the sage-9.8 milestone Jan 29, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants