The Collision Fluctuation Sum
The collision deviations, summed over primes, drift downward at the Mertens rate. The drift has a sign, a constant, and a structural origin in the digit function.
I added up the collision deviations for the first hundred primes past ten. The total came out negative.
I added up the first thousand. Still negative, and larger.
I added up the first ten thousand. Larger still.
The deviations were not cancelling. They were accumulating, slowly but steadily, in the negative direction. The more primes I added, the further the total drifted from zero.
Each prime has a collision count, the number of digit positions where its repetend matches a shifted copy of itself. That count sits close to its expected value of roughly $p/10$. The difference between the actual count and the expected value is a small signed number, sometimes positive, sometimes negative, sometimes zero. Add up a thousand of these small differences and you would expect the positives to cancel the negatives. The total should hover near zero. That is what random fluctuations do.
These fluctuations were not doing it. The sum was drifting, and the drift had a shape.
The drift
The rate is $\log \log x$, the iterated logarithm. It is the slowest-growing function in ordinary analysis. Between a million and a trillion, it increases by less than one. You have to walk through truly enormous stretches of primes to see it move at all.
Here is the accumulation across all primes up to ten million in base ten at lag one:
primes scanned largest prime accumulated sum sum / log log p
-------------- ------------- --------------- ---------------
1,000 7,951 -1.37 -0.623
10,000 104,779 -1.60 -0.652
100,000 1,299,811 -1.77 -0.671
664,574 9,999,991 -1.90 -0.682
The third column is the fluctuation sum, drifting slowly downward. The fourth column divides the sum by $\log \log p$, asking whether the drift is proportional to the iterated logarithm. If it is, the fourth column should settle toward a constant. It does. The ratio drifts toward $0.68$, slowing as it climbs.
The collision fluctuation grows at the Mertens rate, the same rate at which the classical prime harmonic series $\sum 1/p$ diverges. Franz Mertens proved in 1874 that $\sum_{p \le x} 1/p = \log \log x + M + o(1)$ where $M$ is a specific constant. The collision fluctuation sum grows at the same shape. The digit function's deviations accumulate with the same weight as the primes themselves.
Bilateral parity
Before going further into the drift, there is a structural fact underneath it that constrains everything that follows.
The collision count is always even.
At every prime. For every multiplier. In every base. The count is always $0$, or $2$, or $4$, or $6$. Never $1$, never $3$, never $5$, never $7$. Always even. No exceptions.
The proof is short. Take a prime $p$ and a multiplier $g$. Suppose a residue $r$ is a collision, meaning $r$ and $gr$ have the same leading digit. Look at the complement of $r$, which is $p - r$. This is always a different residue, since $p$ is odd and greater than $2$. The complement map sends digit $d$ to digit $b - 1 - d$: the leading digit of $(p - r)/p$ is the nines-complement of the leading digit of $r/p$. Multiplication by $g$ does the same thing to $p - r$ that it did to $r$, because multiplication commutes with the complement map. So if $r$ and $gr$ have the same leading digit, then $p - r$ and $g(p-r)$ also have the same leading digit.
Every collision has a partner. The collision at $r$ is paired with the collision at $p - r$. The two are always different residues. The collisions come in pairs, and the total count is even.
I call this the bilateral parity theorem. It forces the collision count $C(g)$ to be even, forces the integer $S = C - Q$ to share the parity of $Q$, and runs through every later piece of the program like a load-bearing beam.
The four families
The persistent downward drift is not the same at every prime. Primes in different spectral families carry different biases.
In base ten there are four families. Primes ending in $1$, $3$, $7$, and $9$. Each family has its own per-family average deviation. Here are those averages, computed across all primes up to ten million.
last digit mean deviation
---------- --------------
1 -1.70
3 -1.11
7 -0.68
9 -0.12
All four are negative. That is why the sum drifts downward. But the biases are not the same.

