#15218: incorrect degree of ring class fields
-----------------------------+-----------------------------
   Reporter:  mstreng        |            Owner:
       Type:  defect         |           Status:  new
   Priority:  major          |        Milestone:  sage-5.12
  Component:  number fields  |         Keywords:
  Merged in:                 |          Authors:
  Reviewers:                 |  Report Upstream:  N/A
Work issues:                 |           Branch:
     Commit:                 |     Dependencies:
   Stopgaps:                 |
-----------------------------+-----------------------------
 The degree function returns incorrect answers for ring class fields over
 QQ(zeta_3) and QQ(i).

 See also [https://groups.google.com/forum/#!topic/sage-nt/FncDnGsdSVI The
 second part of this thread on sage-nt, the part with title "Computing ring
 class fields"].

 {{{
 E=EllipticCurve("19a");
 s =
 E.heegner_point(-3,2).ring_class_field().galois_group().complex_conjugation()
 H=s.domain(); H.absolute_degree()
 6
 }}}
 The output should be 2, since ZZ[sqrt(-3)] has trivial picard group.

 The problem is that there is a bug in the degree function for these ring
 class fields. The fields themselves seem to be correct.

 In the method degree_over_H of the RingClassField class in
 sage/schemes/elliptic_curves/heegner.py, the degree is calculated using
 the following formula:

 {{{
         # Let K_c be the ring class field.  We have by class field theory
 that
         #           Gal(K_c / H) = (O_K/c*O_K)^* / (Z/cZ)^*.
 }}}

 However, one should also divide out by units in `O_K^*` other than {+/-
 1}. This explains the factor 3 that the degree function is off for
 K=QQ(sqrt(-3)). This is also exactly the difference between equation
 (7.27) of Cox's book (Primes of the form ...) and exercise 7.30 of the
 same book.

--
Ticket URL: <http://trac.sagemath.org/ticket/15218>
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