Poisson Summation and Theta Functions

Here is a small miracle that sits at the heart of analytic number theory. Take any nice function f, sample it at every integer, and add up the values: \sum_{n\in\mathbb{Z}} f(n). Now do the same thing to its Fourier transform \hat f. You get the same number. That is the Poisson summation formula, and it is the hinge on which the functional equation of the Riemann zeta function turns.

The route is beautiful and short. Poisson summation, fed the humble Gaussian bell curve, produces a hidden symmetry of Jacobi's theta function \theta(t) — a symmetry swapping t and 1/t. Then a Gamma-flavoured integral (a Mellin transform) turns that t \mapsto 1/t symmetry into the celebrated s \mapsto 1-s reflection of \zeta. This page walks the first two steps; the payoff is the functional equation.

Fixing a convention for the Fourier transform

Before we can state anything cleanly, we must pin down what \hat f means — and there is more than one popular convention. Throughout this page we use the "clean" normalisation, the one that makes Poisson summation coefficient-free:

\hat f(\xi) = \int_{-\infty}^{\infty} f(x)\, e^{-2\pi i x \xi}\, dx.

The 2\pi lives up in the exponent, so no stray factors leak out front. In this convention the transform is beautifully symmetric: \widehat{\hat f}(x) = f(-x), and — the fact we will exploit — the Gaussian is its own transform. Keep this exact formula in mind; the "other" convention (with e^{-i x\xi}) shifts factors of 2\pi all over the place.

The Poisson summation formula

Let f be a Schwartz function (smooth, with all derivatives decaying faster than any power). Then

\sum_{n\in\mathbb{Z}} f(n) \;=\; \sum_{n\in\mathbb{Z}} \hat f(n),

and more generally, summing over a shifted lattice, \displaystyle\sum_{n\in\mathbb{Z}} f(x+n) = \sum_{k\in\mathbb{Z}} \hat f(k)\, e^{2\pi i k x}.

Read it slowly: a sum of samples of f equals a sum of samples of \hat f. If f is spread out (fat bell), its transform \hat f is concentrated (thin spike), so one side is a slow-decaying sum and the other converges in a flash — which is exactly why the identity is so useful for computation: pick whichever side converges faster.

Why it is true: periodise, then expand

The proof is a two-line idea dressed up. Step 1 — periodise. Wrap f around a circle of circumference 1 by piling up all its integer shifts:

F(x) = \sum_{n\in\mathbb{Z}} f(x+n).

By construction F(x+1) = F(x) — it is a periodic function, so it has a Fourier series. Step 2 — read off the coefficients. The k-th Fourier coefficient of F is

c_k = \int_0^1 F(x)\, e^{-2\pi i k x}\,dx = \int_0^1 \sum_{n} f(x+n)\, e^{-2\pi i k x}\,dx = \int_{-\infty}^{\infty} f(x)\, e^{-2\pi i k x}\,dx = \hat f(k),

where we unrolled the sum-of-shifts over [0,1] back into a single integral over the whole line (the "unfolding" trick). So F(x) = \sum_k \hat f(k)\,e^{2\pi i k x}. Step 3 — evaluate at x=0:

\sum_{n} f(n) = F(0) = \sum_{k} \hat f(k). \qquad\blacksquare

The Schwartz hypothesis is what makes every step legal: rapid decay lets the periodised series F converge uniformly, and smoothness makes its Fourier series converge back to it pointwise. Without decay, both sides can diverge and the identity is meaningless.

The magic input: the Gaussian is self-dual

Now feed Poisson the one function every analyst keeps in a holster. The unit Gaussian e^{-\pi x^2} is a fixed point of the Fourier transform:

\widehat{e^{-\pi x^2}}(\xi) = e^{-\pi \xi^2}.

Rescale it. For a "temperature" parameter t>0, let f(x) = e^{-\pi t x^2} — a bell that gets narrower as t grows. Fourier stretches inversely to x, and the 2\pi convention keeps the constant tidy:

f(x) = e^{-\pi t x^2} \quad\Longrightarrow\quad \hat f(\xi) = \frac{1}{\sqrt{t}}\, e^{-\pi \xi^2 / t}.

Notice the trade: a wide bell (small t) transforms to a narrow bell (large 1/t), and the height picks up a 1/\sqrt t. This single t \leftrightarrow 1/t swap, run through Poisson summation, is the whole game.

Out pops Jacobi's theta transformation

Apply Poisson summation to f(x) = e^{-\pi t x^2}. The left side is a sum of Gaussians at the integers; the right side is a sum of the transformed Gaussians:

\sum_{n\in\mathbb{Z}} e^{-\pi t n^2} \;=\; \sum_{n\in\mathbb{Z}} \frac{1}{\sqrt t}\, e^{-\pi n^2 / t}.

Give the left-hand sum a name — this is Jacobi's theta function:

\theta(t) = \sum_{n\in\mathbb{Z}} e^{-\pi n^2 t} = 1 + 2\sum_{n\ge 1} e^{-\pi n^2 t}.

The right-hand sum is exactly \tfrac{1}{\sqrt t}\,\theta(1/t). So the Poisson identity reads \theta(t) = \tfrac{1}{\sqrt t}\,\theta(1/t), which rearranges into the famous theta transformation law:

