#4990: [with patch, with positive review] Add code to compute Hilbert class
polynomials
---------------------------+------------------------------------------------
 Reporter:  mabshoff       |       Owner:  AlexGhitza              
     Type:  enhancement    |      Status:  assigned                
 Priority:  major          |   Milestone:  sage-3.4.1              
Component:  number theory  |    Keywords:  hilbert class polynomial
---------------------------+------------------------------------------------

Comment(by ncalexan):

 Looks good to me.  I tested it with the following script, and found a lot
 of curves with the correct endomorphism rings :)

 {{{
 K.<a> = QuadraticField(-34)
 f = K.hilbert_class_polynomial()
 assert K.class_number() == f.degree()

 for P in K.primes_of_degree_one_list(20):
     p = P.norm()
     k = GF(p)
     rts = f.roots(k, multiplicities=False)
     for jj in rts:
         assert P.is_principal()
         E = EllipticCurve(jj)
         print E
         assert E.frobenius_order().number_field().is_isomorphic(K)
     if not rts:
         print "XXX", p
         assert not P.is_principal()
 }}}

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/4990#comment:8>
Sage <http://sagemath.org/>
Sage - Open Source Mathematical Software: Building the Car Instead of 
Reinventing the Wheel

--~--~---------~--~----~------------~-------~--~----~
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