How do you compute the conductor of an elliptic curve (over
) in Sage?
Once you define an elliptic curve 
 in Sage, using the
EllipticCurve command, the conductor is one of several “methods”
associated to 
. Here is an example of the syntax
(borrowed from section 2.4 “Modular forms” in the tutorial):
sage: E = EllipticCurve([1,2,3,4,5])
sage: E
Elliptic Curve defined by y^2 + x*y + 3*y = x^3 + 2*x^2 + 4*x + 5 over
Rational Field
sage: E.conductor()
10351
-invariant¶How do you compute the 
-invariant of an elliptic curve
in Sage?
Other methods associated to the EllipticCurve class are j_invariant, discriminant, and weierstrass_model. Here is an example of their syntax.
sage: E = EllipticCurve([0, -1, 1, -10, -20])
sage: E
Elliptic Curve defined by y^2 + y = x^3 - x^2 - 10*x - 20 over Rational Field
sage: E.j_invariant()
-122023936/161051
sage: E.short_weierstrass_model()
Elliptic Curve defined by y^2  = x^3 - 13392*x - 1080432 over Rational Field
sage: E.discriminant()
-161051
sage: E = EllipticCurve(GF(5),[0, -1, 1, -10, -20])
sage: E.short_weierstrass_model()
Elliptic Curve defined by y^2  = x^3 + 3*x + 3 over Finite Field of size 5
sage: E.j_invariant()
4
-rational points on E¶How do you compute the number of points of an elliptic curve over a finite field?
Given an elliptic curve defined over 
, Sage
can compute its set of 
-rational points
sage: E = EllipticCurve(GF(5),[0, -1, 1, -10, -20])
sage: E
Elliptic Curve defined by y^2 + y = x^3 + 4*x^2 over Finite Field of size 5
sage: E.points()
[(0 : 0 : 1), (0 : 1 : 0), (0 : 4 : 1), (1 : 0 : 1), (1 : 4 : 1)]
sage: E.cardinality()
5
sage: G = E.abelian_group()
sage: G              # random choice of generator
(Multiplicative Abelian Group isomorphic to C5, ((1 : 0 : 1),))
sage: G[0].permutation_group()
Permutation Group with generators [(1,2,3,4,5)]
¶Let 
 be a “nice” elliptic curve whose equation has
integer coefficients, let 
 be the conductor of
 and, for each 
, let 
 be the
number appearing in the Hasse-Weil 
-function of
. The Taniyama-Shimura conjecture (proven by Wiles)
states that there exists a modular form of weight two and level
 which is an eigenform under the Hecke operators and has
a Fourier series 
. Sage can
compute the sequence 
 associated to 
. Here
is an example.
sage: E = EllipticCurve([0, -1, 1, -10, -20])
sage: E
Elliptic Curve defined by y^2 + y = x^3 - x^2 - 10*x - 20 over Rational Field
sage: E.conductor()
11
sage: E.anlist(20)
[0, 1, -2, -1, 2, 1, 2, -2, 0, -2, -2, 1, -2, 4, 4, -1, -4, -2, 4, 0, 2]
sage: E.analytic_rank()
0