3

I would like to code Riemann Zeta function in Scilab. Even if I would only need computation for real arguments, I tried to code a fully operational function for complex argument (hoping it can help anyone…). I based my code on previous exchanges referring to this paper indicating P.Borwein process.

$$\zeta(s)=\frac{1}{d_0(1-2^{1-s})}\sum_{k=1}^{n}\frac{(-1)^{k-1}d_k}{k^s}+\gamma_n(s)$$ with $$d_k=n\sum_{j=k}^{n}\frac{(n+j-1)!4^j}{(n-j)!(2j)!}$$ and by noting $s=\sigma+it$ $$\left | \gamma_n(s) \right |\leq \frac{3}{(2+\sqrt8)^n} \frac{(1+2\left | t \right |)e^{\left | t \right |\pi/2}}{\left | 1-2^{1-s} \right |}$$

This computation is really efficient but the amount of terms according to residual error is only valid for $\Re(s)\geq \frac{1}{2}$.

Another computation is also described in the paper with the residual error maximization available for $\Re(s)>0$ or $\Re(s)<0$.

However, when $s\approx 1+p \cdot \frac{2\pi i}{log(2)}$, the functional equation cannot be used to reflect to a computable argument: real part is $0$ or to close to ensure accurate computation... Well it seems I cannot use this fast computation process for these arguments.

I found on Wikipedia (French) the orientation to compute $\frac{1}{\zeta(s)}$, and also the following more complexe alternating series, that I also read in this document or D.V. Widder, Laplace Transform book.

$$\zeta(s)=\frac{1}{1-3^{1-s}}\sum_{n=1}^{\infty}\left ( \frac{1}{(3n-2)^s} + \frac{1}{(3n-1)^s} -\frac{2}{(3n)^s}\right )$$

It looks like promising but no orientation as P.Borwein with Chebychev polynomials. I did not succeed in identifying any paper, so if anyone can help…

Does a similar fast method with error evaluation exist for this expression? If no, I guess that Euler Maclaurin summation method will work but I will need to investigate it to understand.

Thanks in advance!

2 Answers2

1

If $1-2^{1-s}=0$ and $s\ne 1$ then $$\zeta(s)\log 2= (\zeta(s)(1-2^{1-s}))'=\frac{1}{d_0}\sum_{k=1}^{n}\frac{(-1)^{k}d_k}{k^s}\log k+\gamma_n(s)\log 2$$

For $z$ near such a $s$ you get that $(\zeta(z)(1-2^{1-z}))'$ is close to $\zeta(z)\log 2$, where near and close relies on a bound for $|\zeta'(1+it)|$ obtained from a bound for $|\zeta(\sigma+it)|$.

reuns
  • 77,999
0

Here are two formulas for the Riemann zeta-function: $$ \zeta(s) = \frac{\zeta_2(s)}{1 - 2/2^s} = \frac{\zeta_3(s)}{1 - 3/3^s}, $$ where $$ \zeta_2(s) = 1 - \frac{1}{2^s} + \frac{1}{3^s} - \frac{1}{4^s} + \frac{1}{5^s} - \frac{1}{6^s} + \dots $$ and $$ \zeta_3(s) = 1 + \frac{1}{2^s} - \frac{2}{3^s} + \frac{1}{4^s} + \frac{1}{5^s} - \frac{2}{6^s} + \frac{1}{7^s} + \frac{1}{8^s} - \frac{2}{9^s} + \dots, $$ are series that converge for ${\rm Re}(s) > 0$. It appears that you are using the first formula with some accelerated version of the series for $\zeta_2(s)$ and you also mention awareness of the second formula. Have you tried to accelerate the convergence of $\zeta_3(s)$? Maybe Section 3 here could be helpful.

The denominator $1 - 2/2^s$ vanishes when $s = 1 + 2\pi ik/\log 2$ and the denominator $1 - 3/3^s$ vanishes when $s = 1 + 2\pi i\ell/\log 3$, for integers $k$ and $\ell$. No number has both forms except $s = 1$, which is a pole of the zeta-function. So away from $s = 1$ you can use the formula for $\zeta(s)$ in terms of $\zeta_3(s)$ is $s$ is close to a zero of $1 - 2/2^s$.

KCd
  • 46,062
  • This why I find this $\zeta_3$ promising, but I discovered "acceleration" by reading P.Borwein paper, and I'm far from being expert. I'm going to read your document, but do you know already $\zeta_3$ acceleration proposal ? – Matthieu P Dec 29 '20 at 11:47
  • No. Moreover, I suggest you consider another way to compute $\zeta(s)$ that is rapidly convergent: use the integral representation for the completed zeta-function $\pi^{-s/2}\Gamma(s/2)\zeta(s)$. Then multiply by the entire function $\pi^{s/2}(1/\Gamma(s/2))$ to get the value of $\zeta(s)$. – KCd Dec 29 '20 at 17:16