Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Unable to parse Giac output error

Sagemath 8.9

Why does sagemath return this error here?

sage: var('x')
x
sage: integrate((1-2*x^(1/3))^(3/4)/x,x, algorithm="giac")
NotImplementedError                       Traceback (most recent call last)
<ipython-input-16-987ddabbc645> in <module>()
----> 1 integrate((Integer(1)-Integer(2)*x**(Integer(1)/Integer(3)))**(Integer(3)/Integer(4))/x,x, algorithm="giac")

/usr/lib/python2.7/site-packages/sage/misc/functional.pyc in integral(x, *args, **kwds)
    751     """
    752     if hasattr(x, 'integral'):
--> 753         return x.integral(*args, **kwds)
    754     else:
    755         from sage.symbolic.ring import SR

/usr/lib/python2.7/site-packages/sage/symbolic/expression.pyx in sage.symbolic.expression.Expression.integral (build/cythonized/sage/symbolic/expression.cpp:64032)()
  12360                     R = ring.SR
  12361             return R(integral(f, v, a, b, **kwds))
> 12362         return integral(self, *args, **kwds)
  12363 
  12364     integrate = integral

/usr/lib/python2.7/site-packages/sage/symbolic/integration/integral.pyc in integrate(expression, v, a, b, algorithm, hold)
    910         if not integrator:
    911             raise ValueError("Unknown algorithm: %s" % algorithm)
--> 912         return integrator(expression, v, a, b)
    913     if a is None:
    914         return indefinite_integral(expression, v, hold=hold)

/usr/lib/python2.7/site-packages/sage/symbolic/integration/external.pyc in giac_integrator(expression, v, a, b)
    430         return expression.integrate(v, a, b, hold=True)
    431     else:
--> 432         return result._sage_()

/usr/lib/python2.7/site-packages/sage/interfaces/giac.pyc in _sage_(self, locals)
   1096 
   1097             except Exception:
-> 1098                 raise NotImplementedError("Unable to parse Giac output: %s" % result)
   1099         else:
   1100             return [entry.sage() for entry in self]

NotImplementedError: Unable to parse Giac output: Evaluation time: 1.76
12*(1/4*ln(abs((-2*x^(1/3)+1)^(1/4)-1))-1/4*ln((-2*x^(1/3)+1)^(1/4)+1)+1/2*atan((-2*x^(1/3)+1)^(1/4))+1/3*((-2*x^(1/3)+1)^(1/4))^3)
sage:

The error is similar to one in this bug report from 3 years ago https://trac.sagemath.org/ticket/22997 but that is for unresolved integral while here Giac is able to solve it.

Here is the same thing using giac directly on same computer

>giac
// Using locale /usr/share/locale/
// en_US.utf8
// /usr/share/locale/
// giac
// UTF-8
// Maximum number of parallel threads 4
Help file /usr/share/giac/doc/en/aide_cas not found
Added 26 synonyms
Welcome to giac readline interface
(c) 2001,2018 B. Parisse & others
Homepage http://www-fourier.ujf-grenoble.fr/~parisse/giac.html
Released under the GPL license 3.0 or above
See http://www.gnu.org for license details
May contain BSD licensed software parts (lapack, atlas, tinymt)
-------------------------------------------------
Press CTRL and D simultaneously to finish session
Type ?commandname for help
0>> integrate((1-2*x^(1/3))^(3/4)/x,x)

Evaluation time: 1.66
12*(1/4*ln(abs((-2*x^(1/3)+1)^(1/4)-1))-1/4*ln((-2*x^(1/3)+1)^(1/4)+1)+1/2*atan((-2*x^(1/3)+1)^(1/4))+1/3*((-2*x^(1/3)+1)^(1/4))^3)
// Time 1.66
1>>

Version

>giac --version
// Using locale /usr/share/locale/
// en_US.utf8
// /usr/share/locale/
// giac
// UTF-8
// Maximum number of parallel threads 4
// (c) 2001, 2018 B. Parisse & others
1.5.0
>

Any suggestions what is going on?

Thanks --Nasser