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 [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-support
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---