A network has its own primes, its own zeros and its own Riemann Hypothesis, and all three can be computed outright. Build one, break it, sort a thousand, then set the real zeta function on the same bench.
the whole numbersζ(s) = ∏ primes p 1 ⁄ (1 − p−s) a networkZ(u) = ∏ prime loops 1 ⁄ (1 − ulength) One recipe, used twice. A prime loop is a round trip through the network that is not a shorter round trip repeated.
Dots joined by connections. A prime loop is a round trip that never turns straight back and is not a shorter trip repeated. Send a pulse through the same network, never turning straight back, and it breaks down into a fixed set of patterns, called modes, much as a bell’s sound is made of a fixed set of tones. Each mode grows by its own factor at every step and turns at its own pace. Those rates are the zeros.
| Length | Prime loops | Round trips, counted by walking | Round trips, from the zeros alone |
|---|
A round trip of length m is a prime loop of that length started from any of its steps, or a shorter prime loop repeated. The last column is zero1m + zero2m + ⋯ over every zero in the picture above, and uses nothing else.
Start with two separate worlds. Each has its own main term at σ = 1. Now cut one connection in each world and rejoin the four loose ends across the gap. That makes two bridges and leaves every dot with as many connections as before. Do it again and again. One of the two main terms has to go somewhere.
Draw networks at random, every one with the same number of dots and the same number of connections at each dot, and sort them by whether they pass. Every world is drawn by the same recipe. Which ones pass is decided only by how the connections happen to fall.
| World | Stress | Verdict | Triangles | Squares | Length 5 | Widest distance |
|---|
Here each triangle, square or loop of length 5 is counted once. The census in Build counts each direction separately, so it shows twice as many.
The 69% is the value the share settles toward as worlds grow very large. At sizes a browser can sort, more pass, and the share falls slowly as the worlds grow: in check runs behind this page, 86% of worlds with 100 dots and 3 connections at each passed, 80% at 400 dots and about 78% at 1,000. “Give or take” is one standard error. A world can fail on two sides. On the splitting side its worst mode has two halves of the world swinging against each other, and in the extreme the world comes apart in two. On the checkerboard side neighbours swing against each other, and in the extreme every connection joins one colour to the other.
Left, the world from Build. Right, the whole numbers. The same two formulas run in both columns: zeros rebuild the count of primes, and primes rebuild the zeros.
| A network world | The whole numbers | |
|---|---|---|
| Primes | Prime loops. Their lengths are whole numbers: 3, 4, 5, … | 2, 3, 5, 7, … Their lengths are log 2, log 3, log 5, … |
| The count | Round trips of length m | ψ(x): add log p for every prime power up to x (a running total) |
| Smooth part | qm, from the main term. q is one less than the connections at each dot. | x, from the pole at 1 |
| The wiggle | one wave for each zero, growing like qmσ | one wave for each zero, growing like xσ |
| The hypothesis | no wave has σ above ½. Where every dot has the same number of connections, every wave that counts then has σ = ½ exactly. Decided by a finite calculation; true for some worlds and false for others. | every wave has σ = ½. Open since 1859. |
| How many zeros | a finite list, repeating up the strip | infinitely many, growing more crowded with height |
| Where the zeros come from | the network. They are its modes. | No object is known that would hold them on the line. |
One sign differs. In a network the special points are where its zeta function blows up, so round trips are counted as the smooth part plus the waves. For the whole numbers they are where zeta vanishes, so primes are counted as the smooth part minus the waves. The next station shows that sign: the echoes of plain loops point up, and zeta’s point down.
If something belongs in the open box, it has to ring at the zeros of zeta, and those zeros leave fingerprints. Three of them can be measured on any list of notes. Pick a structure, or paste a list of your own, and compare it with zeta’s zeros in gold.
| Structure | Gaps | Echoes | Crowding |
|---|
Each row is measured live with the same three instruments. Getting one fingerprint right is not hard. None of the four structures built into this bench gets all three. Getting all three would still not be enough: a proof along these lines needs an object that holds the zeros on the line, and none is known. Other lines of attack on the Riemann Hypothesis do not need such an object at all.
Each step sets up one of the stations above and jumps to it, with a note here on what to look for. After that the controls are yours.
Everything is computed in your browser. A world’s zeros come from the eigenvalues of a table built from its connections. Round trips are counted by exact whole-number arithmetic and compared with the zeros every time. Random worlds are drawn uniformly by pairing loose ends and starting again whenever a dot would join itself or join another dot twice, or the world comes out in more than one piece. The first 10,000 zeros of zeta are stored to six decimals. They were located with the Hardy Z function and checked against a second, independent program. In the gaps charts the two curves for woven systems are Wigner’s formulas, close stand-ins for the exact laws. The 0.035 cut-off for a match is this page’s rule of thumb, not a statistical test. The first 10,000 zeros of zeta sit 0.028 from the direction law because low zeros keep slightly more even gaps than the law says, and the fit is known to improve higher up. The count of zeta’s zeros rebuilt from primes is a close approximation, not an exact formula: sums over primes do not settle on the ½ line, so the page fades the larger primes out and stops where the slider stops. An echo is a weighted sum over the notes, with the lowest notes weighted most. For the loop candidates that weighting leaves the same small offset at every length, and the page takes it off. In Break, if more than one zero lies beyond the line on the splitting side, the splitting mode is taken to be the one that best follows the two halves. The loops joined at one core use the simplest junction, one shared channel that every loop feeds and is fed by, and other junctions would give other notes. The network zeta function is named after Ihara, and the count with the smooth part taken out is the network’s version of Riemann’s explicit formula.