Opened 10 years ago
Closed 9 years ago
#13593 closed enhancement (fixed)
tighter upper bound on elliptic curve rank
Reported by:  ohanar  Owned by:  cremona 

Priority:  major  Milestone:  sage6.1 
Component:  elliptic curves  Keywords:  
Cc:  aly.deines  Merged in:  
Authors:  R. Andrew Ohana, Chris Wuthrich  Reviewers:  John Cremona 
Report Upstream:  N/A  Work issues:  
Branch:  u/wuthrich/ticket/13593 (Commits, GitHub, GitLab)  Commit:  bf7617dbf1778300f421ca0e0305d881a0c8bda2 
Dependencies:  Stopgaps: 
Description (last modified by )
[See #15608 for a list of open simon_two_descent tickets]
The current upper bound in rank_bounds
do not take into account two torsion. This corrects this and thus gives a tighter upper bound.
Attachments (1)
Change History (17)
Changed 10 years ago by
Attachment:  trac13593.patch added 

comment:1 Changed 10 years ago by
Description:  modified (diff) 

Status:  new → needs_review 
comment:2 followup: 3 Changed 10 years ago by
Status:  needs_review → needs_work 

comment:3 Changed 10 years ago by
Replying to ohanar:
need to fix doctests...
Update: well having trouble finding a new example where the bounds disagree  guess this is what I get for trying to improve something :)
I do think that Simon's scripts already take 2torsion into account, even though he returns 2torsion points in the list of gens (which I remember filtering out). Needs checking though.
comment:4 Changed 10 years ago by
If I recall, the upper bound is supposed to be a bound on the rank of the 2Selmer group, which would not take into account 2torsion  unless I'm being totally stupid, which could very well be the case considering how new I am to this stuff :).
comment:5 Changed 9 years ago by
Milestone:  sage5.11 → sage5.12 

comment:6 Changed 9 years ago by
A simple example:
sage: K.<i> = NumberField(x^2+1) sage: E = EllipticCurve([2+3*i,0]) sage: E.simon_two_descent() (0, 1, [(0 : 0 : 1), (0 : 0 : 1)]) sage: E.rank_bounds() (0, 1) sage: Em = magma(E) sage: Em.TwoSelmerGroup() Abelian Group isomorphic to Z/2 ...
Simon's script returns indeed as the second argument the dimension of the 2Selmer group and currently rank_bounds
copies that. So the supposed change here is indeed good. However, we need to add an example in the doctest, too.
Furthermore, I will correct a few other things there, while I am at it.
comment:7 Changed 9 years ago by
Branch:  → u/wuthrich/ticket/13593 

Created:  Oct 11, 2012, 11:28:04 PM → Oct 11, 2012, 11:28:04 PM 
Modified:  Dec 28, 2013, 12:56:43 AM → Dec 28, 2013, 12:56:43 AM 
comment:8 Changed 9 years ago by
Authors:  R. Andrew Ohana → R. Andrew Ohana, Chris Wuthrich 

Commit:  → 9a069c7225480773cd6429e87f10bf5d0d8855e0 
Status:  needs_work → needs_review 
I also corrected the documentation  it was quite bad ! Meaning mathematically incorrect. Hope it is better now.
At some point we will want to filter out generators for E(K)/2E(K)  or even E(K). However, I left for now to return all points that Simon's script finds.
New commits:
9a069c7  Trac #13593: ranks of elliptic curves over number fields

comment:9 Changed 9 years ago by
Description:  modified (diff) 

Priority:  minor → major 
... and then I spotted that the list may contain points of order 2. the second commit filters the torsion points out of the list.
comment:10 Changed 9 years ago by
Commit:  9a069c7225480773cd6429e87f10bf5d0d8855e0 → b1550dc0081c5d6cb971af025108cacf653b5fa8 

Branch pushed to git repo; I updated commit sha1. New commits:
b1550dc  Trac 13593: Do not put torsion points into gens.

comment:13 Changed 9 years ago by
Commit:  b1550dc0081c5d6cb971af025108cacf653b5fa8 → bf7617dbf1778300f421ca0e0305d881a0c8bda2 

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

comment:14 Changed 9 years ago by
Description:  modified (diff) 

comment:15 Changed 9 years ago by
Reviewers:  → John Cremona 

Status:  needs_review → positive_review 
I looked at all three commits and approve of what they do. Test pass  positive review.
comment:16 Changed 9 years ago by
Resolution:  → fixed 

Status:  positive_review → closed 
need to fix doctests...
Update: well having trouble finding a new example where the bounds disagree  guess this is what I get for trying to improve something :)