#14472: some elliptic curve functions over number fields fail over relative 
fields
--------------------------------------------------------+-------------------
       Reporter:  cremona                               |         Owner:  
cremona  
           Type:  defect                                |        Status:  new   
   
       Priority:  major                                 |     Milestone:  
sage-5.10
      Component:  elliptic curves                       |    Resolution:        
   
       Keywords:  elliptic curve relative number field  |   Work issues:        
   
Report Upstream:  N/A                                   |     Reviewers:        
   
        Authors:                                        |     Merged in:        
   
   Dependencies:                                        |      Stopgaps:        
   
--------------------------------------------------------+-------------------

Comment (by cremona):

 Replying to [comment:1 cremona]:
 > Note: after changing ZK.degree() to ZK.absolute_degree() on line 651 of
 {{{ell_numberfield.py}}} it still fails, since the code in lines 656--658
 (which I wrote, I think) does not work for relative number fields.  The
 purpose of these lines is to set r,s,t to "least residues" modulo 2,3,2 of
 three successive quantities.

 Follow-up:  the old code for _reduce_model() was flawed, as follows:   to
 reduce a1,a2,a3 modulo 2,3,2 respectively, it attempted to reduce their
 coordinates as given by list(a1), etc.  Firstly this fails for relative
 extensions, but it is also misguided since there is no reason why the
 list() coordinates should be integral.  I have changed this to work with
 the coordinates with respect to an integral basis, which is good for
 relative extensions.  Only one small problem:  the doctest on line 860
 which used to return (as a minimal model over Q(a) where a=sqrt(5))
 {{{
 (0, 1, 0, a - 33, -2*a + 64)
 }}}
 but now  gives
 {{{
 (0, -3/2*a - 1/2, 0, 3/2*a - 59/2, 27/2*a + 155/2)
 }}}
 which does not look so nice.  Note that the integral basis here is [1/2*a
 + 1/2, a] and that with respect to this basis 1 has coordinates (2,-1)
 while -3/2*a - 1/2 has coordinates (-1,-1) so (counterintuitively) 1 is
 not reduced mod 2 but -(3a+1)/2 is!

 Note that the integral basis computed does depend on the polynomial used
 to generate the field:
 {{{
 sage: QuadraticField(5,'a').ring_of_integers().gens()
 [1/2*a + 1/2, a]
 sage: NumberField(x^2-x-1,'a').ring_of_integers().gens()
 [1, a]
 }}}

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/14472#comment:2>
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?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to