#7377: Symbolic Ring to Maxima via EclObject
-----------------------------------------------------------------------+----
   Reporter:  nbruin                                                   |       
Owner:  nbruin      
       Type:  enhancement                                              |      
Status:  needs_work  
   Priority:  major                                                    |   
Milestone:  sage-feature
  Component:  symbolics                                                |    
Keywords:              
     Author:  Nils Bruin, Jean-Pierre Flori                            |    
Upstream:  N/A         
   Reviewer:  Jean-Pierre Flori, François Bissey, Karl-Dieter Crisman  |      
Merged:              
Work_issues:                                                           |  
-----------------------------------------------------------------------+----

Comment(by fbissey):

 Interesting one, notice that it still wants maxima-5.19.1
 {{{
 sage -t -force_lib "devel/sage/sage/interfaces/maxima_lib.py"
 **********************************************************************
 File "/usr/share/sage/devel/sage/sage/interfaces/maxima_lib.py", line 426:
     sage: t.limit(Ax=0,dir='above')
 Exception raised:
     Traceback (most recent call last):
       File "/usr/bin/ncadoctest.py", line 1231, in run_one_test
         self.run_one_example(test, example, filename, compileflags)
       File "/usr/bin/sagedoctest.py", line 38, in run_one_example
         OrigDocTestRunner.run_one_example(self, test, example, filename,
 compileflags)
       File "/usr/bin/ncadoctest.py", line 1172, in run_one_example
         compileflags, 1) in test.globs
       File "<doctest __main__.example_0[93]>", line 1, in <module>
         t.limit(Ax=Integer(0),dir='above')###line 426:
     sage: t.limit(Ax=0,dir='above')
       File "expression.pyx", line 8202, in
 sage.symbolic.expression.Expression.limit
 (sage/symbolic/expression.cpp:31252)
       File "/usr/lib/python2.6/site-packages/sage/calculus/calculus.py",
 line 1122, in limit
         return l.sage()
       File "element.pyx", line 327, in
 sage.structure.element.Element.__getattr__ (sage/structure/element.c:2715)
       File "parent.pyx", line 277, in
 sage.structure.parent.getattr_from_other_class
 (sage/structure/parent.c:2841)
       File "parent.pyx", line 175, in
 sage.structure.parent.raise_attribute_error (sage/structure/parent.c:2636)
     AttributeError: 'sage.rings.integer.Integer' object has no attribute
 'sage'
 **********************************************************************
 File "/usr/share/sage/devel/sage/sage/interfaces/maxima_lib.py", line 966:
     sage: maxima.version()
 Expected:
     '5.19.1'
 Got:
     '5.23.2'
 **********************************************************************
 File "/usr/share/sage/devel/sage/sage/interfaces/maxima_lib.py", line
 1076:
     sage: maxima_version()
 Expected:
     '5.19.1'
 Got:
     '5.23.2'
 **********************************************************************
 File "/usr/share/sage/devel/sage/sage/interfaces/maxima_lib.py", line 639:
     sage: integrate(1/(x^3 *(a+b*x)^(1/3)),x)
 Expected:
     Traceback (most recent call last):
     ...
     TypeError: Computation failed since Maxima requested additional
 constraints (try the command 'assume(a>0)' before integral or limit
 evaluation, for example):
     Is  a  positive or negative?
 Got:
     Traceback (most recent call last):
       File "/usr/bin/ncadoctest.py", line 1231, in run_one_test
         self.run_one_example(test, example, filename, compileflags)
       File "/usr/bin/sagedoctest.py", line 38, in run_one_example
         OrigDocTestRunner.run_one_example(self, test, example, filename,
 compileflags)
       File "/usr/bin/ncadoctest.py", line 1172, in run_one_example
         compileflags, 1) in test.globs
       File "<doctest __main__.example_8[3]>", line 1, in <module>
         integrate(Integer(1)/(x**Integer(3)
 *(a+b*x)**(Integer(1)/Integer(3))),x)###line 639:
     sage: integrate(1/(x^3 *(a+b*x)^(1/3)),x)
       File "/usr/lib/python2.6/site-packages/sage/misc/functional.py",
 line 718, in integral
         return x.integral(*args, **kwds)
       File "expression.pyx", line 8153, in
 sage.symbolic.expression.Expression.integral
 (sage/symbolic/expression.cpp:30871)
       File "/usr/lib/python2.6/site-
 packages/sage/symbolic/integration/integral.py", line 601, in integrate
         return indefinite_integral(expression, v)
       File "function.pyx", line 419, in
 sage.symbolic.function.Function.__call__ (sage/symbolic/function.cpp:4486)
       File "/usr/lib/python2.6/site-
 packages/sage/symbolic/integration/integral.py", line 85, in _eval_
         res = integrator(f, x)
       File "/usr/lib/python2.6/site-
 packages/sage/symbolic/integration/external.py", line 19, in
 maxima_integrator
         result = maxima.sr_integral(expression,v)
       File "/usr/lib/python2.6/site-
 packages/sage/interfaces/maxima_lib.py", line 983, in sr_integral
         raise error
     RuntimeError: ECL says: Maxima asks:?mtext("Is  ",a,"  positive or
 negative?")
 **********************************************************************
 File "/usr/share/sage/devel/sage/sage/interfaces/maxima_lib.py", line 649:
     sage: integral(x^n,x)
 Expected:
     Traceback (most recent call last):
     ...
     TypeError: Computation failed since Maxima requested additional
 constraints (try the command 'assume(n+1>0)' before integral or limit
 evaluation, for example):
     Is  n+1  zero or nonzero?
 Got:
     Traceback (most recent call last):
       File "/usr/bin/ncadoctest.py", line 1231, in run_one_test
         self.run_one_example(test, example, filename, compileflags)
       File "/usr/bin/sagedoctest.py", line 38, in run_one_example
         OrigDocTestRunner.run_one_example(self, test, example, filename,
 compileflags)
       File "/usr/bin/ncadoctest.py", line 1172, in run_one_example
         compileflags, 1) in test.globs
       File "<doctest __main__.example_8[7]>", line 1, in <module>
         integral(x**n,x)###line 649:
     sage: integral(x^n,x)
       File "/usr/lib/python2.6/site-packages/sage/misc/functional.py",
 line 718, in integral
         return x.integral(*args, **kwds)
       File "expression.pyx", line 8153, in
 sage.symbolic.expression.Expression.integral
 (sage/symbolic/expression.cpp:30871)
       File "/usr/lib/python2.6/site-
 packages/sage/symbolic/integration/integral.py", line 601, in integrate
         return indefinite_integral(expression, v)
       File "function.pyx", line 419, in
 sage.symbolic.function.Function.__call__ (sage/symbolic/function.cpp:4486)
       File "/usr/lib/python2.6/site-
 packages/sage/symbolic/integration/integral.py", line 85, in _eval_
         res = integrator(f, x)
       File "/usr/lib/python2.6/site-
 packages/sage/symbolic/integration/external.py", line 19, in
 maxima_integrator
         result = maxima.sr_integral(expression,v)
       File "/usr/lib/python2.6/site-
 packages/sage/interfaces/maxima_lib.py", line 983, in sr_integral
         raise error
     RuntimeError: ECL says: Maxima asks:?mtext("Is  ",n+1,"  zero or
 nonzero?")
 **********************************************************************
 4 items had failures:
    1 of  95 in __main__.example_0
    1 of   3 in __main__.example_18
    1 of   4 in __main__.example_23
    2 of  11 in __main__.example_8
 ***Test Failed*** 5 failures.
 For whitespace errors, see the file
 /home/francois/.sage/tmp/.doctest_maxima_lib.py
          [17.3 s]

 ----------------------------------------------------------------------
 The following tests failed:


         sage -t -force_lib "devel/sage/sage/interfaces/maxima_lib.py"
 Total time for all tests: 17.3 seconds
 }}}

 sage -t -force_lib "devel/sage/sage/symbolic/integration/integral.py times
 out because:
 {{{
 Trying:
     integrate(sin(x)*cos(Integer(10)*x)*log(x), x)###line 462:_sage_
 >>> integrate(sin(x)*cos(10*x)*log(x), x)
 Expecting:
     1/198*(11*cos(9*x) - 9*cos(11*x))*log(x) + 1/44*Ei(-11*I*x) -
 1/36*Ei(-9*I*x) - 1/36*Ei(9*I*x) + 1/44*Ei(11*I*x)
 Wrong number of arguments to gamma_incomplete
  -- an error. To debug this try: debugmode(true);

 Error in format: Unknown format directive.
   Wrong number of arguments to ~:@M
                                   ^
 while processing indirect format string:
   ~?
    ^
 No restarts available.

 Broken at LAMBDA.
 }}}

 sage -t -force_lib "devel/sage/sage/symbolic/relation.py" times out
 because of this:
 {{{
 Trying:
     solve([sqrt(x) + sqrt(y) == Integer(5), x + y == Integer(10)], x,
 y)###line 492:_sage_    >>> solve([sqrt(x) + sqrt(y) == 5, x + y == 10],
 x, y)
 Expecting:
     [[x == -5/2*I*sqrt(5) + 5, y == 5/2*I*sqrt(5) + 5], [x ==
 5/2*I*sqrt(5) + 5, y == -5/2*I*sqrt(5) + 5]]
 assoc: every list element must be an expression with two arguments; found:
 [sage147]
 #0: simp_%solve(e=sage135,v=sage146,extraargs=[sage147])
  -- an error. To debug this try: debugmode(true);

 Error in format: Unknown format directive.
   assoc: every list element must be an expression with two arguments;
 found: ~:M
 ^
 while processing indirect format string:
   ~?
    ^
 No restarts available.
 }}}

 sage -t -force_lib "devel/sage/sage/symbolic/assumptions.py":
 {{{
 Trying:
     decl2.assume()###line 89:_sage_    >>> decl2.assume()
 Expecting:
     Traceback (most recent call last):
     ...
     ValueError: Assumption is inconsistent
 declare: inconsistent declaration declare(x,odd)
  -- an error. To debug this try: debugmode(true);

 Error in format: Unknown format directive.
   declare: inconsistent declaration ~:M
                                       ^
 while processing indirect format string:
   ~?
    ^
 No restarts available.
 }}}

 sage -t -force_lib "devel/sage/sage/symbolic/expression.pyx":
 {{{
 Trying:
     solve(acot(x),x)###line 7453:_sage_    >>> solve(acot(x),x)
 Expecting:
     []
 The number 0 isn't in the domain of cot
  -- an error. To debug this try: debugmode(true);

 Error in format: Unknown format directive.
   The number ~:M isn't in the domain of ~A
                ^
 while processing indirect format string:
   ~?
    ^
 No restarts available.
 }}}

 sage -t -force_lib "devel/sage/sage/structure/sage_object.pyx" is
 interesting:
 {{{
 File "/usr/share/sage/devel/sage/sage/structure/sage_object.pyx", line
 1053:
     sage: print "x"; sage.structure.sage_object.unpickle_all()
 Expected:
     x...
     Successfully unpickled ... objects.
     Failed to unpickle 0 objects.
 Got:
     x
     doctest:1: DeprecationWarning: Your word object is saved in an old
 file format since FiniteWord_over_OrderedAlphabet is deprecated and will
 be deleted in a future version of Sage (you can use FiniteWord_list
 instead). You can re-save your word by typing "word.save(filename)" to
 ensure that it will load in future versions of Sage.
     doctest:1: DeprecationWarning: Your word object is saved in an old
 file format since AbstractWord is deprecated and will be deleted in a
 future version of Sage (you can use FiniteWord_list instead). You can re-
 save your word by typing "word.save(filename)" to ensure that it will load
 in future versions of Sage.
     doctest:1: DeprecationWarning: Your word object is saved in an old
 file format since Word_over_Alphabet is deprecated and will be deleted in
 a future version of Sage (you can use FiniteWord_list instead). You can
 re-save your word by typing "word.save(filename)" to ensure that it will
 load in future versions of Sage.
     doctest:1: DeprecationWarning: Your word object is saved in an old
 file format since Word_over_OrderedAlphabet is deprecated and will be
 deleted in a future version of Sage (you can use FiniteWord_list instead).
 You can re-save your word by typing "word.save(filename)" to ensure that
 it will load in future versions of Sage.
     doctest:1: DeprecationWarning: ChristoffelWord_Lower is deprecated,
 use LowerChristoffelWord instead
      * unpickle failure:
 
load('/home/francois/.sage/temp/vrooom/13483/dir_2/pickle_jar/_class__sage_interfaces_maxima_MaximaFunction__.sobj')
     Failed:
     _class__sage_interfaces_maxima_MaximaFunction__.sobj
     Successfully unpickled 585 objects.
     Failed to unpickle 1 objects.
 }}}

 sage -t -force_lib "devel/sage/sage/modules/free_module_element.pyx" now
 pass, so probably ecl-11.1.1 related.

 sage -t -force_lib "devel/sage/sage/calculus/tests.py" (extracts):
 {{{
 File "/usr/share/sage/devel/sage/sage/calculus/tests.py", line 107:
     sage: integrate(log(1-x^2)/x, x)
 Exception raised:
     Traceback (most recent call last):
       File "/usr/bin/ncadoctest.py", line 1231, in run_one_test
         self.run_one_example(test, example, filename, compileflags)
       File "/usr/bin/sagedoctest.py", line 38, in run_one_example
         OrigDocTestRunner.run_one_example(self, test, example, filename,
 compileflags)
       File "/usr/bin/ncadoctest.py", line 1172, in run_one_example
         compileflags, 1) in test.globs
       File "<doctest __main__.example_0[41]>", line 1, in <module>
         integrate(log(Integer(1)-x**Integer(2))/x, x)###line 107:
     sage: integrate(log(1-x^2)/x, x)
       File "/usr/lib/python2.6/site-packages/sage/misc/functional.py",
 line 718, in integral
         return x.integral(*args, **kwds)
       File "expression.pyx", line 8153, in
 sage.symbolic.expression.Expression.integral
 (sage/symbolic/expression.cpp:30871)
       File "/usr/lib/python2.6/site-
 packages/sage/symbolic/integration/integral.py", line 601, in integrate
         return indefinite_integral(expression, v)
       File "function.pyx", line 419, in
 sage.symbolic.function.Function.__call__ (sage/symbolic/function.cpp:4486)
       File "/usr/lib/python2.6/site-
 packages/sage/symbolic/integration/integral.py", line 85, in _eval_
         res = integrator(f, x)
       File "/usr/lib/python2.6/site-
 packages/sage/symbolic/integration/external.py", line 19, in
 maxima_integrator
         result = maxima.sr_integral(expression,v)
       File "/usr/lib/python2.6/site-
 packages/sage/interfaces/maxima_lib.py", line 977, in sr_integral
         return max_to_sr(maxima_eval(([max_integrate],[sr_to_max(SR(a))
 for a in args])))
       File "/usr/lib/python2.6/site-
 packages/sage/interfaces/maxima_lib.py", line 1228, in max_to_sr
         args.append(max_to_sr(car(max_args)))
       File "/usr/lib/python2.6/site-
 packages/sage/interfaces/maxima_lib.py", line 1228, in max_to_sr
         args.append(max_to_sr(car(max_args)))
       File "/usr/lib/python2.6/site-
 packages/sage/interfaces/maxima_lib.py", line 1228, in max_to_sr
         args.append(max_to_sr(car(max_args)))
       File "/usr/lib/python2.6/site-
 packages/sage/interfaces/maxima_lib.py", line 1221, in max_to_sr
         sage_expr=SR(maxima(expr))
       File "parent.pyx", line 915, in
 sage.structure.parent.Parent.__call__ (sage/structure/parent.c:6668)
       File "coerce_maps.pyx", line 156, in
 sage.structure.coerce_maps.NamedConvertMap._call_
 (sage/structure/coerce_maps.c:4045)
       File "/usr/lib/python2.6/site-
 packages/sage/interfaces/maxima_abstract.py", line 1373, in _symbolic_
         return R(self._sage_())
       File "/usr/lib/python2.6/site-
 packages/sage/interfaces/maxima_abstract.py", line 1354, in _sage_
         maxima=self.parent())
       File "/usr/lib/python2.6/site-packages/sage/calculus/calculus.py",
 line 1646, in symbolic_expression_from_maxima_string
         raise TypeError, "unable to make sense of Maxima expression '%s'
 in Sage"%s
     TypeError: unable to make sense of Maxima expression 'li[2]' in Sage
 }}}
 {{{
 File "/usr/share/sage/devel/sage/sage/calculus/tests.py", line 151:
     sage: integrate(ceil(x^2 + floor(x)), x, 0, 5)    # todo: Mathematica
 can do this
 Expected:
     integrate(ceil(x^2) + floor(x), x, 0, 5)
 Got:
     155/3
 **********************************************************************
 File "/usr/share/sage/devel/sage/sage/calculus/tests.py", line 189:
     sage: integrate(sin(x), x, a, b)
 Expected:
     cos(a) - cos(b)
 Got:
     ceil(cos(a))
 }}}

 sage -t -force_lib "devel/sage/sage/calculus/interpolators.pyx" is
 actually unrelated to maxima I think.

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