code: def test_derivatives():
      from sympy.core.function import Derivative
  
      assert zeta(x, a).diff(x) == Derivative(zeta(x, a), x)
      assert zeta(x, a).diff(a) == -x * zeta(x + 1, a)
      assert (
          lerchphi(z, s, a).diff(z)
          == (lerchphi(z, s - 1, a) - a * lerchphi(z, s, a)) / z
      )
      assert lerchphi(z, s, a).diff(a) == -s * lerchphi(z, s + 1, a)
      assert polylog(s, z).diff(z) == polylog(s - 1, z) / z
  
      b = randcplx()
      c = randcplx()
      assert td(zeta(b, x), x)
      assert td(polylog(b, z), z)
      assert td(lerchphi(c, b, x), x)
      assert td(lerchphi(x, b, c), x)
      raises(ArgumentIndexError, lambda: lerchphi(c, b, x).fdiff(2))
      raises(ArgumentIndexError, lambda: lerchphi(c, b, x).fdiff(4))
      raises(ArgumentIndexError, lambda: polylog(b, z).fdiff(1))
      raises(ArgumentIndexError, lambda: polylog(b, z).fdiff(3))
  
imports: from sympy.concrete.summations import Sum
  from sympy.core.function import expand_func
  from sympy.core.numbers import Float, I, Rational, nan, oo, pi, zoo
  from sympy.core.singleton import S
  from sympy.core.symbol import Symbol
  from sympy.functions.elementary.complexes import Abs, polar_lift
  from sympy.functions.elementary.exponential import exp, exp_polar, log
  from sympy.functions.elementary.miscellaneous import sqrt
  from sympy.functions.special.zeta_functions import dirichlet_eta, lerchphi, polylog, riemann_xi, stieltjes, zeta
  from sympy.series.order import O
  from sympy.core.function import ArgumentIndexError
  from sympy.functions.combinatorial.numbers import bernoulli, factorial, genocchi, harmonic
  from sympy.testing.pytest import raises
  from sympy.core.random import test_derivative_numerically, random_complex_number, verify_numerically
label_desc: Use image node_id 6 for calling a global function with example usage: test_derivatives() without return types