Implementing non-monic number fields would be hard, but not if the  
leading coefficient is a unit :)  Could a ticket be opened, mabshoff?

Nick

{{{
sage: NumberField(x^2 - 2, 'a')
Number Field in a with defining polynomial x^2 - 2
sage: NumberField(-x^2 - 2, 'a')
---------------------------------------------------------------------------
NotImplementedError                       Traceback (most recent call  
last)

/Users/ncalexan/Devel/Squeak-3.10-1/platforms/unix/bld/<ipython  
console> in <module>()

/Users/ncalexan/sage-3.0.6/local/lib/python2.5/site-packages/sage/ 
rings/number_field/number_field.py in NumberField(polynomial, name,  
check, names, cache)
     288
     289     if polynomial.degree() == 2:
--> 290         K = NumberField_quadratic(polynomial, name, check)
     291     else:
     292         K = NumberField_absolute(polynomial, name, None, check)

/Users/ncalexan/sage-3.0.6/local/lib/python2.5/site-packages/sage/ 
rings/number_field/number_field.py in __init__(self, polynomial, name,  
check)
    6001             Number Field in a with defining polynomial x^2 - 4
    6002         """
-> 6003         NumberField_absolute.__init__(self, polynomial,  
name=name, check=check)
    6004         self._element_class =  
number_field_element_quadratic.NumberFieldElement_quadratic
    6005         c, b, a = [rational.Rational(t) for t in  
self.defining_polynomial().list()]

/Users/ncalexan/sage-3.0.6/local/lib/python2.5/site-packages/sage/ 
rings/number_field/number_field.py in __init__(self, polynomial, name,  
latex_name, check)
    3272
    3273     def __init__(self, polynomial, name, latex_name=None,  
check=True):
-> 3274         NumberField_generic.__init__(self, polynomial, name,  
latex_name, check)
    3275         self._element_class =  
number_field_element.NumberFieldElement_absolute
    3276

/Users/ncalexan/sage-3.0.6/local/lib/python2.5/site-packages/sage/ 
rings/number_field/number_field.py in __init__(self, polynomial, name,  
latex_name, check)
     668                 raise TypeError, "polynomial must be defined  
over rational field"
     669             if not polynomial.is_monic():
--> 670                 raise NotImplementedError, "number fields for  
non-monic polynomials not yet implemented."
     671             if not polynomial.is_irreducible():
     672                 raise ValueError, "defining polynomial (%s)  
must be irreducible"%polynomial

NotImplementedError: number fields for non-monic polynomials not yet  
implemented.
}}}

--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-devel@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to