Classical structure

Two structures sit on every rung, and nothing in the first computes the period of the second: a geometry that reads how big each channel is, and a dynamics that reads the multiplicative structure of each channel minus one. Knots, curvature and shells belong to the first, the orbit length to the second — and the frequency response is the one place they meet.

A rung of the tower is Z/N with N = pk# the product of the first k primes, read as one channel per prime — the residue mod p, a reduction at one finite place (The Object). The Chinese remainder theorem makes the rung a discrete torus: an element is its tuple of residues, one point on each of k circles, and addition rotates the circles independently. Two quantities run through everything below. φ(N) = ∏(p−1) is the number of units, and λ(k) = lcm(p1−1, …, pk−1) is the universal period of the power maps (the transparency criterion). A new prime is transparent when it leaves λ unchanged; its rung is then a plateau, and otherwise a jump.

The torus carries two metrics, and they disagree about which channel matters. Hamming distance counts the channels in which two elements differ; the neighbour graph it induces — one edge per single channel change — has degree ∑(p−1), which is 51 on the seven-channel rung Z/510510. Chord distance embeds each circle in the plane and adds squared straight-line distances, ∑ 4sin²(πr/p), so it is dominated by the largest circle where Hamming distance is dominated by the smallest — and its gap, the smallest distance it puts between two distinct elements, is therefore 4sin²(π/pk), set by the largest channel alone. Figures below are computed on that rung — channels 2, 3, 5, 7, 11, 13, 17 — unless a range of rungs is named.

The two structures

The geometry/dynamics split rule

The split is not one of domain. The primes determine the shifted primes and the shifted primes determine the primes, so every quantity named below is a function of the same prime set and saying one "depends on {pi}" rather than on {pi−1} says nothing. What the split says is that no geometric quantity which VARIES along the tower factors through λ. Geometric: curvature, the degree, the chord gap, the shell distribution, and the time a random walk on the neighbour graph takes to mix — each reads a channel's SIZE. Dynamical: λ, orbit lengths, the orders an element can have, transparency itself — each reads the multiplicative structure of p − 1, which the size of p does not determine.

The witness is on the trajectory and needs no designed tower. The primes 31, 37, 41 and 43 are all transparent, so λ stands at 55,440 across k = 10 through k = 14 — five rungs — while the degree runs 119 to 267 and every geometric quantity above moves with it. No function of λ can do that, so none of them is one.

The word varies is load-bearing, and what it excludes is a triviality rather than a result. The Hamming gap — the smallest Hamming distance between two distinct elements — is 1 on every rung by construction, since changing one channel is always available. A constant is a function of anything, so that is the one geometric quantity no constant-λ witness can separate, and there is nothing in it to separate.

What the tower buys with it is a two-speed growth: capacity at every rung — a dimension, degree, φ — and complexity only at jumps, which thin out as the transparency density approaches 1.

Scope. Each quantity's dependence is by construction; the separating witness is computed rung by rung for k = 3..14, and it separates only the quantities named.

verifier: explore_tower_geometry.py

Curvature approaches one rule

Give the neighbour graph its Ollivier–Ricci curvature — the coarse curvature that measures how far a step from one point can be transported onto a step from its neighbour. Each channel contributes κi = (pi − 2)/degree, so the total is

κ  =  i(pi2)i(pi1)  =  1kdegree.\kappa \;=\; \frac{\sum_i (p_i - 2)}{\sum_i (p_i - 1)} \;=\; 1 - \frac{k}{\text{degree}}.

The 2-channel is exactly flat — a two-point circle has no room to curve — the largest channel is the most curved at 5/17, and the k = 7 total is 44/51. The degree grows like k² ln k / 2 while the subtracted term's numerator is only k, so the curvature climbs toward 1, reaching 0.948 by k = 14: the torus gets rounder as it grows.

