Ask Your Question

# Revision history [back]

### simon_two_descent error

Hi. I'm having some difficulty with simon_two_descent, which is used to give bounds on the rank of elliptic curves. I'm running Sage 5.0 on Ubuntu 11.04 64bit. In Sage 4.7.2 I get a different error trying to do the same thing, for which I can provide details if needed.

My objective is to compute the rank of an EllipticCurve over a specific number field. I am quite new to Sage so I am likely doing something wrong. Can someone please tell me how to fix this problem? Thank you. My code is as follows:

----------------------------------------------------------------------
| Sage Version 5.0, Release Date: 2012-05-14                         |
| Type notebook() for the GUI, and license() for information.        |
----------------------------------------------------------------------
sage: S = CyclotomicField(43).subfields(3)
sage: poly = S.polynomial()
sage: K = NumberField(poly, 'a')
sage: E = EllipticCurve(K, '37')
sage: E
Elliptic Curve defined by y^2 + y = x^3 + (-1)*x over Number Field in a with defining polynomial x^3 + x^2 - 14*x + 8
sage: G = E.simon_two_descent()
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)

/home/blatm/sage/sage-5.0-linux-64bit-ubuntu_10.04.3_lts-x86_64-Linux/<ipython console> in <module>()

/home/blatm/sage/sage-5.0-linux-64bit-ubuntu_10.04.3_lts-x86_64-Linux/local/lib/python2.7/site-packages/sage/schemes/elliptic_curves/ell_number_field.pyc in simon_two_descent(self, verbose, lim1, lim3, limtriv, maxprob, limbigprime)
281                               verbose=verbose, lim1=lim1, lim3=lim3, limtriv=limtriv,
282                               maxprob=maxprob, limbigprime=limbigprime)
--> 283         prob_rank = Integer(t)
284         two_selmer_rank = Integer(t)
285         prob_gens = [self(P) for P in t]

/home/blatm/sage/sage-5.0-linux-64bit-ubuntu_10.04.3_lts-x86_64-Linux/local/lib/python2.7/site-packages/sage/rings/integer.so in sage.rings.integer.Integer.__init__ (sage/rings/integer.c:6865)()

TypeError: unable to convert x (=f) to an integer
sage: