#15340: Bug in chord_and_tangent
-------------------------------+-----------------------------
   Reporter:  vbraun           |            Owner:
       Type:  defect           |           Status:  new
   Priority:  major            |        Milestone:  sage-5.13
  Component:  elliptic curves  |         Keywords:
  Merged in:                   |          Authors:
  Reviewers:                   |  Report Upstream:  N/A
Work issues:                   |           Branch:
     Commit:                   |     Dependencies:
   Stopgaps:                   |
-------------------------------+-----------------------------
 The `chord_and_tangent` method fails to treat one special case: the
 `t`-family of points
 {{{
 (dy*t+P[0], (-dx-dz)*t+P[1], dy*t+P[2])
 }}}
 might fail to parametrize a line if `(dy,-dx-dz,dy)` is projectively
 equivalent to P. One needs to try two independent normal directions...

 This leads to the following failure (reported by Pierre Vanhove):
 {{{
 sage: R.<x,y,z> = QQ[]
 sage: cubic = x^2*y + 4*x*y^2 + x^2*z + 8*x*y*z + 4*y^2*z + 9*x*z^2 +
 9*y*z^2
 sage: EllipticCurve_from_cubic(cubic, [1,-1,1], morphism=False)
 ---------------------------------------------------------------------------
 ValueError                                Traceback (most recent call
 last)
 <ipython-input-3-67b6e7c68a76> in <module>()
 ----> 1 EllipticCurve_from_cubic(cubic,
 [Integer(1),-Integer(1),Integer(1)], morphism=False)

 /home/vbraun/Code/sage.git/local/lib/python2.7/site-
 packages/sage/schemes/elliptic_curves/constructor.pyc in
 EllipticCurve_from_cubic(F, P, morphism)
     774         X, Y, Z = S.gen(0), S.gen(1), S(-1/b)*S.gen(2)
     775         F4 = F3(X, Y, Z)
 --> 776         E = EllipticCurve(F4.subs(z=1))
     777         if not morphism:
     778             return E

 /home/vbraun/Code/sage.git/local/lib/python2.7/site-
 packages/sage/schemes/elliptic_curves/constructor.pyc in EllipticCurve(x,
 y, j, minimal_twist)
     313     if is_MPolynomial(x):
     314         if y is None:
 --> 315             return EllipticCurve_from_Weierstrass_polynomial(x)
     316         else:
     317             return EllipticCurve_from_cubic(x, y, morphism=False)

 /home/vbraun/Code/sage.git/local/lib/python2.7/site-
 packages/sage/schemes/elliptic_curves/constructor.pyc in
 EllipticCurve_from_Weierstrass_polynomial(f)
     433             a3 = -coeff
     434         else:
 --> 435             raise ValueError('polynomial is not in long
 Weierstrass form')
     436
     437     if x3 != y2:

 ValueError: polynomial is not in long Weierstrass form
 }}}

--
Ticket URL: <http://trac.sagemath.org/ticket/15340>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to