Curvature therefore runs opposite to the chord gap, which shrinks as the largest circle grows. The rounder the rung, the less its elements are separated by the metric that embeds them — one fact read twice, since a large prime is a large circle, which is locally flat and finely divided.

The Gauss–Bonnet count of the same object, χ = N(1 − k + ∑1/pi), is not a new invariant: −χ is the integer whose prime divisors are the absent primes a sub-ring names. The naming thread and the curvature thread are counting the same Euler characteristic.

Scope. The per-channel formula and the k = 7 figures are verified exhaustively; the totals are computed k = 3..14, and the limit follows from pk → ∞.

verifier: explore_tower_geometry.py

The shell distribution rule

Fix a point and call the elements at Hamming distance d from it the shell at d. The channels are independent, so the generating function of the shell sizes factors,

E(x)  =  i=1k(1+(pi1)x),E(x) \;=\; \prod_{i=1}^{k} \bigl(1 + (p_i - 1)\,x\bigr),

and the coefficient of xd is the number of elements at distance d. Two coefficients are already familiar: e1 is the degree, and ek — the elements differing in every channel — is φ(N), the units. The distribution is not centred. Its mean distance is k − ∑1/pi, growing as k − O(log log k), and the largest shell is the next-to-last: 39% of Z/510510 sits at distance 6 of a possible 7.

So the torus is almost uniformly far from any reference point. The fraction of elements at distance k/2 or more passes 97% at k = 6, 99% at k = 8 and 99.9% at k = 10.

Scope. The factorization is exact on every squarefree rung; the concentration figures are computed k = 3..14.

verifier: explore_tower_geometry.py

The Betti numbers count the idempotents rule

The j-th Betti number of the torus — the rank of its j-th homology, counting independent j-dimensional holes — is βj(Tk) = C(k, j), one for each way of choosing j of the k circles. The rung's idempotents — the elements with e² = e — are indexed the same way, since idempotence is decided channel by channel and each channel is a field: one idempotent per subset of channels. So βj counts the idempotents whose subset has size j, and the Betti numbers sum to 2k, the number of idempotents. At k = 7 they run (1, 7, 21, 35, 35, 21, 7, 1) and sum to 128.

Poincaré duality, C(k, j) = C(k, kj), is then the complement involution on channel subsets: an idempotent e and its complement 1 − e sit at dual Betti numbers. Both structures are graded by the same lattice of channel subsets, and the grading is the one the CRT decomposition already fixes.

Scope. Both counts are C(k, j) by construction, computed k = 3..14. What is claimed is the shared index set and nothing more: no map between homology and the ring is asserted, and a reader who finds the coincidence forced — both families are indexed by subsets of a k-set — is reading it correctly.

verifier: explore_tower_geometry.py

Knots on the torus

A torus knot T(p, q) is the curve that winds p times one way and q times the other around a two-dimensional torus; it is a knot exactly when p and q are coprime. Tower primes are pairwise coprime by construction, so every pair of channels carries one — the path traced by repeatedly adding 1, read in those two coordinates alone. Its signature is an integer invariant read off the intersection form of a surface the knot bounds; here it comes from a lattice-point count over the rectangle [1, p−1] × [1, q−1].

Three channels give a higher-dimensional object. For pairwise coprime p, q, r the Brieskorn variety xp + yq + zr = 0 meets the 5-sphere in an integral homology 3-sphere Σ(p, q, r) — a manifold homology alone cannot tell from the 3-sphere. The singularity's Milnor fiber, the nearby smooth level set, is a four-manifold bounded by Σ, and it is that fiber's intersection form whose signature is quoted below. The Casson invariant is a single integer that does distinguish such a sphere from the 3-sphere.

Torus knots and Brieskorn spheres over the channels rule

Through k = 9 — channels up to 23 — the 36 channel pairs carry 36 torus knots and all 36 signatures are negative: in this orientation the tower is left-handed throughout. The values are small and highly degenerate, T(3,5) and T(3,7) both landing on −8, the signature of the E8 lattice.

