Opened 8 weeks ago

Last modified 3 weeks ago

#28630 new defect

Wrong conversion from fricas

Reported by: tmonteil Owned by:
Priority: major Milestone: sage-9.0
Component: symbolics Keywords: FriCAS
Cc: hemmecke, whuss, rws, chapoton, mantepse Merged in:
Authors: Reviewers:
Report Upstream: Reported upstream. Developers acknowledge bug. Work issues:
Branch: Commit:
Dependencies: Stopgaps:

Description

As reported on this ask question, we have:

sage: f = polylog(3, x)
sage: f.integral(x, algorithm='fricas')
-x*%iint(x, -log(-x + 1)/x) - (x - 1)*log(-x + 1) + x*polylog(3, x) + x

So, fricas produces something that is ill-interpreted as some %iint symbolic function.

Note that maxima produces the following answer:

sage: f.integral(x, algorithm='maxima')
-x*dilog(x) - (x - 1)*log(-x + 1) + x*polylog(3, x) + x

Change History (7)

comment:1 Changed 8 weeks ago by tmonteil

  • Cc hemmecke whuss rws chapoton added

comment:2 Changed 8 weeks ago by chapoton

  • Keywords FriCAS added

comment:3 Changed 8 weeks ago by chapoton

  • Cc mantepse added

comment:4 Changed 8 weeks ago by chapoton

This seems to be some kind of bug in Fricas:

sage: f = fricas(polylog(3,x))
sage: f.integrate(x)
              log(- x + 1)
- x %iint(x,- ------------) + x polylog(3,x) + (- x + 1)log(- x + 1) + x
                    x

And the first term can be differentiated (inside Fricas) correctly.

comment:5 Changed 3 weeks ago by mantepse

More a reminder to myself: SageMath's dilog(x) is FriCAS' dilog(1-x). This is properly reflected in sage.functions.log.py, in class Function_dilog.

So FriCAS should simplify %iint(x, -log(1-x)/x)) to FriCAS dilog(1-x).

comment:6 Changed 3 weeks ago by mantepse

  • Report Upstream changed from N/A to Reported upstream. No feedback yet.

comment:7 Changed 3 weeks ago by mantepse

  • Report Upstream changed from Reported upstream. No feedback yet. to Reported upstream. Developers acknowledge bug.
Note: See TracTickets for help on using tickets.