#10076: Bug in is_divisible_by on elliptic curves
-------------------------------+--------------------------------------------
   Reporter:  cremona          |       Owner:  cremona               
       Type:  defect           |      Status:  needs_review          
   Priority:  major            |   Milestone:  sage-4.6              
  Component:  elliptic curves  |    Keywords:  torsion point division
     Author:  John Cremona     |    Upstream:  N/A                   
   Reviewer:                   |      Merged:                        
Work_issues:                   |  
-------------------------------+--------------------------------------------
Changes (by newvalueoldvalue):

  * status:  new => needs_review
  * author:  => John Cremona


Old description:

> James Parson writes on sage-support:
> {{{
> I was playing with some elliptic-curves calculations in Sage 4.5.3,
> and I came across (or, rather, cooked up) the following, which puzzled
> me:
> sage: K = QuadraticField(8,'a')
> sage: E = EllipticCurve([K(0),0,0,-1,0])
> sage: P = E([-1,0])
> sage: P.division_points(2)
> []
> sage: P.is_divisible_by(2)
> True
> Is this the intended behavior? From the source code, it looks as if
> P.is_divisible_by(2) just checks whether the x-coordinate of the
> system of equations for dividing P by 2 can be solved over K. The
> division_points method does the full check of whether the system has a
> solution over K. Shouldn't is_divisible_by do the same thing?
> }}}
> to which John Cremona replied
> {{{
> It is a bug -- well spotted.  In this case the x-coordinates of the
> points Q such that 2*Q=P are the roots of x^2 + 2*x - 1 which are a/
> 2-1 and -a/2-1, but the y-coordinates are not in the field.
> }}}
>
> Patch coming up.

New description:

 James Parson writes on sage-support:
 {{{
 I was playing with some elliptic-curves calculations in Sage 4.5.3,
 and I came across (or, rather, cooked up) the following, which puzzled
 me:
 sage: K = QuadraticField(8,'a')
 sage: E = EllipticCurve([K(0),0,0,-1,0])
 sage: P = E([-1,0])
 sage: P.division_points(2)
 []
 sage: P.is_divisible_by(2)
 True
 Is this the intended behavior? From the source code, it looks as if
 P.is_divisible_by(2) just checks whether the x-coordinate of the
 system of equations for dividing P by 2 can be solved over K. The
 division_points method does the full check of whether the system has a
 solution over K. Shouldn't is_divisible_by do the same thing?
 }}}
 to which John Cremona replied
 {{{
 It is a bug -- well spotted.  In this case the x-coordinates of the
 points Q such that 2*Q=P are the roots of x^2 + 2*x - 1 which are a/
 2-1 and -a/2-1, but the y-coordinates are not in the field.
 }}}

--

Comment:

 Patch up, ready for review.

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/10076#comment:1>
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 post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to