Open rudolph-git-acc opened 6 years ago
(Note that this procedure counts zeros in the critical strip without actually verifying RH. Turing's method is the way to go for actually counting or computing zeros efficiently.)
I think there is more than one place in the code that needs to be fixed, but one issue is that the cutoff between Riemann-Siegel and Euler-Maclaurin only looks at the midpoints, ignoring whether the complex interval is very wide.
Thanks for the swift response and of course counting zeros in the strip is not sufficient for verifying the RH.
There does exist a closed form for counting zeros on the critical line that evaluates pretty fast at high T (did it up to T=10^20). It appears to be the contour integration for counting zeros in the critical strip that becomes the bottleneck at higher T. Wouldn't comparing both counts also verify the RH up to a certain T (assuming there is no zero at T itself)?
What do you mean by closed form?
I meant this function for counting zeros on the critical line:
Agree it is not really a closed form, however wanted to make the point that it does evaluate reasonably fast even at very high T in ARB. Since it also involves the zeta-function, I wondered whether the contour calculations around the strip (from your paper) could also be stretched further beyond 10^9. For our project we have now produced numerical results that are conditional on the RH being verified up till certain T's in the T > 10^10 domain. However, having now read more about root counting and finding, I agree that the way to go is Turing's method, since that doesn't require such contour integration at all.
EDIT: I had mistakenly assumed that the formula above counted zeros on the critical line, however it counts zeros in the entire strip. Counting zeros on the critical line at higher T is very hard work...
In your recent paper on numerical integration in arbitrary-precision ball arithmetic (https://arxiv.org/pdf/1802.07942.pdf), you present a highly effective procedure to count the non-trivial zeros of the Riemann Zeta function. I have tried the associated code from the ARB-examples and am really impressed by the speed of the calculations up to T=10^9 (which is already pretty close to the RH-verication up to T=3x10^10 done by Platts et al)!
In your paper you make the comment:
I have tried computing values > 10^9 and indeed as you predicted things suddenly start to get very slow. Selecting a higher eps does dramatically speed up the integration along the vertical line, however we then pay the prize in increased complexity in evaluating the horizontal line.
Is further tuning of ζ(s) in Arb for higher T in your plans? If so, could you share your thoughts on how such tuning might work?