#11904: Change default variable name for NumberFieldElement -> PARI conversion
-----------------------------+----------------------------------------------
   Reporter:  jdemeyer       |          Owner:  davidloeffler
       Type:  defect         |         Status:  new          
   Priority:  major          |      Milestone:  sage-4.7.2   
  Component:  number fields  |       Keywords:               
Work_issues:                 |       Upstream:  N/A          
   Reviewer:                 |         Author:               
     Merged:                 |   Dependencies:  #11891       
-----------------------------+----------------------------------------------
Description changed by jdemeyer:

Old description:

> Currently, we get:
> {{{
> sage: K.<a> = NumberField(x^3 + 2)
> sage: (a + 2)._pari_()
> Mod(x + 2, x^3 + 2)
> }}}
> Note that the variable `x` is used. Since polynomials prefer the variable
> name `x`, it might be better to use `y` by default (or any other name)
> for number field elements.
>
> Also, the `_pari_()` methods for `NumberFieldElement_absolute` and
> `NumberFieldElement_relative` are exactly the same, so we should avoid
> code duplication.

New description:

 This should be fixed:
 {{{
 sage: K.<a> = NumberField(x^3 + 2)
 sage: R.<x> = PolynomialRing(K)
 sage: pari(a*x)
 ---------------------------------------------------------------------------
 PariError                                 Traceback (most recent call
 last)

 /usr/local/src/sage-4.7.2.alpha2/<ipython console> in <module>()

 /usr/local/src/sage-4.7.2.alpha2/local/lib/python2.6/site-
 packages/sage/libs/pari/gen.so in sage.libs.pari.gen.PariInstance.__call__
 (sage/libs/pari/gen.c:43353)()

 /usr/local/src/sage-4.7.2.alpha2/local/lib/python2.6/site-
 packages/sage/rings/polynomial/polynomial_element.so in
 sage.rings.polynomial.polynomial_element.Polynomial._pari_
 (sage/rings/polynomial/polynomial_element.c:27815)()

 /usr/local/src/sage-4.7.2.alpha2/local/lib/python2.6/site-
 packages/sage/rings/polynomial/polynomial_element.so in
 sage.rings.polynomial.polynomial_element.Polynomial._pari_with_name
 (sage/rings/polynomial/polynomial_element.c:28109)()

 /usr/local/src/sage-4.7.2.alpha2/local/lib/python2.6/site-
 packages/sage/libs/pari/gen.so in sage.libs.pari.gen._pari_trap
 (sage/libs/pari/gen.c:48151)()

 PariError:  (5)
 }}}

 The reason is:
 {{{
 sage: K.<a> = NumberField(x^3 + 2)
 sage: a._pari_()
 Mod(x, x^3 + 2)
 }}}
 Note that the variable `x` is used. Since polynomials prefer the variable
 name `x`, it might be better to use `y` by default (or any other name) for
 number field elements.

 Also, the `_pari_()` methods for `NumberFieldElement_absolute` and
 `NumberFieldElement_relative` are exactly the same, so we should avoid
 code duplication.

--

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/11904#comment:1>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

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