\theta\!\left(\frac{1}{t}\right) = \sqrt{t}\;\theta(t), \qquad t>0.

This is a modular relation: it ties the behaviour of \theta for small t to its behaviour for large t. As t\to\infty, every term but n=0 dies and \theta(t)\to 1; the transformation then tells us instantly how \theta blows up as t\to 0^+, namely like 1/\sqrt t. We got the hard end for free from the easy end.

Seeing the symmetry: the self-dual point t = 1

Plot \theta(t) (falling toward 1) against \sqrt t\,\theta(t) (rising). Because \sqrt t\,\theta(t) = \theta(1/t), the second curve is just the first one viewed through the mirror t\mapsto 1/t. The two curves must cross exactly where \sqrt t = 1 — that is, at t=1, the self-dual point where the Gaussian e^{-\pi x^2} equals its own transform.

At the crossing, \theta(1) = \sqrt 1\,\theta(1) is automatically satisfied — the transformation law becomes the tautology \theta(1)=\theta(1), so t=1 is a fixed point, not a coincidence. Numerically \theta(1) = 1 + 2(e^{-\pi} + e^{-4\pi} + \cdots) \approx 1.0864348.

Worked example: check the transformation numerically

Let's verify \theta(1/t) = \sqrt t\,\theta(t) at a specific pair. Take t=2, so 1/t = \tfrac12. The theta series converge geometrically fast, so a handful of terms nails several digits. We compute both \theta(\tfrac12) directly and \sqrt 2\,\theta(2), and confirm they agree:

// θ(t) = 1 + 2 Σ_{n≥1} e^{-π n² t} — converges very fast for t not too small. function theta(t: number): number { let sum = 1; for (let n = 1; n <= 40; n++) { const term = Math.exp(-Math.PI * n * n * t); sum += 2 * term; if (term < 1e-15) break; } return sum; } const t = 2; const lhs = theta(1 / t); // θ(1/2) const rhs = Math.sqrt(t) * theta(t); // √2 · θ(2) console.log("θ(1/2) =", lhs); console.log("√2 · θ(2) =", rhs); console.log("difference =", Math.abs(lhs - rhs)); // And the self-dual identity at t = 1 is exact by construction: console.log("θ(1) =", theta(1)); console.log("√1 · θ(1) =", Math.sqrt(1) * theta(1));

The two numbers match to full precision: \theta(\tfrac12) = \sqrt 2\,\theta(2) \approx 1.4194957. The transformation is not an approximation — it is an exact identity, and the tiny "difference" you see is only floating-point rounding. Poisson summation delivered a genuine equality between an infinite sum and a rescaled infinite sum.

Convergence is not automatic. Poisson summation needs f to decay and be smooth — Schwartz is the safe home. A function that decays but is jagged (or is smooth but decays only like 1/x^2) can make one side converge while the Fourier series on the other side misbehaves at a point; the clean equality can fail. The Gaussian is the platonic ideal: infinitely smooth and super-exponentially small, so every step of the proof holds with room to spare.

The convention bites. With our normalisation \hat f(\xi)=\int f(x)e^{-2\pi i x\xi}dx, Poisson is coefficient-free: \sum f(n) = \sum \hat f(n). Switch to the physicists' convention \tilde f(\omega)=\int f(x)e^{-i x\omega}dx and the very same identity becomes \sum_n f(n) = \tfrac{1}{?}\sum_k \tilde f(2\pi k) — factors of 2\pi reappear and the sampling lattice on the transform side rescales. Same theorem, different bookkeeping. Always check which \hat f an author means before trusting a stray constant.

Here is the bridge, in outline. Feed the theta tail \psi(t) = \sum_{n\ge 1} e^{-\pi n^2 t} = \tfrac12(\theta(t)-1) into a Mellin transform against t^{s/2}. Term by term, each Gaussian integrates to a Gamma factor, \int_0^\infty e^{-\pi n^2 t}\,t^{s/2}\,\tfrac{dt}{t} = \pi^{-s/2}\Gamma(\tfrac s2)\,n^{-s}, so summing over n assembles the completed zeta function

\xi(s) = \pi^{-s/2}\,\Gamma\!\left(\tfrac s2\right)\zeta(s) = \int_0^\infty \psi(t)\, t^{s/2}\,\frac{dt}{t}.

Now split the integral at t=1 and, on the piece from 0 to 1, substitute t\mapsto 1/t and apply \theta(1/t)=\sqrt t\,\theta(t). The theta transformation converts s into 1-s under your very eyes, and the algebra collapses to the symmetric statement \xi(s) = \xi(1-s). That single line — a reflection of the completed zeta across s=\tfrac12is the functional equation of \zeta. The t\mapsto 1/t symmetry of a bell curve became the s\mapsto 1-s symmetry of the primes' generating function.

The whole chain, at a glance

Every link is elementary once you have Poisson summation. That is why this formula — barely more than "periodise and expand in a Fourier series" — is treated as one of the crown jewels of the analytic toolkit: it converts a symmetry you can see (a bell curve equal to its own transform) into a symmetry you could never have guessed (the reflection law hiding inside \zeta).