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