Carl Witty wrote:
> You need to explicitly use the field of fractions of R:
> 
> sage: R.<a,b> = QQ[]
> sage: S.<x> = R.fraction_field()[]
> sage: xgcd(x^2, a*x+b)
> (b^2/a^2, 1, ((-1)/a)*x + b/a^2)

Thanks. Is it possible to do the same computation over a number field
(instead of QQ)?

For instance:
  R.<a,b> = NumberField(x^2-3,'g')[]
  S.<y> = R.fraction_field()[]
  xgcd(y^2, a*y+b)

returns the error: (more below)
  <type 'exceptions.TypeError'>: unsupported operand type(s) for %: 
'sage.rings.number_field.number_field_element_quadratic.NumberFieldElement_quadratic'
 and 
'sage.rings.number_field.number_field_element_quadratic.NumberFieldElement_quadratic'

Thanks again,
  --Gaetan Bisson


-------- Expanded Error --------

<type 'exceptions.TypeError'>             Traceback (most recent call last)

/usr/local/sage-3.0/sage/devel/sage-main/sage/rings/<ipython console> in 
<module>()

/localdisk/tmp/sage-3.0/local/lib/python2.5/site-packages/sage/rings/arith.py 
in xgcd(a, b)
   1236     """
   1237     try:
-> 1238         return a.xgcd(b)
   1239     except AttributeError:
   1240         pass

/usr/local/sage-3.0/sage/devel/sage-main/sage/rings/element.pyx in 
sage.structure.element.PrincipalIdealDomainElement.xgcd 
(sage/structure/element.c:11868)()

/usr/local/sage-3.0/sage/devel/sage-main/sage/rings/polynomial_element.pyx in 
sage.rings.polynomial.polynomial_element.Polynomial._xgcd 
(sage/rings/polynomial/polynomial_element.c:23536)()

/localdisk/tmp/sage-3.0/local/lib/python2.5/site-packages/sage/rings/polynomial/polynomial_element_generic.py
 in quo_rem(self, other)

/usr/local/sage-3.0/sage/devel/sage-main/sage/rings/element.pyx in 
sage.structure.element.ModuleElement.__isub__ (sage/structure/element.c:5647)()

/usr/local/sage-3.0/sage/devel/sage-main/sage/rings/coerce.pxi in 
sage.structure.element._sub_c (sage/structure/element.c:15663)()

/usr/local/sage-3.0/sage/devel/sage-main/sage/rings/element.pyx in 
sage.structure.element.ModuleElement._sub_ (sage/structure/element.c:5575)()

/usr/local/sage-3.0/sage/devel/sage-main/sage/rings/polynomial_element.pyx in 
sage.rings.polynomial.polynomial_element.Polynomial_generic_dense._sub_c_impl 
(sage/rings/polynomial/polynomial_element.c:28087)()

/usr/local/sage-3.0/sage/devel/sage-main/sage/rings/element.pyx in 
sage.structure.element.ModuleElement.__sub__ (sage/structure/element.c:5410)()

/usr/local/sage-3.0/sage/devel/sage-main/sage/rings/coerce.pxi in 
sage.structure.element._sub_c (sage/structure/element.c:15663)()

/localdisk/tmp/sage-3.0/local/lib/python2.5/site-packages/sage/rings/fraction_field_element.py
 in _sub_(self, right)
    292                 gcd_denom = self.__denominator.gcd(right.__denominator)
    293                 if not gcd_denom.is_unit():
--> 294                     right_mul = self.__denominator // gcd_denom
    295                     self_mul = right.__denominator // gcd_denom
    296                     numer = self.__numerator * self_mul -  
right.__numerator * right_mul

/localdisk/tmp/sage-3.0/local/lib/python2.5/site-packages/sage/rings/polynomial/multi_polynomial_element.py
 in __floordiv__(self, right)

/usr/local/sage-3.0/sage/devel/sage-main/sage/rings/element.pyx in 
sage.structure.element.CommutativeRingElement.divides 
(sage/structure/element.c:10099)()

<type 'exceptions.TypeError'>: unsupported operand type(s) for %: 
'sage.rings.number_field.number_field_element_quadratic.NumberFieldElement_quadratic'
 and 
'sage.rings.number_field.number_field_element_quadratic.NumberFieldElement_quadratic'


--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-support@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-support
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to