This report presents specific results which were obtained during the numerical verification of the Riemann Hypothesis. Therefore, we recommend the reader to study the four papers by Brent , Brent et al. , and van de Lune et al. ,  for an easy understanding of this report and the notation.
Starting in Febrary 2001, we transferred the source code of van de Lune, te Riele, and Winter  from FORTRAN/COMPASS to C++, enabling us to use the program on different workstations and PCs. Similarly, our program used a very fast and efficient method and a 120 times slower but very accurate method. Especially for the x86 processor and the fast method, the evaluation of the sum
was written in Assembler which is part of the Riemann-Siegel formula for the real-valued function Z(t) with accurate IEEE floating-point arithmetic, since this needs about 78.7% of the running time. About 21% of the running time was spent for the slower method on evaluating Z(t) with twice the precision of IEEE double (106 mantissa bits) using Briggs’ C++ doubledouble package . Our main difference in the fast method is that we evaluate a rigorous lower and upper bound for Z(t) simultaneously, which made the error analysis more simple than the error analysis of the paper . Let (t,k) be the computed value of l(t,k) and let (d) be the approximated cosine-values of cos(2 . d/220) for 0 < d < 220 then the value of L(t) is between
Mainly, the strategy in our program of searching for sign changes of Z(t) in Rosser blocks of length greater than or equal to 2 based on the method of Rosser et al.  where many details are described in . Therefore, the average number of Z-evaluations, needed to separate a zero from its predecessor, is about 1.26 which is nearly the same as in . The different search routines which determine the missing zeros in a Rosser block by Rosser’s rule are improved by recognizing a local minimum and maximum value of Z(t) in the search interval before using a grid of increasing refinement to search again in the same interval, if the “missing two” (zeros) are not found. Moreover, to handle the failures to Rosser’s rule, we used a simple method which searches for two additional sign changes in the previous two Rosser blocks Bn-1, Bn-2 and the next two Rosser blocks Bn+1, Bn+2 in zig-zag manner - moving from the center of the blocks towards their periphery - if an exception to Rosser’s rule occurs in the Rosser block Bn. If the method looks just in one previous Rosser block, then we have the first exception for n = 53,365,784,979 (S(t) = 3.0214). Also, if the method looks just in one next Rosser block, then we have the first exception for n = 67,976,501,145 (S(t) = -3.2281).
In August 2001, we started the project “ZetaGrid” as Internet Computing inside the Intranet of IBM Corporation , and in August 2002, we extended this project for the Internet. So that there are more than 800 office computers/notebooks involved in this computation. These computers spend all of their idle time to the computation. Beside the mathematical correctness of this computation, the main challenges in the ZetaGrid computations were data management, data analysis, and social factors.
An historical overview of the number of computed zeros gives the following table:
|1903||J. P. Gram||||15||65.801|
|1914||R. J. Backlund||||79||199.649|
|1925||J. I. Hutchinson||||138||300.468|
|1935||E. C. Titchmarsh||||1, 041||1, 467.477|
|1953||A. M. Turing||||1, 104||1, 539.742|
|1956||D. H. Lehmer||||15, 000||14, 041.137|
|1956||D. H. Lehmer||||25, 000||21, 942.593|
|1958||N. A. Meller||||35, 337||29, 750.168|
|1966||R. S. Lehman||||250, 000||170, 570.745|
|1968||J. B. Rosser, J. M. Yohe,|
|L. Schoenfeld||||3, 500, 000||1, 893, 193.452|
|1977||R. P. Brent||||40, 000, 000||18, 114, 537.803|
|1979||R. P. Brent||||81, 000, 001||35, 018, 261.243|
|1982||R. P. Brent, J. van de Lune,|
|H. J. J. te Riele, D. T. Winter||||200, 000, 001||81, 702, 130.190|
|1983||J. van de Lune, H. J. J. te Riele||||300, 000, 001||119, 590, 809.282|
|1986||J. van de Lune, H. J. J. te Riele,|
|D. T. Winter||||1, 500, 000, 001||545, 439, 823.215|
|2001||J. van de Lune||||10, 000, 000, 000||3, 293, 531, 632.415|
In 1988, a faster method for simultaneous computation of large sets of zeros of the zeta function was invented by Odlyzko and Sch¨onhage . It has been implemented and used to compute 175 . 106 zeros near zero number 1020, 10 billion zeros near zero number 1022 and about 20 billion zeros near zero number 1023 (see , and ).
During the course of the verification of H(75,039,937,803) we accumulated various
statistics which are a continuation of the four papers by Brent , Brent et al. , and
van de Lune et al. , .
Some of these results are important for other papers, e.g. Odlyzko .
Our program did not explicitly search for pairs of close zeros of Z(t), but all small values of Z(t) which were computed by the more accurate method are printed out in logging files. Parsing all these logging files, we observed that the Rosser block Bn of length 2 and of zero-pattern “0 2” contains the closest pair of zeros for n = 60,917,681,408 in the interval [g0,g75,039,937,803)1. The distance between these two zeros is about 0.0001008. Comparing their distance with the quantity 2/ln(tn) which is a natural measure on the distance of two consecutive zeros tn and tn+1 of Z(t), we have
The following figure presents a graph of Z(t) in the interval [gn,gn+1):
Our program prints out all zero-patterns in files. Parsing all these files for the exceptions to Rosser’s rule with zero-pattern “0 0 0 0,” we found the following Gram indices
where the zero-pattern “0 0 0 0” is in the interval [gn,gn+4). Observing these numbers we found the largest distance between two zeros with a large positive value in the middle of these two zeros for n = 4,020,755,336 which is greater than 1.33805, and with a large negative value in the middle of these two zeros for n = 4,219,726,751 which is greater than 1.34254, respectively. A zero-pattern “0 0 0 0 0” has not yet been found, neither 5 zeros in 1 Gram interval. The following figure presents a graph of Z(t) in the interval [gn-2,gn+5) for n = 4,020,755,336:
Our program did not explicitly search for large absolute values of Z(t), although we searched for large values in the intervals with zero-pattern “0 0 0 0.” In these intervals, we found the largest positive value
for n = 63,052,468,321, and the largest negative value
for n = 25,304,589,019.2 The following figure presents a graph of Z(t) in the interval [gn-1,gn+5) for n = 50,740,831,994:
There exist a positive extreme value S(t) = 3.0214 for n = 53,365,784,979.
The following two tables give the number of Rosser blocks of length k in the interval [g0,g75,039,937,803) for strings of 1010 successive Gram intervals J(k,n + 1010) - J(k,n):
Let M(P) be the set of all Gram indices where the Rosser block has the zero-pattern P. Then the following three tables give the number and the first occurrences of a Rosser block with zero-pattern P in the interval [g0,g75,039,937,803)3:
The heuristic of van de Lune, te Riele, Winter  is also valid for higher ranges, i.e. the tendency of the so-called “missing two zeros” in Rosser blocks of length between 3 and 7, to lie in one of the two outer Gram intervals of the Rosser block.
First and foremost, I thank my managers Herbert Kircher, J¨org Thielges, Reinhold Krause, and Ralf Grohmann at IBM. They have given me all support needed to make this computing effort possible. I also wish to thank Andrew M. Odlyzko, Herman J. J. te Riele and Jan van de Lune for many useful suggestions. Finally, I gratefully acknowledge the participation of more than 380 persons in ZetaGrid .
 K. M. Briggs, C++ software package ’doubledouble’, available at <http://www.btexact.com/people/briggsk2/doubledouble.html> or alternatively <http://more.btexact.com/people/briggsk2/doubledouble.html>.
 A. M. Odlyzko, The 1022-nd zero of the Riemann zeta function, in M. van Frankenhuysen, M. L. Lapidus (Eds.): Dynamical, Spectral, and Arithmetic Zeta Functions, American Mathematical Society, Contemporary Mathematics, volume 290 (2001), 139-144.
E-mail address: firstname.lastname@example.org