id,summary,reporter,owner,description,type,status,priority,milestone,component,resolution,keywords,cc,merged,author,reviewer,upstream,work_issues,branch,commit,dependencies,stopgaps
11346,major bug in the conductor function for elliptic curves over number fields,was,cremona,"Joanna Gaski found a serious bug in the function for computing conductors of elliptic curves over number fields, when the input curve is not integral. Witness:
{{{
sage: K. = NumberField(x^2 - x - 1)
sage: E1 = EllipticCurve(K,[0,0,0,-1/48,-161/864]); E1
Elliptic Curve defined by y^2 = x^3 + (-1/48)*x + (-161/864) over Number Field in g with defining polynomial x^2 - x - 1
sage: factor(E1.conductor())
(Fractional ideal (3)) * (Fractional ideal (-2*g + 1))
sage: factor(E1.integral_model().conductor())
(Fractional ideal (2))^4 * (Fractional ideal (3)) * (Fractional ideal (-2*g + 1))
}}}
The bug is actually in the local_data() function, which computes the possible primes of bad reduction by taking the support of the discriminant. However, this is simply wrong if the input curve is not integral.
{{{
sage: E1.discriminant().support()
[Fractional ideal (-2*g + 1), Fractional ideal (3)]
sage: E1.integral_model().discriminant().support()
[Fractional ideal (-2*g + 1), Fractional ideal (2), Fractional ideal (3)]
}}}
The one-line fix is to first compute an integral model, then ask for the discriminant of that model in the local_data function. ",defect,closed,critical,sage-4.7.1,elliptic curves,fixed,,,sage-4.7.1.alpha2,William Stein,Robert Bradshaw,N/A,,,,,