#4517: magma <--> sage (3.2) conversion failure case -- nested multivariate
polynomials
------------------------+---------------------------------------------------
 Reporter:  was         |        Owner:  was     
     Type:  defect      |       Status:  new     
 Priority:  major       |    Milestone:  sage-3.2
Component:  interfaces  |   Resolution:          
 Keywords:              |  
------------------------+---------------------------------------------------
Old description:

> Converted a nested multivariate polynomial to Magma fails miserably:
>
> {{{
> [EMAIL PROTECTED]:~/build/sage-3.2.rc0$ ./sage
> ----------------------------------------------------------------------
> | Sage Version 3.2.rc0, Release Date: 2008-11-10                     |
> | Type notebook() for the GUI, and license() for information.        |
> ----------------------------------------------------------------------
>
> sage: R.<x,y> = QQ[]; S.<z,w> = R[]; magma(x+z)
> ERROR: An unexpected error occurred while tokenizing input
> The following traceback may be corrupted or invalid
> The error message is: ('EOF in multi-line statement', (1510, 0))
>
> ---------------------------------------------------------------------------
> TypeError                                 Traceback (most recent call
> last)
>
> /home/was/build/sage-3.2.rc0/<ipython console> in <module>()
>
> /home/was/build/sage-3.2.rc0/local/lib/python2.5/site-
> packages/sage/interfaces/magma.pyc in __call__(self, x, gens)
>     507             if isinstance(x, bool):
>     508                 return Expect.__call__(self, str(x).lower())
> --> 509             return Expect.__call__(self, x)
>     510         return self.objgens(x, gens)
>     511
>
> /home/was/build/sage-3.2.rc0/local/lib/python2.5/site-
> packages/sage/interfaces/expect.pyc in __call__(self, x, name)
>     965             return cls(self, x, name=name)
>     966         try:
> --> 967             return self._coerce_from_special_method(x)
>     968         except TypeError:
>     969             raise
>
> /home/was/build/sage-3.2.rc0/local/lib/python2.5/site-
> packages/sage/interfaces/expect.pyc in _coerce_from_special_method(self,
> x)
>     989             s = '_gp_'
>     990         try:
> --> 991             return (x.__getattribute__(s))(self)
>     992         except AttributeError:
>     993             return self(x._interface_init_())
>
> /home/was/build/sage-3.2.rc0/local/lib/python2.5/site-
> packages/sage/structure/sage_object.so in
> sage.structure.sage_object.SageObject._magma_
> (sage/structure/sage_object.c:3696)()
>
> /home/was/build/sage-3.2.rc0/local/lib/python2.5/site-
> packages/sage/structure/sage_object.so in
> sage.structure.sage_object.SageObject._magma_convert_
> (sage/structure/sage_object.c:3826)()
>
> /home/was/build/sage-3.2.rc0/local/lib/python2.5/site-
> packages/sage/structure/sage_object.so in
> sage.structure.sage_object.SageObject._interface_
> (sage/structure/sage_object.c:2383)()
>
> /home/was/build/sage-3.2.rc0/local/lib/python2.5/site-
> packages/sage/interfaces/magma.pyc in __call__(self, x, gens)
>     507             if isinstance(x, bool):
>     508                 return Expect.__call__(self, str(x).lower())
> --> 509             return Expect.__call__(self, x)
>     510         return self.objgens(x, gens)
>     511
>
> /home/was/build/sage-3.2.rc0/local/lib/python2.5/site-
> packages/sage/interfaces/expect.pyc in __call__(self, x, name)
>     963             return x
>     964         if isinstance(x, basestring):
> --> 965             return cls(self, x, name=name)
>     966         try:
>     967             return self._coerce_from_special_method(x)
>
> /home/was/build/sage-3.2.rc0/local/lib/python2.5/site-
> packages/sage/interfaces/expect.pyc in __init__(self, parent, value,
> is_name, name)
>    1291             except (TypeError, KeyboardInterrupt, RuntimeError,
> ValueError), x:
>    1292                 self._session_number = -1
> -> 1293                 raise TypeError, x
>    1294         self._session_number = parent._session_number
>    1295
>
> TypeError: Error evaluating Magma code.
> IN:_sage_[10] := _sage_[7] + x;
> OUT:
> >> _sage_[10] := _sage_[7] + x;
>                              ^
> User error: Identifier 'x' has not been declared or assigned
> }}}

