Riemann, though, was after bigger fish. He didn’t just want an error term. He wanted an exact formula for \(\pi(x)\text{,}\) one that could be computed. Computed by hand, or by machine, if such a machine came along, as close as one pleased. And this is where \(\zeta(s)\) becomes important, because of the Euler product formula:

Somehow \(\zeta\)does encode everything we want to know about prime numbers. And Riemann’s paper, “On the Number of Primes Less Than a Given Magnitude^{ 2 }”, is the place where this magic really does happen. (The paper is also available in translation in the appendix of [E.4.4].) Seeing just how it happens is our goal to close the book.

We’ll begin by plotting \(\zeta\text{,}\) to see what’s going on. As you can see, \(\zeta(s)\) doesn’t seem to hit zero very often. Maybe for negative \(s\) …

Subsection25.3.1Zeta beyond the series

Wait a minute! What was that plot? Shouldn’t \(\zeta\) diverge if you put negative numbers in for \(s\text{?}\) (Recall our definition in Definition 24.2.1.) After all, then for \(s=-1\) we’d get things like

\begin{equation*}
\sum_{i=1}^\infty n
\end{equation*}

and somehow I don’t think that converges.

But it turns out that we can evaluate \(\zeta(s)\) for nearly any complex number \(s\) we desire.

The right-hand graphic gives a color to every point in the complex plane. The left-hand graphic then color-codes the outputs of \(\zeta\) at each point in the plane by matching them to the appropriate color (as a complex number) for the output.

The important point here isn’t the picture itself, but that there is a picture. To wit, \(\zeta\) can be defined for (nearly) any complex number as input. Why would that be the case? One way to see that we could define this function for complex values comes by trying to define each term \(\frac{1}{n^s}\) in \(\zeta(s)=\sum_{n=1}^\infty \frac{1}{n^s}\) more precisely.

Suppose we let \(s\) be a complex number, using the long-standing notational convention

Using this analysis, if \(\sigma>1\text{,}\) since \(\cos\) and \(\sin\) always have absolute value less than or equal to one, we still have the same convergence properties as with regular series. So if we take the imaginary and real parts separately, we can rewrite

That doesn’t explain the part of the complex plane to the left of \(\sigma=1\) of the picture above. All I will say is that it is possible to extend \(\zeta\) there, and Riemann did it. (In fact, Riemann is largely responsible for advanced complex analysis.) As an example, \(\zeta(-1) = -\frac{1}{12}\text{,}\) which is very close to saying that

Let’s get a sense for what the \(\zeta\) function looks like. First, observe a three-dimensional plot of its absolute value for \(\sigma\) between 0 and 1 (which will turn out to be all that is important for our purposes). The code for this is plot3d(lambda x,y: abs(zeta(x+i*y)),(0,1),(-20,20), plot_points=100) + plot3d(0, (0,1), (-20,20), color='green',alpha=.5).

To get a better idea of what is happening, we next compare two different plots (first static, then interactive). One is a one-dimensional plot of \(\left|\zeta\right|\) for different inputs with the same \(\sigma\text{.}\) On the other side is the two-dimensional colored complex plot of \(\zeta(\sigma+it)\text{,}\) where \(\sigma\) is the real part, chosen by you, and then we plot \(t\) out as far as requested. The line which we are viewing on the complex plane in the first graphic is dashed in the second one.

You’ll notice that the only places the function has absolute value zero (which means the only places it hits zero) are when \(\sigma=1/2\text{.}\)

Remark25.3.5.

It is not really possible to fully visualize a complex function of complex input. So we often pick some line in the complex plane, such as where the real part equals 1 (sort of like \(x=1\)) or where the imaginary part equals 1 (sort of like \(y=1\)); then we either treat this as input to a parametric curve, or similarly look at the output and in one way or another reduce it to one real number, and plot it in the plane.

Another way to visualize \(\zeta\) in a useful way is with the parametric graph of each vertical line in the complex plane as mapped to the complex plane. You can think of this as where an infinitely thin slice of the complex plane is “wrapped” to.

This image is reasonably famous, because the only time the curve seems to hit the origin at all is precisely at \(\sigma=1/2\text{,}\) and at \(\sigma=1/2\) the curve seems to hit the origin lots of times. For any other \(\sigma\) the curve just misses the origin, somehow, which I highly encourage you to try interactively below.

Now it’s true that \(\zeta\) is also zero at negative even integer input, but these are well understood. The pictures demonstrate the mysterious part. And so we have the following crucial question – where is \(\zeta(s)=0\text{?}\)

Conjecture25.3.7.Riemann Hypothesis.

All the zeros of \(\zeta(s)=\zeta(\sigma+it)\) where \(t\neq 0\) are on \(\sigma=1/2\text{.}\)

The importance of this problem is evidenced by it having been selected as one of the seven Millennium Prize^{ 4 } problems by the Clay Math Institute (each holding a million-dollar award), as well as having many recent popular books devoted to it^{ 5 }. My feeling is that any number theory course should at least briefly give a taste of its significance, even though the full scope is beyond any first course.