The 84 channel triples carry 84 Brieskorn homology spheres. Every one of the 84 Milnor-fiber signatures is negative and divisible by 8 — the fiber is spin with unimodular intersection form — so by Neumann–Wahl each triple has an integer Casson invariant σ/8. Those run from −1, the Poincaré sphere Σ(2, 3, 5), to −308 at Σ(17, 19, 23), and their totals by rung k = 3..9 are −1, −8, −47, −187, −615, −1625, −3873.

Channel 2 is the suspension coordinate — the one whose exponent turns a pair's singularity into a triple's — and it costs the construction nothing: σ(2, q, r) = σ(T(q, r)) exactly, since a squared third variable is how a knot signature arises from a Milnor fiber at all. A triple containing 2 therefore adds no signature and no Casson data beyond its own pair, and the genuinely new three-dimensional objects are the 56 odd triples. The 2-channel behaving as a degenerate direction is the shape the naming thread reports too, where 2 is never named by a sub-ring that omits it.

One numerical coincidence does not survive. The crossing numbers of the pairs sum, over the rungs k = 2..9, to 3, 18, 67, 210, 509, 1104, 2073 and 3660, and the 210 at rung 5 is the modulus of rung 4 — but no later total equals any earlier modulus.

Scope. Exhaustive over the primes through 23, so k ≤ 9. Signatures are the standard Brieskorn–Hirzebruch lattice counts, anchored two ways: σ(T(2,3)) = −2 at the trefoil, and the three-variable count reproducing the knot signature at r = 2 for all 28 odd pairs. Divisibility by 8 and the Casson identification are known background, verified here rather than proved; the crossing-total statement is asserted over the same range.

verifier: explore_torus_knots.py

The frequency response

Everything above reads channel sizes. The frequency response is where the two structures make contact: its gates are fixed by those sizes, and then it is read along a range λ sets. The response at frequency n is the average of cos(2πnx/N) over the units — the Ramanujan sum cN(n) divided by φ(N) — and it factors channel by channel.

The channel gates property

Write F(n) = cN(n)/φ(N). For squarefree N it is a product of independent binary gates, one per channel:

