# fyi, sympy integrator now default for sagemath?

12 views

### Nasser M. Abbasi

Feb 4, 2022, 3:42:46 AMFeb 4
to
Fyi;

I just installed sagemath new release 9.5 on archlinux to get ready
to run new build of CAS integration tests which will take long time.

I noticed now sympy seems to be the default integrator:

==========================
>sage
┌────────────────────────────────────────────────────────────────────┐
│ SageMath version 9.5, Release Date: 2022-01-30 │
│ Using Python 3.10.2. Type "help()" for help. │
└────────────────────────────────────────────────────────────────────┘
sage: x = var("x")

sage: integrate(sqrt(1 + x ^ 3), x)
1/3*x*gamma(1/3)*hypergeometric((-1/2, 1/3), (4/3,), -x^3)/gamma(4/3)

But when I tried the 3 other CAS's I know about that can be used
from sagemath integrate command, they all did not solve the above

sage: integrate(sqrt(1 + x ^ 3), x, algorithm="fricas")
integral(sqrt(x^3 + 1), x)

sage: integrate(sqrt(1 + x ^ 3), x, algorithm="maxima")
integrate(sqrt(x^3 + 1), x)

sage: integrate(sqrt(1 + x ^ 3), x, algorithm="giac")
integrate(sqrt(x^3 + 1), x)

So I was wondering then how the first one obtained the answer.

Then I tried sympy and that gave the above answer

sage: integrate(sqrt(1 + x ^ 3), x, algorithm="sympy")
1/3*x*gamma(1/3)*hypergeometric((-1/2, 1/3), (4/3,), -x^3)/gamma(4/3)

=======================

Which tells me sympy is the default integrator. Unless sagemath 9.5
is now smart enough to try different cas integrator one at a time
behind the scene until it finds one which gives an answer?.

I am not sure.

In earlier versions of sagemath, maxima was the default integrator
as far as I know. This looks like a new change.

I am however still calling sympy 1.9 directly in Python
and not via sagemath for making CAS integration test as it is
more direct. This test has been completed. it took 5 weeks.
Also Mathemtica 13 testing is completed.

--Nasser