Logarithmic integral, complex, argument, several answers?

66 Views Asked by At

I am reading Prime Obsession by John Derbyshire. Towards the end he offers a detailed calculation of $J(x)$ (according to Reimann). He uses $x=20$ as his example. He calculates $20^\rho$ for the first couple of zeros (and draws the circle with radius $\sqrt{20}$. In particular: He writes that $20^{0.5+14.134725i} = -0.302303-4.46191i$.

But then he proceeds to write, and we are on the top of page 340 for those with a copy at hand, that $\textrm{Li}(-0.302303-4.46191i) = -0.105384+3.14749i$, where Li is the classic logarithmic integral.

I use Python, and the problem is that sympy.li and mpmath.li both returns $1.99796923684748 - 3.91384242586457i$.

I wrote the author, who responded "The problem is that raising a number to a complex power does not give a single indisputable result. Different software picks different results. I used Mathematica & the values it gave me that best make my case. Other packages deliver different answers -- all correct!".

However feeding Li(20^(1/2+14.134725*i)) into WolframAlpha returns "my" result, not the author's.

My goal is to "unwrap" the $\sqrt{20}$ circle into the beautiful double-spiral on page 337. The plot I get does not match, and I assume it is because I apply Li incorrectly.

Any help in explaining the use of Li in Python would be highly appreciated.

1

There are 1 best solutions below

1
On BEST ANSWER

You need to evaluate the non-trivial zeta zero terms as $\text{Ei}\left(\log(x)\ \rho\right)$ (see WolframAlpha evaluation).

On page 335 of "Prime Obsession" the author indicates the following:

I shall not go into detail, only say that, yes, ${Li}(x)$ is defined$^{128}$ for complex numbers $z$.

Note $128$ on page $390$ explains the author used $\text{Ei}\left(\log(x)\ \rho\right)$ instead of $Li(x^\rho)$.

The Mathematica expression

Show[ParametricPlot[{Re[ExpIntegralEi[Log[20] (1/2 + I t)]], Im[ExpIntegralEi[Log[20] (1/2 + I t)]]}, {t, -20, 20}, PlotRange -> Full, GridLines -> Automatic], ListPlot[{{Re@ExpIntegralEi[Log[20] ZetaZero1], Im@ExpIntegralEi[Log[20] ZetaZero1]}, {Re@ ExpIntegralEi[Log[20] ZetaZero[-1]], Im@ExpIntegralEi[Log[20] ZetaZero[-1]]}}, PlotStyle -> Red]]

generates the following plot where the red discrete evaluation points represent $\left\{\Re\left(\text{Ei}\left(\log(20)\ \rho_1\right)\right),\Im\left(\text{Ei}\left(\log(20)\ \rho_1\right)\right)\right\}$ and $\left\{\Re\left(\text{Ei}\left(\log(20)\ \rho_{-1}\right)\right),\Im\left(\text{Ei}\left(\log(20)\ \rho_{-1}\right)\right)\right\}$:

Parametric Plot