#15340 closed defect (fixed)
Bug in chord_and_tangent
Reported by: | vbraun | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | sage-6.1 |
Component: | elliptic curves | Keywords: | |
Cc: | Niels, cremona, defeo | Merged in: | |
Authors: | Volker Braun | Reviewers: | Luca De Feo |
Report Upstream: | N/A | Work issues: | |
Branch: | u/vbraun/ell_curve_from_cubic_fix (Commits, GitHub, GitLab) | Commit: | 92d3cfb02e58648f8a2f250a0bc1690d0d84920d |
Dependencies: | Stopgaps: |
Description
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
Change History (9)
comment:1 Changed 8 years ago by
- Branch set to u/vbraun/ell_curve_from_cubic_fix
- Commit set to 92d3cfb02e58648f8a2f250a0bc1690d0d84920d
comment:2 Changed 8 years ago by
- Cc Niels cremona added
- Status changed from new to needs_review
comment:3 Changed 8 years ago by
- Cc defeo added
comment:4 Changed 8 years ago by
- Created changed from 10/28/13 19:51:11 to 10/28/13 19:51:11
- Modified changed from 10/29/13 15:00:39 to 10/29/13 15:00:39
- Status changed from needs_review to positive_review
comment:5 Changed 8 years ago by
- Milestone changed from sage-5.13 to sage-6.0
comment:6 Changed 8 years ago by
- Milestone changed from sage-6.0 to sage-6.1
comment:7 Changed 8 years ago by
- Resolution set to fixed
- Status changed from positive_review to closed
comment:8 Changed 8 years ago by
- Reviewers set to Luca De Feo
comment:9 Changed 8 years ago by
- Reviewers changed from Luca De Feo to Luca De Feo
Try to avoid putting U+200b characters in the Reviewer name.
Note: See
TracTickets for help on using
tickets.
New commits: