The Spectral Structure of Fractional Fields
The eigenvalues of the cross-alignment matrix are determined by the cyclic autocorrelation of the digit function. One formula gives the entire spectrum.
July 2021, revised April 2026
The cross-alignment matrix at $p = 7$ has every eigenvalue equal to 1. At $p = 13$, exactly two distinct eigenvalues. At $p = 17$, nine. The eigenvalues encode the matrix's internal geometry, and the geometry changes with the prime. The question is what determines them.
For primes where 10 is a primitive root, reorder the fractions by their position in the remainder cycle instead of by size. The cross-alignment matrix becomes a circulant, a matrix where each row is the row above it shifted one position to the right. Circulants have been studied for a long time. Their eigenvalues are always the discrete Fourier transform of their first row.
The first row of the reordered matrix is the cyclic autocorrelation of the repeating block of $1/p$, divided by the cycle length.
So the full eigenvalue spectrum of the pairwise agreement matrix is the Fourier transform of a digit sequence. The program that started by looking at repeating decimals arrives, through a chain of definitions and one classical theorem, at harmonic analysis on a finite group.
The autocorrelation
Take the repeating block of $1/p$. Compare it with a shifted copy of itself, position by position. Count the matches at each shift. That list of counts is the cyclic autocorrelation.
For $p = 7$, the repeating block is 142857. Compare it with each of its cyclic shifts:
shift: 0 1 2 3 4 5
matches: 6 0 0 0 0 0
One spike at zero. Nothing elsewhere. This is the simplest possible autocorrelation, the discrete delta function.
The Fourier transform of a delta function is flat. All eigenvalues equal 1. The cross-alignment matrix at $p = 7$ is the identity. That is not a coincidence. It is a theorem of this program: the pairwise agreement matrix of any full-reptend prime is the identity, because its digit sequence has zero autocorrelation at every nonzero lag.

At $p = 7$, the digit sequence is maximally spread. No cyclic shift of 142857 agrees with any other shift at any position. The autocorrelation records this as a spike and nothing else. The Fourier transform of that spike is the flattest possible spectrum.
In number theory, a prime where the base generates every nonzero residue is called a full-reptend prime. In signal processing, a sequence whose autocorrelation is zero at every nonzero lag is called white noise. These are two names for the same phenomenon, arrived at from opposite directions. The digit sequence of $1/7$ is white noise because 7 is a full-reptend prime. The identity matrix is the matrix of white noise. Two fields that do not usually talk to each other meet here, at the repeating decimal of a single prime.
The two-coset case
At $p = 13$, base 10 is not a primitive root, so the circulant structure does not appear directly. The twelve fractions split into two cosets of six.
Inside each coset, the same pattern holds as at $p = 7$. Rotations within a coset do not agree at common positions, so the within-coset block is the identity. The new feature is what happens between cosets. Each fraction in one coset has exactly one partner in the other, and that partner agrees with it at exactly 2 of the 6 digit positions. Every other cross-coset comparison gives zero.
That forces a specific matrix structure:
$$\mathbf{A}(13) = \mathbf{I} + \frac{1}{3}\mathbf{P}$$
where $\mathbf{P}$ is an involution pairing each fraction with its unique cross-coset partner. Involutions have eigenvalues $+1$ and $-1$. So the eigenvalues of $\mathbf{A}(13)$ are forced:
$$1 + \frac{1}{3} = \frac{4}{3} \qquad \text{and} \qquad 1 - \frac{1}{3} = \frac{2}{3}$$
each with multiplicity 6. Twelve eigenvalues. Two distinct values. The first nontrivial spectrum is still highly rigid.
The three regimes
These two cases anchor a taxonomy.
Digit-partitioning primes. The autocorrelation is a delta spike. The spectrum is flat. The matrix is the identity.
Two-coset primes. No circulant structure, but a rigid cross-coset involution forces exactly two spectral levels.
Primitive-root primes with nontrivial autocorrelation. The matrix is circulant after reordering. The autocorrelation is no longer a spike. Its Fourier transform spreads across several values. The smallest base-10 example is $p = 17$, where the autocorrelation has nonzero values at six lags besides zero, all equal to 2:
lag: 0 1 2 3 4 5 6 7 8 ... 11 13 15
matches: 16 2 0 2 0 2 0 0 0 ... 2 2 2
The Fourier transform of this sparse but structured autocorrelation fans into nine distinct spectral levels, ranging from $4.2$ at the quietest mode to $28.0$ at the loudest. Each eigenvalue is one mode of internal agreement among the sixteen fractions. The loudest mode is the one where all fractions reinforce. The quietest is where they most nearly cancel.


The spectral power $\Phi(k)$ at each frequency. At $p = 7$, flat. At $p = 13$, a gentle symmetric dip. At $p = 17$, a deep V reaching from 28 at the edges to 4.2 at the center. The shape of the curve is the frequency-domain fingerprint of the prime.
The spectrum reflects the orbit structure of 10 modulo the prime. That is the organizing principle.
The transition between regimes is governed by a single number: the multiplicative order of the base modulo the prime. When the order equals $p - 1$, the base is a primitive root and the spectrum is circulant. When the order is smaller, the remainders split into parallel orbits, and the spectrum acquires its structure from the cross-orbit geometry. The same number that Gauss tabulated in the 1790s, and that Artin conjectured about in 1927, determines which spectral regime a prime belongs to.
It is remarkable that so much structure can be read from a single integer. The multiplicative order tells you the period length. The period length tells you the orbit count. The orbit count tells you the coset structure. The coset structure tells you the autocorrelation. The autocorrelation tells you the eigenvalues. One number, five consequences, and the entire spectral geometry of the fractional field follows.
The character expansion
The scalars $\alpha$, $\sigma$, and $F$ summarize the field in coarser ways. The matrix keeps the full pairwise geometry. The spectrum organizes that geometry into independent modes.
For primitive-root primes, those modes are the additive characters of the cyclic group $\mathbb{Z}/L\mathbb{Z}$, where $L$ is the repetend length. The eigenvalues are the projections of the autocorrelation onto those characters.
The eigenvalues are not arbitrary numerical features of the matrix. They are a character expansion of a finite combinatorial object built from the repeating digits of $1/p$. Each eigenvalue measures how strongly the fractional field resonates at one frequency. A flat spectrum means the field has no preferred mode of internal agreement. A spread spectrum means some modes of agreement are much stronger than others. The spectrum is the field's fingerprint, and every prime has a different one.
Repeating decimals have been computed since Leibniz. The cyclic structure of $1/7$ has been printed in textbooks, noted in recreational mathematics, marveled at in classrooms for centuries. What nobody wrote down is that the digit sequence, compared against its own cyclic shifts, produces a Fourier spectrum, and that spectrum is the eigenvalue structure of the entire pairwise agreement geometry of the fractional field. The autocorrelation of $1/p$, treated as the first row of a circulant, had not been constructed. The question had not been asked.
This is where the harmonic language stops being metaphorical. After this point in the program, the spectral language is not an analogy. It is the natural language of the problem.
It was in the digits. It was always in the digits. The matrix only made it visible.
Try it yourself
Watch the three regimes. Start with a full-reptend prime. White noise.
$ ./nfield autocorrelation 7 # [6, 0, 0, 0, 0, 0] -- delta spike
$ ./nfield spectral 7 # all eigenvalues = 1 -- flat
Now a two-coset prime. The involution appears.
$ ./nfield autocorrelation 13 # spike at lag 6 -- cross-coset pairing
$ ./nfield spectral 13 # two levels: 4/3 and 2/3
Now a primitive-root prime with nontrivial structure. The spectrum fans.
$ ./nfield autocorrelation 17 # nonzero at six lags
$ ./nfield spectral 17 # nine distinct eigenvalues
Try larger primes and watch the multiplicative order drive everything. At $p = 97$, the order is 96, the orbit count is 1, and the spectrum has 49 distinct levels. At $p = 41$, the order is 5, the orbit count is 8, and the spectrum is much simpler despite 41 being the larger prime. The spectral complexity follows the order, not the size.
Code: github.com/alexspetty/nfield
Paper: The Spectral Structure of Fractional Fields
Alexander S. Petty
July 2021 (updated April 2026)
.:.