New description:

 Converted a nested multivariate polynomial to Magma fails miserably:

 {{{
 [EMAIL PROTECTED]:~/build/sage-3.2.rc0$ ./sage
 ----------------------------------------------------------------------
 | Sage Version 3.2.rc0, Release Date: 2008-11-10                     |
 | Type notebook() for the GUI, and license() for information.        |
 ----------------------------------------------------------------------

 sage: R.<x,y> = QQ[]; S.<z,w> = R[]; magma(x+z)
 ERROR: An unexpected error occurred while tokenizing input
 The following traceback may be corrupted or invalid
 The error message is: ('EOF in multi-line statement', (1510, 0))

 ---------------------------------------------------------------------------
 TypeError                                 Traceback (most recent call
 last)

 /home/was/build/sage-3.2.rc0/<ipython console> in <module>()

 /home/was/build/sage-3.2.rc0/local/lib/python2.5/site-
 packages/sage/interfaces/magma.pyc in __call__(self, x, gens)
     507             if isinstance(x, bool):
     508                 return Expect.__call__(self, str(x).lower())
 --> 509             return Expect.__call__(self, x)
     510         return self.objgens(x, gens)
     511

 /home/was/build/sage-3.2.rc0/local/lib/python2.5/site-
 packages/sage/interfaces/expect.pyc in __call__(self, x, name)
     965             return cls(self, x, name=name)
     966         try:
 --> 967             return self._coerce_from_special_method(x)
     968         except TypeError:
     969             raise

 /home/was/build/sage-3.2.rc0/local/lib/python2.5/site-
 packages/sage/interfaces/expect.pyc in _coerce_from_special_method(self,
 x)
     989             s = '_gp_'
     990         try:
 --> 991             return (x.__getattribute__(s))(self)
     992         except AttributeError:
     993             return self(x._interface_init_())

 /home/was/build/sage-3.2.rc0/local/lib/python2.5/site-
 packages/sage/structure/sage_object.so in
 sage.structure.sage_object.SageObject._magma_
 (sage/structure/sage_object.c:3696)()

 /home/was/build/sage-3.2.rc0/local/lib/python2.5/site-
 packages/sage/structure/sage_object.so in
 sage.structure.sage_object.SageObject._magma_convert_
 (sage/structure/sage_object.c:3826)()

 /home/was/build/sage-3.2.rc0/local/lib/python2.5/site-
 packages/sage/structure/sage_object.so in
 sage.structure.sage_object.SageObject._interface_
 (sage/structure/sage_object.c:2383)()

 /home/was/build/sage-3.2.rc0/local/lib/python2.5/site-
 packages/sage/interfaces/magma.pyc in __call__(self, x, gens)
     507             if isinstance(x, bool):
     508                 return Expect.__call__(self, str(x).lower())
 --> 509             return Expect.__call__(self, x)
     510         return self.objgens(x, gens)
     511

 /home/was/build/sage-3.2.rc0/local/lib/python2.5/site-
 packages/sage/interfaces/expect.pyc in __call__(self, x, name)
     963             return x
     964         if isinstance(x, basestring):
 --> 965             return cls(self, x, name=name)
     966         try:
     967             return self._coerce_from_special_method(x)

 /home/was/build/sage-3.2.rc0/local/lib/python2.5/site-
 packages/sage/interfaces/expect.pyc in __init__(self, parent, value,
 is_name, name)
    1291             except (TypeError, KeyboardInterrupt, RuntimeError,
 ValueError), x:
    1292                 self._session_number = -1
 -> 1293                 raise TypeError, x
    1294         self._session_number = parent._session_number
    1295

 TypeError: Error evaluating Magma code.
 IN:_sage_[10] := _sage_[7] + x;
 OUT:
 >> _sage_[10] := _sage_[7] + x;
                              ^
 User error: Identifier 'x' has not been declared or assigned
 }}}

 This is closely related to #4408.

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/4517#comment:1>
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
-~----------~----~----~----~------~----~------~--~---

Reply via email to