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, and the rung that gains one that does not is 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
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 over the same channels,
χ = N(1 − k + ∑1/pi), is not a
new invariant twice over. It is the Euler characteristic of
the complex built on this graph below,
and −χ is the
integer whose prime divisors are the absent primes a sub-ring
names — so the naming thread
and the curvature thread are counting the same number.
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,
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,
k−j), 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
The subset spectrum
is a subset-sum problem rule
The neighbour graph is a Cartesian product of complete graphs, one
per channel, and the spectrum of such a product is indexed by exactly
the lattice the last two claims share: one eigenvalue per subset
S of channels. A complete graph on p vertices has
eigenvalue p−1 once and −1 with multiplicity p−1, so
taking the off-eigenvalue on S and the top one elsewhere
gives
One letter is doing two jobs from here on, and the argument
separates them: bare λ, or λ of a rung, is the universal
period above, while λ carrying a channel subset is an eigenvalue
of the neighbour graph.
The eigenvalue therefore depends on S only through
∑i∈Spi: the spectrum is
the set of subset sums of the channel primes, reflected through
the degree. At k = 7 that turns a question about a graph on 510,510
vertices into an arithmetic one about seven small numbers. The extremes
are the degree 51 itself, at S = ∅, and −k = −7 when
every channel is off. That second one has multiplicity
∏(pi−1) = φ(N) = 92,160 — multiplicity
being how many independent eigenvectors share the value — because the
eigenvectors there are exactly those non-trivial in every channel.
The shell at distance k, which is the units, has that same size, and
the agreement is worth naming rather than leaning on: both count one
non-zero choice per channel, once over eigenvectors and once over residues.
They are equal, not identical.
And the count comes out short of the 128 subsets. The distinct
eigenvalues number 53, not 128, because distinct subsets can share a
sum — {2, 5} and {7} both give 7 — and 53 is not an accident either.
The primes total 58, so 59 integers are candidate sums, and exactly six
of them are unreachable: 1, 4, 6 and 52, 54, 57. That set is symmetric
about 29 for a structural reason rather than a numerical one — a subset
and its complement sum to 58, so a sum is reachable if and only if its
reflection is. Only the three small gaps carry information, and each is
simply not a sum of distinct members of the set: 1 falls below
the smallest prime, while 4 and 6 would need 2+2 and 3+3. 59 − 6 =
53.
And none of that is a fact about k = 7. At every rung from the
fourth on, the reachable sums are the whole range from 0 to the prime
total minus exactly those six values — the same three small gaps and
their three reflections — so the distinct eigenvalues always number
the total minus 5. The deficit never grows, however many primes are
added. The reason is that a new prime replaces the reachable set by
its union with a shifted copy of itself: past the fifth rung the shift
is short enough that the two overlap, so the interior can only stay
full, while the three small gaps survive every step by being smaller
than any prime that ever arrives.
Scope. The eigenvalue formula holds for any
Cartesian product of complete graphs, so for every squarefree rung.
The count of 53 and the missing set are exhaustive over the 128
subsets at k = 7. The k-independence is proved from the fifth rung on,
the overlap condition holding there directly and above it by
Bertrand's postulate, with the base rung and the fourth checked
directly and every rung through the thirtieth verified by exhaustion.
The complement symmetry is proved for every rung.
verifier:
explore_torus_geometry.py,
explore_subset_sum_weld.py
The clique complex
is a wedge of circles theorem
Fill in every complete subgraph of the neighbour graph as a
simplex — the graph's clique complex. Two elements are
adjacent when they differ in exactly one channel, so if u and
v differ in channel i and v and w in a
different channel j, then u and w differ in both
and are not adjacent. Every clique therefore has all its differences
in one channel: the maximal cliques are exactly the lines —
all channels but one held fixed — of which there are
L = ∑N/pi, any two meeting in at most
one element. The complex is a union of simplices glued at isolated
points, so take the lines in an order where each after the first
already meets the union of the earlier ones — the graph is connected,
so one exists — and attach them in turn. Attaching a simplex along
c ≥ 1 points already present adds c − 1 circles up to
homotopy, and summing c over every line counts incidences minus
elements, kN − N, the first line contributing none. Each
of the L − 1 attachments therefore yields one circle fewer than
the points it lands on, leaving a wedge of circles,
with bj = 0 for every j ≥ 2. What
b1 counts is the excess independent edges the lines
supply beyond what the elements can hold: a line of size
pi offers pi − 1 independent
edges, so the lines jointly offer kN − L, while a
spanning tree on the N elements absorbs only N − 1.
And it is one more than the Euler characteristic the curvature
claim above already carries. Each line is contractible and the lines
meet only at
elements, each of which lies in exactly k of them, so
χ = L − (k−1)N, which is the
N(1 − k + ∑1/pi) above; a wedge of
circles has no homology past the first for that count to hide, so
b1 = 1 − χ, which is 2,346,894 at k = 7.
The subset lattice is entirely absent here. The Betti numbers of
the torus and the neighbour spectrum are both indexed by subsets of
channels; this complex sees only the lines, and its
b1 is a single number rather than a graded family —
the two Betti counts on this page share a word and nothing else.
Primality is unused as well, the pi entering only as
complete-graph sizes, so sizes 8 and 9 give 56 by the same formula. At
two channels b1 collapses to
(p−1)(q−1), which is why a product form fits the pairs
and nothing above them: the true form is a difference of three terms,
and no product of per-channel factors gives the middle one,
∑N/pi. The one rung whose b1 equals
N itself is Z/30, and it is the only multiset of sizes
that can do it — the condition rearranges to
∑1/pi = k − 2 + 1/N, which is out of
reach from k = 4 up and impossible at k ≤ 2. That leaves the
triples whose reciprocals exceed 1, and they are not a finite list:
besides {2, 3, 3}, {2, 3, 4} and {2, 3, 5} there is the whole family
{2, 2, x}, closed by its own form rather than by enumeration —
b1 = 4x − 3 against N = 4x,
short by three at every x. Of the three that remain only
{2, 3, 5} lands exactly. So the
rung that made this count look like it counted the ring is the one
rung where it could have.
Scope. Proved for every k and all
channel sizes at least 2, primality unused; the uniqueness of
Z/30 likewise. Checked against independent homology
computations — boundary-map ranks over the field of two elements, the
cliques enumerated from common neighbours rather than from the lines —
on 20 cases including repeated and non-prime sizes, with the second
Betti number computed on all 20 and the third on the 18 carrying
simplices of that dimension, and the maximal cliques enumerated
directly on five. That field is the instrument's choice and costs
nothing here: a wedge of circles has no torsion for it to see, which
is what the proof establishes and the check is testing.
verifier:
explore_clique_betti.py
The line count is not local to this complex. ∑N/p is
the modulus the exact comparator on
the walls page runs against, and
that comparator beats rebuilding the integer exactly when the modulus is
smaller than N — so it wins on precisely the channel sets whose
complex has fewer lines than elements. One number, counted as a datapath
width in one place and as maximal cliques in the other. No rung from
k = 3 up is such a set: ∑1/p passes 1 at {2, 3, 5} and only
grows, so the tower's own complex always carries more lines than
elements, and the sets where the comparator wins are designed ones with
large primes.
Sub-rings inside
A sub-ring is what a subset of the channels generates: drop
some of the primes from N and the product of those that remain is
a rung in its own right, with its own neighbour graph and its own
complex. The large complex contains the small ones, and the count above
says exactly how.
How a sub-ring's
complex sits inside rule
Let T be a subset of the channels of a rung S, and
NT, NS their products. Hold the
channels of S outside T at one fixed value: the elements
agreeing there span an induced subcomplex isomorphic to the whole
complex of T, and there are
c = NS/NT such slices,
disjoint and covering every element. First homology reads them
independently — one slice's circles inject into the large complex at
rank exactly b1(T), and the c slices
are jointly independent at rank exactly
c·b1(T). The counts assemble as
the copy count multiplying the sub-ring's own homology, and the
dropped channels paying an additive term that does not read T
at all. The identity itself is arithmetic — substitute the formula
above on both sides and it rearranges — so what the homology adds is
that the first term is a genuine subspace count: the c copies
really are independent circles of the large complex and not merely a
number that fits.
Scope. The identity is proved for every
nested pair, from the formula above. The independence is computed —
boundary ranks over the field of two elements — on 28 complexes with
at most 210 elements, the image and joint ranks landing on
b1(T) and
c·b1(T) in every case — including the
single-channel T, where both are 0 and the check is empty, a
one-channel complex being a simplex with no circles in it. The counting
identity itself was checked on all 1,932 nested pairs through
k = 7. Free first homology is what carries the field computation
back to the integers.
verifier:
explore_naming_complex.py
An automorphism of the complex is a relabelling of the
elements that preserves adjacency. A covering of one graph by
another wraps the second onto the first so that every point is covered
the same number of times and each small neighbourhood is copied
without folding; the standard way to build an s-fold covering is
to find a symmetry of order s that moves every element — a
free action — and quotient by it. Naming asks for such a
covering, and this complex refuses to supply the symmetry.
Naming is a covering
condition no symmetry carries rule
An absent prime s
names a sub-ring exactly when
it divides −χ, which is b1 − 1 by the count
above. For a connected graph an s-fold covering multiplies the
Euler characteristic by s, so its first Betti number satisfies
b1 − 1 = s(b1′ − 1) for the
graph below it. Naming is therefore a statement about shape: s
names S iff the complex of S is homotopy equivalent to a
connected s-fold covering of a graph, one with
(b1(S) − 1)/s + 1 circles.
No symmetry of the complex realizes it. The graph is a product of
one complete graph per channel, those factors have pairwise distinct
sizes and none of them factors further, so by Sabidussi's theorem
every automorphism acts one channel at a time: it permutes each
channel's residues among themselves and does nothing else, confirmed
by direct enumeration on the smallest case. An element of order
s is then a tuple of permutations each of order 1 or s,
s being prime; and a permutation of order s on
pi points
leaves pi − s·(number of s-cycles)
points fixed — nonzero, because s is absent and so divides no
pi. Fixing a point in every channel fixes an
element. So for every absent s, every order-s
automorphism has a fixed element, no order-s action on the
complex is free, and the covering the divisibility asks for exists
only up to homotopy. It is not a covering by a symmetry: the graph
beneath it is this complex modulo a symmetry the complex does not
have.
Scope. Proved for every rung and every absent
s. The channel sizes enter only as pairwise distinct integers
none of which s divides. The homotopy equivalence to a wedge
of circles is the theorem above; the automorphism group is
Sabidussi's, its order confirmed at 12 by brute force on the
two-channel rung Z/6. What is proved is that no free action of
order s exists, not that no covering does.
verifier:
explore_naming_complex.py
The naming map iterates. The
seed-flower operator sends a set of primes S to the prime
support of |−χ(S)|, so an orbit is a sequence of rungs —
and each rung carries the complex above. The count
b1 = 1 − χ says what the operator was reading
all along.
The seed-flower map
is a map of homotopy types property
−χ(S) is b1(S) − 1: the
integer the operator factors is the circle count minus one. So the
operator depends on the complex of S only through its homotopy
type — the coordinates never mattered — and, since
b1 classifies wedges of circles up to homotopy, it
descends to a well-defined map on homotopy types. Death — an orbit
reaching the empty set — reads as contractibility: {2, 3} apart, a
seed no orbit can reach and the one set that dies at
b1 = 2, every death runs through a singleton, whose
complex is one simplex, b1 = 0.
The descent is not vacuous. The 2047 subsets of the first eleven
primes take only 2020 distinct −χ values: 17 collision
classes, the eleven singletons at −χ = −1 being one and the
other 16 holding sets of two or more primes, 8 mixing sizes and 8
same-size ({2, 13} with {3, 7} at −χ = 11), so distinct rings
ride one homotopy type
into one future. {2, 3, 5} shares −χ = 29 with {2, 31} — one
wedge of 30 circles, one image — and the largest class,
−χ = 71, holds {2, 3, 11}, {5, 19} and {7, 13}.
And the map exists only at that level. Consecutive orbit values
are coprime — one step's value has the next step's set as its
support, and no member prime divides its own set's −χ — while
an s-fold covering multiplies the Euler characteristic by
s, and a ring map needs one modulus dividing the other, where
here a set and its image share no prime at all. So neither a
covering map nor a ring map connects the complexes at consecutive
steps of an orbit still running, in either direction: where naming
asked for a covering that exists up to homotopy, the claim above,
iteration supplies no covering at all.
Scope. The descent and the coprimality are
proved; the collision census is a rule, exhaustive over the subsets
of the first eleven primes; the no-realization check ran on 10,039
consecutive pairs across the sweeps, 0 divisibility steps. The
b1 wiring was controlled first against independent
homology — boundary-map ranks over the field of two elements —
printing b1 = 0, 2, 30 at {2}, {2, 3},
{2, 3, 5}.
verifier:
explore_seed_flower_complexes.py (11 checks)
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
Add up
an element's cosines, one per channel. Since a cosine cannot tell a
residue from its negative, that one real number sees each channel only up
to sign — and no two of the 18,144 classes surviving those signs on
Z/510510 share a value, nor do any two on any tower of prime
powers, so one real recovers a whole residue tuple up to a sign per
channel. A second reading of the same cosine, averaged over the units at
a frequency n, is a product of independent binary gates, one per
channel, whose off-values are exactly the Möbius weights of the sieve.
Read across one full period of the power maps rather than at
one n, it stops being size-blind: a transparent prime adds no new
values and refines the old ones instead, how many survive is decided by
multiplicative relations among the numbers p − 1, and the surviving
fraction can be had from the divisors of pk − 1 with
nothing enumerated at all:
The frequency response.