Look at the family of primes ending in $7$. Its mean deviation is $-0.68$. Round that to two digits and you get $-0.67$, which is $-2/3$.
The constant $2/3$.
The same $2/3$ that appeared in Why the Golden Ratio Selects the Prime Three as the alignment limit of the prime $3$, the threshold the golden ratio selected through the factorization of a self-referential cubic. The constant from the opening of this program. It shows up here, in a completely different context, as the per-family collision bias of the digit-$7$ family.
I did not put it there. I did not expect it. The digit function computed it, and the golden ratio's constant was sitting inside the answer.
The centering
The sum drifts. Here it is again:
primes raw sum
------ -------
1,000 -1.37
10,000 -1.60
100,000 -1.77
664,574 -1.90 ← still going
A divergent sum is a divergent sum. But the drift has structure. Here is the same sum computed at different exponents in the weighting. Instead of dividing each deviation by $p$ (exponent $s = 1$), try dividing by $p^{1.2}$ or $p^{1.5}$, which gives large primes less weight, or by $p^{0.9}$ or $p^{0.5}$, which gives them more:
primes s = 1.5 s = 1.2 s = 1.0 s = 0.9 s = 0.5
------ ------- ------- ------- ------- -------
100 -0.17 -0.47 -1.07 -1.42 -6.97
500 -0.18 -0.55 -1.28 -2.02 -17.0
1000 -0.18 -0.56 -1.37 -2.17 -21.4
2000 -0.18 -0.57 -1.45 -2.30 -26.0
At $s = 1.5$ and $s = 1.2$, the values stabilize. The sum converges. At $s = 1.0$, the values drift slowly at the Mertens rate. At $s = 0.9$ and $s = 0.5$, the values run away. The boundary between settling and running sits at exactly $s = 1$.

Now look at the per-family biases again. Every family pulls the sum downward, but by different amounts, and those amounts depend only on the prime's last digit. You do not need the collision count to know them. You do not need the repetend, the bin size, or the multiplier. You need the last digit alone, and that tells you the bias.
So subtract the per-family average from each deviation before adding it to the running total. Keep only the part specific to the individual prime, the part no last-digit table could have predicted.
Here is the operation for one prime from each family.
prime last digit raw deviation family bias centered
----- ---------- ------------- ----------- --------
101 1 -1.7 -1.70 0.0
503 3 -2.3 -1.11 -1.2
97 7 -3.6 -0.68 -2.9
409 9 +0.5 -0.12 +0.6
The centered deviations are smaller. Some are positive, some negative, some near zero. They no longer all pull in the same direction. The raw deviations are systematically negative because every family has a negative bias. The centered deviations are mixed.
If the entire Mertens drift is being carried by four predictable family-level constants, then the right object may not be the raw fluctuation sum but the centered one. Subtract the family bias first, then sum what remains.
This paper does not prove that the centered sum converges. It only isolates the structure that makes centering natural. The raw sum drifts because every family has a negative bias. Once that fact is on the table, the next question is unavoidable: remove the family bias, and does the remaining fluctuation cancel?
The drift is not random noise. It is organized. It lives in four class-specific constants, and once you see that, the divergence at $s = 1$ stops looking mysterious and starts looking removable. The raw sum was never the right object. The centered sum is. The Collision Transform takes that question up.
A note from 2026
April 2026
Three results from this paper became load-bearing for the formal Collision preprints I've recently published.
The bilateral parity theorem entered The Collision Invariant as one of the structural constraints that forces the antisymmetry $S(a) + S(b^2 - a) = -1$. Without the pairing of collisions under the complement map, the antisymmetry constant would not be forced to $-1$, and the negative bias of the collision periodic table would not be structural. The parity is the seed.
The exact decomposition of the deviation into an integer part and a class correction became the starting point for the centered collision sum that The Collision Transform analyzes at $s = 1$. The centering in that formal preprint is exactly the centering introduced here, and the convergence at $s = 1$ proved there is the conditional version of the convergence conjectured here.
The reappearance of the constant $2/3$ from Why the Golden Ratio Selects the Prime Three still feels significant to me. The alignment limit $\alpha = 2/3$ at the prime $3$ was the observation that started the entire program. Finding it again as the per-family collision bias for the digit-$7$ family suggests that the golden ratio's selection of the prime $3$ is not a standalone curiosity. It is wired into the family structure of the collision count at every depth. The constant connects the opening observation of the program to work that came years later, and the fact that it appears without being placed there is the kind of structural echo that keeps me going.
Try it yourself
The Mertens growth rate of the raw fluctuation sum.
$ ./nfield fluctuation_sum 10 --lag 1 --primes 5000
Per-class collision bias. The digit-7 class sits near -2/3.
$ ./nfield class_bias 10
Raw sum diverges at s=1. Centered sum converges.
$ ./nfield centered_sum 10
Code: github.com/alexspetty/nfield
Paper: The Collision Fluctuation Sum
Alexander S. Petty
April 2023 (updated April 2026)
.:.