Opened 9 years ago

Last modified 5 years ago

#10050 new enhancement

implement Nielsen Generalized Polylogarithm

Reported by: burcin Owned by: burcin
Priority: major Milestone: sage-wishlist
Component: symbolics Keywords:
Cc: Merged in:
Authors: Reviewers:
Report Upstream: N/A Work issues:
Branch: Commit:
Dependencies: Stopgaps:

Description (last modified by rws)

Numeric evaluation methods for the Nielsen Generalized Polylogarithm are commented out in the pynac source since it tries to call the CLN library directly. The calls to CLN should be replaced with their MPFR, etc. equivalents and the function made available symbolically in Sage. The Pynac part is https://github.com/pynac/pynac/issues/3

Change History (6)

comment:1 follow-ups: Changed 8 years ago by zimmerma

note that there are issues with the current polylog function:

sage: polylog(2,1.0)
1/6*pi^2
sage: polylog(2,0.9)
polylog(2, 0.900000000000000)

The first command should not evaluate symbolically, since the input 1.0 is a floating-point. The second command should evaluate numerically, like for example bessel_J(2,0.9).

Should I open a separate ticket?

Paul

comment:2 in reply to: ↑ 1 Changed 8 years ago by burcin

  • Description modified (diff)
  • Keywords beginner removed
  • Summary changed from wrap the polylogarithm functions from pynac to numeric evaluation of polylog

Replying to zimmerma:

note that there are issues with the current polylog function:

sage: polylog(2,1.0)
1/6*pi^2
sage: polylog(2,0.9)
polylog(2, 0.900000000000000)

The first command should not evaluate symbolically, since the input 1.0 is a floating-point. The second command should evaluate numerically, like for example bessel_J(2,0.9).

Should I open a separate ticket?

I was thinking of the other polylog like functions from ginac/inifcns_nstdsums.cpp when I created this ticket. It seems even the symbolic evaluation code for these is commented out, so this would require quite a bit more work than I thought. I am removing the beginner keyword and changing this ticket to only mention numeric evaluation of polylogs.

comment:3 Changed 5 years ago by rws

  • Description modified (diff)

comment:4 Changed 5 years ago by rws

  • Milestone changed from sage-wishlist to sage-duplicate/invalid/wontfix

At the moment Pynac calls symbolic/pynac.pyx:py_li() which calls mpmath. It is not clear to me why the outcommented pynac code would be needed, to remove the call overhead? If you replace the CLN dependency, with what MPFR?, how would this be better or faster than mpmath?

Proposed to be invalid. If you agree I would reword this ticket to fix the mentioned bugs only.

comment:5 Changed 5 years ago by rws

  • Description modified (diff)
  • Milestone changed from sage-duplicate/invalid/wontfix to sage-wishlist
  • Summary changed from numeric evaluation of polylog to implement Nielsen Generalized Polylogarithm

Ah okay, what was meant in this ticket's description is GiNaC's implementation of the Nielsen Generalized Polylogarithm which is not in mpmath. I have changed the description accordingly.

comment:6 in reply to: ↑ 1 Changed 5 years ago by rws

Replying to zimmerma:

note that there are issues with the current polylog function:

sage: polylog(2,1.0)
1/6*pi^2
sage: polylog(2,0.9)
polylog(2, 0.900000000000000)

The first command should not evaluate symbolically, since the input 1.0 is a floating-point. The second command should evaluate numerically, like for example bessel_J(2,0.9).

Should I open a separate ticket?

Better late than never. This is now #18386.

Note: See TracTickets for help on using tickets.