F(n)  =  pN{1pn1p1otherwiseF(n) \;=\; \prod_{p \mid N} \begin{cases} 1 & p \mid n \\[2pt] -\dfrac{1}{p-1} & \text{otherwise} \end{cases}

A channel is on when it divides the frequency and off otherwise, with contrast ratio (p−1) : 1, so larger channels gate more sharply. The extremes are the whole dynamic range: a frequency coprime to N gives 1/φ, about 10−5 at k = 7, and a multiple of N gives 1.

The off-value is not an artifact of the normalization. It is exactly the inclusion–exclusion weight of the prime p, so the frequency response of the rung is the Möbius function of the sieve — the same identification as the sieve identity, read in the frequency domain.

Scope. Proved for every squarefree modulus; the identification with the sieve is term-by-term.

verifier: explore_moment_resonance.py

Static blindness, dynamical sight observation

Read statically, the response is transparency-blind: the gate −1/(p−1) is fixed by the channel alone and never by whether (p−1) divides λ, so the static response cannot report whether the prime the rung just gained was transparent. That is precisely the geometric side of the split.

Read dynamically it is not blind. Evaluate F at the frequencies n = 1..λ — one full period of the power maps — and collect the distinct values, the rung's spectrum. A jump extends that range, admitting frequencies that did not exist below, and many new values arrive; a plateau leaves the range fixed and few do. Jumps widen the spectrum and plateaus refine it, and both raise its entropy, the jumps by about three times as much.

Scope. The static half is immediate from the gate formula. The dynamical half is computed k = 3..22, with the entropy comparison over k ≤ 10; what a plateau gains is the subject of the two claims below.

verifier: explore_resonance_transparency.py

The plateau decomposition criterion

Call the gate set of a frequency n the set S of channels dividing it — the gates that are on. Three exact pieces settle what a plateau gains.

Which gate sets occur. The set S is realized among n = 1..λ if and only if ∏Sλ: the product itself realizes it, and any frequency with that gate set is a multiple of the product. So a gate set costs the product of its channels and λ is the budget it must fit under. This replaces a sweep over λ frequencies with a pruned enumeration of subsets, which is what puts rungs far past k = 14 in reach — k = 22 takes seconds.

What the spectrum becomes. At a plateau λ does not move, so the gate sets available below are unchanged and each frequency either is or is not divisible by the new prime. Writing Vk for the spectrum at rung k and c = −1/(pk−1) for the new off-gate,

Vk  =  WcVk1,V_k \;=\; W \,\cup\, c\cdot V_{k-1},

where the window W is the old spectrum seen through the multiples of pk — the gate sets that fit the reduced budget λ/pk. Rescaling by c is injective and contributes nothing new, so the gain is exactly the part of the window the rescaled old spectrum fails to cover.

Which window values die. A window value collides with a rescaled old one if and only if there are disjoint sets A, B of older channels with |A| + |B| odd, each side realized by a gate set inside the budget, and

qA(q1)  =  (pk1)qB(q1).\prod_{q \in A} (q-1) \;=\; (p_k - 1)\prod_{q \in B} (q-1).

Collisions are therefore multiplicative relations among the shifted primes — the same objects that decide transparency in the first place. A transparent prime can be redundant twice over: dynamically, because its orbit already embeds, and spectrally, because its values do. At k = 11..14 the windows are nearly the same size — 133, 135, 135 and 139 values — so the gains 60, 20, 41 and 70 are almost entirely collision rate: 55%, 85%, 70% and 50% of the window dies.

Scope. All three pieces are proved; the decomposition and the collision criterion are verified at k = 6, 11..14 and 18..22. The k = 6 plateau gains exactly zero, its three-value window being covered entire.

verifier: explore_plateau_collisions.py

The collision rate without the spectrum rule

The criterion above says which values die; it does not say how many, and answering that by enumeration costs a spectrum. It can be had from the divisor structure of pk − 1 instead. A window gate set S dies via the relation (A, B) exactly when BS, A is disjoint from S, and ∏Sλ·∏B/∏A, so the collision set is a union of explicit sets over the relations of pk − 1. Fix an on/off assignment of the channels appearing in any relation — a cell — and within it those thresholds nest, collapsing to one. The rate over gate sets is then a closed sum of subset counts, one term per cell, with no spectrum enumerated at all, and it matches the measured gate-set rate exactly at every k ≤ 22.

The prime 2 is the trap in enumerating those relations. It contributes a factor 1 to either side and so looks like a free parity toggle, but it still costs 2 in the budget, and the budget can refuse it — first at k = 11, where fixing the parity needs a gate set of product 102,102 against a λ of 55,440.

Against distinct values the cell sum is one-sided rather than exact. Collided values carry more representing gate sets than survivors do, so it over-predicts, by 0.00 to 0.24 across the 18 plateau rungs from k = 6 to k = 37. That is still enough to forecast: at k = 37 a cell sum of 0.98 predicted a value rate between 0.74 and 0.98 before any k = 37 spectrum had been computed, and the measured rate was 0.92.

What carries the rate is the whole budget-weighted union of those sets and not any single relation. Rungs 31, 34 and 36 admit no relation with B empty at all — no way to write pk − 1 as a product of shifted primes outright — and still collide 83%, 64% and 84%, because a rich window is full of gate sets that already carry a nonempty B.

Scope. The condition under which a relation kills a gate set is proved. The rate formula is exact over gate sets and verified k ≤ 22; the over-prediction against values is an observation over the 18-rung census, with the rungs past k = 30 computed at a cap of 300 relations, under which that over-prediction can only widen.

verifier: explore_plateau_rate.py