Quadratic windows
The window every quadratic irrational carries, and what
its gate reads.
A window is a nested grid of cells refining toward a point,
and it reads a map at lookahead c when the output
cell at depth t is a function of the input cell at depth
t + c. The geometry every window shares, and the
positional windows this one departs from, are on
Reading. One of the windows there counts by
Fibonacci numbers rather than by powers — the Zeckendorf
window — and it turns out to be one member of a family with a
member for every quadratic irrational. This page is the family.
For irrational α = [0; a1,
a2, …], the Ostrowski digits of n write
n = Σ bk qk over the
denominators of α's continued-fraction convergents
(q0 = 1, q1 = a1,
qk = ak qk−1
+ qk−2). Legality — what makes the
writing unique — caps b0 at
a1 − 1 and bk at
ak+1, and forces a zero below any digit sitting
at its cap. At α = 1/φ = [0; 1, 1, 1, …] every partial
quotient is 1 and these are the Zeckendorf digits — the calibration
window, whose order Z[α] is Z[φ]. The window is the trailing one:
the depth-t cell of n is the set of nonnegative integers
agreeing with n on their t low-order digits, cells
partition at each depth and nest across depths.
What the nested cells define in the limit is the window's
completion, and a map is readable at bounded lookahead exactly
when it extends continuously to that limit object — the form the
gate takes at a trailing window
(the completion
trichotomy). A trailing base b's completion is a
ring — addition extends to it, so every integer multiplication
comes with it and only division is gated. Zeckendorf's is an
odometer: the successor extends and addition does not, which is
what leaves the gate something to say about multiplication itself. Two
things a quadratic α supplies decide how far
that reaches: its continued fraction is eventually periodic, and
shifting the digit string by one period multiplies asymptotically by
the fundamental unit ε of Z[α].
The gate
The quadratic
Ostrowski gate rule
At four such windows — the golden 1/φ = [0; 1, 1, …]; the
silver √2 − 1 = [0; 2, 2, …] (Pell weights 1, 2, 5, 12, 29, …); the
bronze [0; 3, 3, …]; and √3 − 1 = [0; 1, 2, 1, 2, …] (period 2) —
the completion is an odometer at every one: the successor and the
unit's shift action read at bounded lookahead (≤ period + 1), while
2n, 3n and ⌊n/2⌋ are gated with delay growing
with range — the deepest agreeing pair whose images differ grows in
step with the deepest agreement the scan realizes at all, at every
range tried, no plateau — and the count of realized depth-t
cells grows by ε itself. The same scan at the period-3
windows [0; 1, 1, a], a = 2, 3, 4 returns the same
verdict. So the reading is not decided by
membership in Z[α], which every integer has, but by the
unit group: the unit shift reads and the tested non-units fail.
Scope. Rule at scanned scope: exhaustive to
3·105 per window, the failure-depth reading taken at three
ranges, and at the same bound for the three period-3 windows.
Beyond the tested windows the unit-gate statement
is a conjecture; the blocks below carry the failing half at named
families — by proof where a comb telescopes, at scanned scope where
the boundary family does the work instead.
verifiers:
explore_ostrowski_window.py,
explore_period3_borrow.py
The down-borrow
A larger digit alphabet does not rescue multiplication from that
gate, and the reason is a mechanism Zeckendorf does not have. The constant-a
windows carry the down-borrow
a·qk = qk+1 −
qk−1, a subtraction that rewrites lower
positions where Zeckendorf's mechanism was an additive down carry. Run
along a comb — an input whose digits sit on evenly spaced
positions — the borrow either telescopes in one identity or, where its
span and the comb's spacing disagree, chains through the rewrites
between; either way what it leaves is a pair of inputs agreeing to
unbounded depth whose images do not.
The comb
telescopes theorem
At every constant-a window with a ≥ 2 the
×a half is proved, no range cap: the even comb
YK = q2 + q4
+ ⋯ + qK maps under ×a, by the
telescoping borrow, to
qK+1 − a with bottom digit 0, while
YK + qK — the same string with
its top digit raised — maps to
qK+1 + a·qK − a
with bottom digit 1: pairs agreeing to unbounded depth K
whose images differ at the lowest digit, unconditionally in both
K and a — one comb with no parity condition where
the Zeckendorf family needed a parity stripe. Both inputs
converge in the completion to the infinite even comb, their
images to two distinct points — ×a has no continuous
extension, and no constant-a completion is a ring; silver's
×2 and bronze's ×3 are the a = 2 and a = 3
instances. The one degeneracy is a = 1, where legality caps
the bottom digit at 0 and squeezes the witness string out —
exactly where Zeckendorf's parity-striped comb takes over.
An alternating alphabet relocates the flip, not the shape: at
every period-2 window [0; 1, a, 1, a, …] with
a ≥ 2 — √3 − 1 the tested a = 2 instance — the
same down-borrow holds at every odd position, the positions whose
digit cap is a, so the odd comb
q1 + q3 + ⋯ + qK
telescopes under ×a to qK+1 − 1
with b1 = a, while the comb plus
qK maps to
qK+1 + a·qK − 1,
whose legal string has b1 = 0 at odd
K ≥ 3 (a − 2 at the K = 1 edge — distinct
either way): pairs agreeing to
unbounded depth whose images differ at b1 —
here a1 = 1 pins b0 at 0
exactly as Zeckendorf's alphabet does, yet no parity stripe
appears; the degeneracy moves the flip one position up,
×a again has no continuous extension, and no period-2
completion is a ring either.
And when the borrow's span
mismatches the comb's spacing, the discontinuity survives with a
new carrier: at the period-3 window [0; 1, 1, 2, …] the large
quotient's positions sit three apart while its borrow still
spans two, so no single identity telescopes — the intermediate
quotients' own rewrites chain, and every extension of the comb
uM = q3 + q6
+ ⋯ + q3M (teeth at the positions
≡ 0 mod 3, whose digit cap is 1) cascades to the bottom, landing
the image 2·uM on one of two legal strings by
the parity of M: Zeckendorf's parity stripe, returned one
level up, the flip still at b1 — the lowest
position whose cap admits a nonzero digit — so ×2 has no
continuous extension and that completion is not a ring either.
Scope. The ×a discontinuity is a
theorem at every constant-a window and at every period-2
window [0; 1, a, 1, a, …], both for every
a ≥ 2, the comb families checked by greedy extraction at
a = 2..7 (constant-a to depth 40, period-2 at odd
K ≤ 41); ×2 is a theorem at the period-3 window
[0; 1, 1, 2, …], its comb checked at M ≤ 26. The period-3
gate scans are scoped with the gate above.
verifiers:
explore_silver_discontinuity.py,
explore_constant_a_borrow.py,
explore_period2_borrow.py,
explore_period3_borrow.py
The absorption
lemma theorem
Across the period-3 family [0; 1, 1, a] the parity of
a splits the comb's fate, and the split is a theorem at
every a ≥ 3 (a = 2 is the cascade above): at each
position K holding a large
quotient, the two unit quotients above it give
qK+2 = 2qK +
qK−1, so a top coefficient c on
qK−1 can absorb the next comb
extension's cost a·qK in place —
everything below untouched — precisely when
2c = a − 1. Odd a carries that conserved
half-coefficient (a − 1)/2 upward forever and freezes the
image bottom at (0, 1, (a + 1)/2), the comb read with no
flip; even a's best integer coefficient
a/2 − 1 sheds one unit per extension, and
b2 stripes between a/2 and
a/2 + 1 by the parity of M, both closed forms
proved. But the split is a fact about the comb, never about
the gate: every window a ≤ 7 carries the boundary
family of the next section instead, whose witness never consults
the parity of a at all.
Scope. Theorem at every a ≥ 3, its
closed forms checked at a = 3..9, M ≤ 26.
verifier:
explore_odd_a_freeze.py
The boundary family
A comb telescope built for one window does not carry to the next, and
where the comb freezes there is no witness to build at all. What
replaces it takes nothing from the window's own period — only the legal
string of qK − 1 at each depth, and a place where the
completion has two names for one point.
The maximal string
and the boundary family rule
The engine is the maximal string — the legal string of
qK − 1 — and that string
is a theorem at arbitrary tail, periodicity
never used: greedy on qK − 1 =
aK qK−1 +
(qK−2 − 1) recurses in steps of two, so
the largest integer supported below position K writes as
the alternating cap-filling — digit
aK−2i at position
K − 1 − 2i, plus
b0 = a1 − 1 at odd
K — supported on one position parity and flipping whole
with the parity of K, the flip at the lowest position
whose cap admits a nonzero digit: the flip address derived for
this family at every window at once.
Some reals carry two legal codings — two distinct
points of the completion over one point of the line, the
coding boundary. Dividing near-denominator combinations
qK + u qK−r − t
(u, r, t small and fixed, K running)
by a inside one residue class of the convergent pair
(qK, pK) mod a —
the class chosen so the resulting inputs' limit misses the
coding boundary while the image limit sits on it; a |
t with p-residue 0 is exactly the boundary case
and is excluded — yields one convergent input family whose
images land beside the boundary on the side the convergent's
sign (−1)K dictates, alternating between the
two codings of one point forever: the gate witnessed at every
window a = 2..7, the flip at b1
except a = 7's b2, the parity of
a never consulted.
And a level further out, at arbitrary period, by the
same engine with no comb at
all: at four fresh windows of periods 4 and 5, alphabets mixed
and a1 up to 3, the family witnesses
×m gated at all 24 (window, m) cells,
m = 2..7, the flip at b0 or
b1, the successor reading at lookahead 1
beside it. Where each comb family above needed a telescope built
for it, this engine needs only the max-string theorem
plus per-cell class existence — and that leg is settled: the
class condition is periodic in the convergent pair mod
m, so one member of each parity certifies it forever,
and every cell here is certified. Nor is the certificate a
formality — existence is provably impossible at some windows:
at the golden window no residue class holds both parities for
m = 3, 5, or 7, so where the certificate cannot exist
the gate needs different machinery, which is exactly what the
comb telescopes are. The excluded class is its own
specimen: there the input family itself lands on the boundary
and never converges — the max-string mechanism one level
down.
Scope. The max-string identity — the legal
string of qK − 1 itself — is a theorem at
arbitrary tail, verified K = 1..40 at the four period-4/5
windows; the boundary family's class membership is certified
outright — one member of each parity plus the period of the
convergent pair mod m — at every cell of both families,
while its input convergence and wider image strings are a rule
at scanned scope (at [0; 1, 1, a]: classes to
K ≤ 400, agreement depths growing to 140, strings by
greedy extraction at a = 2..7; at the four period-4/5
windows: all 24 (window, m) cells, m = 2..7,
classes to K ≤ 400, depths to 225, one cell needing
r = 3).
verifiers:
explore_max_string_witness.py,
explore_general_max_string.py,
explore_class_criterion.py
The apparition
density pattern
How common the certificate is turns out to be a 2-adic question.
At a constant-a window, run the denominator recurrence one
step lower — U0 = 0, U1 = 1,
Un+1 = a·Un +
Un−1 — and for an odd prime m not
dividing a² + 4 let z(m), the rank of
apparition, be the first index at which m divides a
term. The boundary family's certificate exists iff
z(m) ≡ 2 mod 4 (at m = 2 it always does),
and that criterion reads off the unit: z(m) ≡ 2
mod 4 exactly when the multiplicative order of ε mod
m has 2-adic valuation v2 ≤ 1. So a
prime inert at the window (a² + 4 not a square mod
m) never qualifies — inert m ≡ 1 mod 4 has z
odd, inert m ≡ 3 mod 4 has
v2(z) = v2(m + 1)
≥ 2 — while a split m ≡ 3 mod 4 always does. Among
all odd primes the qualifying density lands at 1/3 for a generic
window, and at 7/24 exactly when a² + 4 is 8·(square) —
the Pell family a = 2, 14, 82, …, where splitting ties to
m mod 8. Windows whose ε are odd powers of one unit
share v2(z) at every prime, so the
golden pair a = 1, 4 (ε = φ, φ³) and
the Pell rows print identical columns. The certificate-less
windows are thus the two-thirds majority — why the comb
telescopes were needed at all.
Scope. The criterion, the unit law and the
inert/split laws are theorems, asserted at every scanned prime, as
is the odd-power sharing; the densities are a pattern at 12
windows over odd primes to 10⁶, matching the derivation within
2·10⁻³ — the one unproved ingredient a Kummer independence at
split m ≡ 1 mod 4.
verifiers:
explore_class_criterion.py,
explore_apparition_density.py
Altogether, at every window tested the gate tracks the unit
group of Z[α], and no completion in the family is a
ring. That second half is proved — at Zeckendorf itself, at
every constant-a and [0; 1, a] period-2 window, at the
period-3 window [0; 1, 1, 2], and, through the certified boundary
family, at [0; 1, 1, 3] through [0; 1, 1, 7] and the four
arbitrary-period windows. Whether the units are the only maps
that read is the half the range scans measure and no proof yet covers:
the readable plateau is missing everywhere they ran. So the family
occupies one cell of the trichotomy that classifies trailing
completions, and the other two cells stay held by windows outside it
(Reading).