Ask Your Question

Generating only the ranks of elliptic curves that can be found provably correctly

asked 2012-12-06 16:06:33 -0500

anonymous user


Hello! I am trying to compute the rank for a large number of elliptic curves. I know that this is not always doable in a provably correct manner, so I would like to write up a piece of code that will go through my list of elliptic curves, calculate the rank provably correctly if possible, and skip those elliptic curves for which the rank cannot be computed provably correctly. Is there a simple way to do this? Thanks!

edit retag flag offensive close merge delete

1 answer

Sort by ยป oldest newest most voted

answered 2013-12-09 22:41:06 -0500

John Cremona gravatar image

I assume that you mean elliptic curves over Q.

I would do two or three things. First, wrap your call to E.rank() in a try/except block to catch cases where an error is raised. Second, create an E.mwrank_curve() object, which you can ask its rank and ask whether the reault os proved correct (thish is delivered by mwrank):

sage: E = EllipticCurve([0,0,1,-7,6]) sage: Em = E.mwrank_curve() sage: Em.rank() 3 sage: Em.certain() True

sage: E = EllipticCurve([0, -1, 1, -929, -10595]) sage: Em = E.mwrank_curve() sage: Em.rank() 0 sage: Em.certain() False

In the second example, the rank really is 0 but E has Sha of order 4 and mwrank is not able to tell the difference.

I hope this helps.

edit flag offensive delete link more

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower


Asked: 2012-12-06 16:06:33 -0500

Seen: 166 times

Last updated: Dec 09 '13