Stalls
Where an exact descent stops short of the bottom,
including where no measurement tie sits anywhere near it, how far an
escape is when one exists, and the geometry of the intervals a reader
consults — which is what decides whether lowering a patience improves
anything at all.
The thing being descended is a commitment policy over a cover of
intervals (descent in reader space), and what
follows states what it needs of one. A stream is the
continued-fraction expansion of a real number, arriving digit by digit,
and a map is a function applied to it. After n digits the
value is pinned to a cylinder, and what the reader is certain of
about the output is the image interval, that cylinder's picture
under the map; these nest and shrink as digits arrive. A row is
one (map, stream) pair.
What a reader commits to are cells drawn from one fixed
family, the cover: the tree cells, the Stern–Brocot cells,
each the set of positive reals whose
expansion opens with a given run of digits, and the straddle
chains standing at their vertices, a cell's vertex being the
mediant of its two endpoints — the fraction whose numerator and
denominator are their sums. Both kinds are graded by rank, which
steps by one along every child relation
(the redundant cover). A
commitment is a ratchet: never undone, and permanently sound,
since a cell containing the current image contains every later one. What
a policy chooses is the route past a vertex — the tree child or
the chain — and how long to wait before committing: four coordinates, a
route preference at each of the two cell kinds and a patience for
each. A kind at patience p commits a candidate only once it has
contained the image for p+1 consecutive steps; patience 0 is
greedy, committing on sight, patience ∞ refuses that kind
outright, and the policy refusing both is the refuser. Within one
input step a reader multi-commits — takes commit moves for as
long as any remains available. A kind's reference is the image
interval its patience makes a candidate contain, the one from p
steps back at patience p, so the two kinds carry their own
references and a policy with equal patience on both shares one.
Two exact rulers price a policy over a counted
window, a fixed span of
input steps, the same for every policy compared. The deficit at a
step is the scale the reader is short — writing a cell's scale for
ln(1/length), the image interval's scale less the committed cell's — and
the clock loss is that same lag counted in whole steps. Both
compare by cross-multiplying big integers, so no float enters any
decision. Descent is the matching finite-graph notion:
neighbouring policies differ in one coordinate, a move is taken only
when it strictly lowers the loss, and a stall is a policy with no
strictly better neighbour. Descent runs on the behavioural
quotient — policies identified when their committed-cell traces over
the window agree, since two policies with identical traces cannot be
ordered by any loss reading that window; the resulting classes are
what descent moves between. Resources, where they are in
force, enter as settings rather than as coordinates: a rank
budget B of cover-rank units per input step, and a bank
of capacity W holding what a step does not spend, against which
the policy gains a fifth coordinate for how much of the bank a single
step may draw. What they are
spent against is the row's demand, the rank per input step that
row asks for. A setting with neither in force is
unresourced, and there the four coordinates are all of it.
The census
The stall
census pattern
Every stall found at scope, with the cure the species takes. The
cures name three instruments: a refinement of the comparator, the
quotient the descent already runs on, and lookahead — accepting
a short sequence of moves whose net effect improves where no single
move does.
| species | what stalls | cure |
| the plateau (space-born) |
a blind region of unbounded width — total refusal, where
every neighbour prices infinite and the comparator has no
signal |
a SIGNAL: lexicographic refinement by the loss's own finite
part; radius-free, so it scales with the plateau |
| the degeneracy (space-born) |
a flat in the quotient — behaviourally identical policies
tied together, manufactured by resource abundance (a full
bank smooths two patiences into one trace) |
the QUOTIENT: descend counted-window behaviours rather than
coordinates, on which the species cannot form |
| the ruler disagreement (loss-born) |
two exact losses over one window ordering an edge oppositely
— the coarse ruler dams the fine one's gradient, so the
deficit's own exit is clock-blocked and the class stalls under
the clock order alone |
two-move LOOKAHEAD, or descending the finer ruler across the
coarse ruler's plateaus |
| the burst trap (resource-born) |
a strict local minimum with no tie in it — under a binding
budget a demand burst makes one patience pay a little early to
win a lot late, a paired trade every single move breaks |
two-move LOOKAHEAD; neither refining the ruler nor
quotienting the space touches it |
| the horizon-cut stall (window-born) |
a strict local minimum with no budget anywhere in it — the
counted window ends inside a trade's transient stretch (two
traces part, the early loser collects late, they re-merge),
freezing the late win in place at the cut |
two-move LOOKAHEAD — or the count itself: the census
specimens dissolve once the window outgrows the trade |
A fifth species held a seat and lost it: coordination blindness,
the trap a binding budget seemed to open under the unthrottled
optimum itself, cured by a diagonal move — on the quotient the
trapped class merges with its behavioural twin one route flip from
the bottom, so the diagonal cure was two ordinary moves through a
twin-flat and the honest space never had the disease.
What the survivors share was once an open conjecture — every stall
is a tie artifact, dissolved by refining the ruler or
quotienting the space — and it settles as a dichotomy. The spine
is the policies whose two kinds share one reference: equal patience
on both, unresourced, every patience shorter than the counted window's
start. On the spine the conjecture is a theorem: the cover cells
containing an interval have an inclusion minimum, that minimum is
monotone in its interval, so committed cells nest pointwise along the
patience diagonal and lexicographic deficit descent on the behavioural
quotient stalls nowhere off the bottom, which is greedy — at any nested
shrinking stream and any horizon. Off the spine the counterexamples are
genuine hills with no measurement tie anywhere in their neighbourhoods,
so the instrument pair does not suffice in general: the burst trap
under a binding budget, and the horizon-cut stall with no budget at
all — three specimens, two in plain period-2 digit streams under the
squaring map at horizons 11 and 12, one built from three digit bursts
at horizon 16, where the same census over 177 generic streams finds
none. The census pair dissolves once the window outgrows its trade, so
a stall-free landscape — one loss surface, a row and a setting
fixed — is a property of the battery it was drawn from, generic
streams and long counts and slow maps, never of the unresourced
space; what says
where nesting still holds there is
the decision lemma.
Scope. A census over the settings scanned plus
a designed battery, not a classification of exact reader spaces. The
two space-born species and their cures are rules at the scopes
the funnel and
the resource laws state;
the ruler disagreement is a single specimen, at
(B, W) = (2, 0), and whether it is knife-edge or a family
is open; the burst trap is six designed specimens (spike digit streams
under the doubling map at budget 2); the horizon-cut stall is three
specimens in exact arithmetic, one hand-verified at each horizon; the
spine theorem is proved for this cover and move set.
verifiers:
explore_bootstrap_cures.py,
explore_scale_clock.py,
explore_stall_tie.py,
explore_stall_assembly.py
The slow-map refusal
and the one-cell wall observation
Of the battery's three legs, the slow map is the one an adversary
without a budget cannot buy back — the burst trap already buys the
doubling map back with one. Widen the digit range to 256 and take
horizons 9–20: the identity and doubling maps refuse across some 2,800
distinct censused landscapes and 70,000 adversarial search
evaluations, under the same detector that reproduces every
squaring-map specimen. A large digit buys one step of shrink under any
map, but only the squaring map compounds it along the window, so the
best slow-map stall margin approaches zero inversely in the digit cap
and never crosses. Behind the approach stands a wall. At the best
margin the search reached under each map the figure is exactly the
price of one further step down the cover, from a cell to a child of
it, each under its digit-cap
bound — one record traced to its cells and the
other a single-counted-step ratio by construction — and that one-cell
wall is
proved for any reader class holding a one-move neighbour whose
committed cells sit nested-or-equal at every counted step. That
domination condition holds for all 9,401 classes measured under
the identity map, without exception; the doubling map
dents it in 632 classes, of which 540 keep a neighbour shorter
step for step without nesting and 92 still lose only on aggregate; the
squaring map's stalls break it outright — every neighbour of a stall
concedes somewhere inside the window.
Scope. The refusal is an adversarial search at
the stated digit caps and horizons, so it is an observation and not a
law about slow maps. The one-cell wall is proved for this cover,
conditional on the domination condition; that condition is exhaustive
at scope under the identity map (9,401 off-bottom classes at horizons
9, 10, 12 and 16, zero exceptions) and measured, not derived, under the
others. Toy scale.
verifiers:
explore_stall_maprate.py,
explore_stall_domination.py
The escape
radius rule
A stall's escape radius is the length of the shortest
improving move sequence out of it, and every finite-loss stall found —
the ruler disagreement, the six burst traps, the three horizon-cut
stalls — has radius exactly 2: no single move improves any of them and
a pair of moves improves all of them. The infinite plateau stays the
signal cure's customer, its radius unbounded. At two moves the cure is
proved wherever the stalled class holds a policy with both patiences
finite and positive whose counted window still refines. Lowering both
patiences by one is an exact delay — that reader's committed cell at
every step is the parent reader's cell one step later — so its cells
nest inside the parent's pointwise, its loss telescopes to the window's
endpoints, and it improves strictly whenever it changes the class, on
any map at once, with zero exceptions across all 21,336 censused
classes. The squaring-map stalls hold no such policy — each is a single
policy with its straddle patience at zero — so their radius-2 escapes
stay measured rather than derived.
At one move instead of two the nesting is measured rather than
derived, one corner of it excepted, and its anatomy is mechanism-deep.
The
nesting neighbour is a patience-lowering
move every single time across both maps censused: no route flip, no
diagonal and no patience-raising move ever nests. Which member of the
class is chosen is load-bearing — single patience-down moves break
pairwise nesting in 3,225 of 44,040 identity-map pairs — and the two
parallel commit loops admit exactly two ways of diverging from equal
cells: a nested descent, or a cell where the policy prefers the tree
side and only the fresher reference opens a route while the chain is
still live. Under
the identity map that second one is benign — every firing sits before
the counted window opens — and the failing pairs
drift apart after a divergence that was itself nested. What never breaks is
the chain-preferring corner
(the chain-preferring nesting
theorem), which settles 5,774 of the identity map's 9,401 classes
outright; the
remaining 3,627 are witnessed only by readers preferring the tree side
at one or both cell kinds, whose nesting violations all sit before the
counted window begins and heal before it opens.
Scope. The two-move cure is a theorem for this
cover and move set, unresourced, at any map and stream, under the
stated patience hypothesis; the radius-2 figure is a measurement over
the stalls the census holds. The one-move statements are exhaustive at
the censused scope — 21,336 classes, the identity and doubling maps —
and the pre-window confinement is a rule at the identity scan's scope,
so the one-move law is not a theorem: the corner that is proved is its
chain-preferring case under the identity map, below. Toy scale.
verifiers:
explore_shift_telescope.py,
explore_seed_exclusion.py,
explore_chain_persistence.py
The reference geometry
The
chain-preferring nesting theorem
theorem
Under the identity map, take a reader preferring the chain
route at both cell kinds and lower its tree patience by one. The
two runs — that reader and its lowered copy, walked over one
stream — commit cells that nest pointwise, the lowered run's inside
the other's at every step. This holds across the whole
chain-preferring slice — every chain patience against every tree
patience, finite or infinite — at every stream, not only the ones
scanned.
The argument runs through the door — a step at which a run
leaves the straddle chain standing at a vertex, committing instead
inside the cell that chain sits in — rather than through the refusal
that blocks one. Call that chain the vertex's ladder, its cells
the rungs, and — under this map, where a reference is a cylinder
— the index of a reference the number of digits it pins, so the
finer reference carries the larger index. To fall behind, a run must
door off the ladder early, and dooring needs a tree reference fine
enough to sit strictly inside the cell it doors into. Three facts close
that route, and under this map all three read as facts about cylinders.
The vertex of any ladder a run occupies is a convergent of the
stream's value — one of the best rational approximations its expansion
produces — and the ladder there is exactly as long as the expansion's
next digit; at a vertex that is not a convergent the descent turns away
and the ladder is never entered. The cylinders strictly inside the cell
a door leads into are exactly those of index past the convergent's own,
every coarser one holding the vertex on its boundary or inside it. And
a chain reference two or more indices past the convergent's own has
already maxed the ladder, its near end lying strictly past the
last rung. So where the dooring reader's tree reference is the staler
of the two, a reference fine enough to door forces a chain reference
finer still, which has already maxed the ladder: the run either chains
rather than dooring, where that move is still available to it, or
leaves from the ladder's top rung, which is the only one left to leave
from — never from below the rung the other run will reach. Where it is
the fresher, the reference that would let it door already sits inside
the chain reference the two share, so the cell it doors into lies
inside the other run's cell to begin with. Both cases are read at the
patience of whichever run is the one at risk, which is what makes them
meet with no gap. What each of the three facts actually asks of the
cylinders, and how little it turns out to be, is
the door inequalities.
Under the squaring and doubling maps a reference is the image of
a cylinder rather than a cylinder, and the law fails thousands of times
over the same digit products — always with the lowered reader's tree
reference staler than the chain reference the two share, and always in
one crossing shape: the run holding the staler reference commits a
straddle whose near endpoint is strictly interior to the other's
cell.
Scope. The identity map and the
chain-preferring slice of the policy space, with two lemmas
imported already proved — the crossing catalog and the fresh-regime
lemma of explore_chain_persistence.py. The scans
confirm rather than carry it: 3,696,980 pair runs at distinct
coverage over complete digit products with zero bad steps, and each
of the three facts checked separately over four exhaustive
censuses. The map contrast is measured at the digit products
scanned, not proved.
verifiers:
explore_ladder_entry.py,
explore_chain_persistence.py
The door
inequalities rule
The cylinders are not the hypothesis. Take the reference
family — the nested chain of intervals a run's references are drawn
from — as the design variable instead of the map, the images of the
maps set beside chains built by hand, and the three facts' dependencies
come apart. The VERTEX fact asks nothing of the intervals' arithmetic
at all, and on closer reading asks nothing of this construction
either: it is a property of the Stern–Brocot tree. Every value
descends that tree through its semiconvergents — the
intermediate fractions its expansion passes through on the way to
each convergent, got by stopping a digit short — turning only at the
convergents among them, in runs as long as the expansion's digits.
The end of a straddle on the value's own side is the next
semiconvergent along, so the value sits inside that straddle exactly
when the descent stops advancing past its vertex — which is to say
the value itself
occupies every convergent it reaches and no other vertex at all. What
a run commits is a sub-collection of those — a committed cell always
contains the value, so containment alone forces the vertex, whatever
family the reference was drawn from — which is what leaves the stride
below anything to differ about. The
scans measure the part that concerns runs — 681,632 occupied
vertices over ten families crossed with both route preferences, not
one at a vertex that is not a convergent, each ladder running exactly
as long as the next digit
(the redundant cover's ladder
law read from the reader's side) — which makes them a check that
the cover behaves like the tree beneath it rather than a finding of
their own. The MAXED-LADDER fact asks nothing of the arithmetic
either. That leaves the CONTAINMENT fact — which references sit
strictly inside the cell a door leads into — and it is the only one
whose measured behaviour reads as arithmetic: writing a reference's
determinant for |ad − bc| at endpoints
a/b and c/d, determinant 1 is sufficient
and nothing more — 568,195 doors opened by a determinant-1 reference,
zero failures, while determinant 2 fails at 73,354 doors and still
holds at 14,939. The determinant was standing in for a decomposition,
and the decomposition is the tree's own. Determinant 1 is exactly the
condition that makes an interval a tree cell — the tree's cells are
bounded by determinant-1 pairs and nothing else is; and a reference of
any determinant is a finite union of maximal tree cells — its
pieces — which tile it, so its index is the smallest of theirs.
Exactly one piece holds the value the run is reading, and that
OCCUPIED piece is fine enough for free. The cell a door leads into is
a child carrying the vertex as an endpoint, and the reference sits
strictly inside that cell, so neither the reference nor its occupied
piece holds the vertex; the occupied piece, being a tree cell that
holds the value, is a node on the value's own path down the tree; and
the nodes on that path between one convergent and the next are exactly
the semiconvergent intervals, every one of them carrying the vertex as
an endpoint. A node holding the value and not the vertex is therefore
already of index past the convergent's own — a lemma rather than a
tally, with the scan as its control, short at none of 738,910 doors.
Containment then holds exactly when the pieces the value does NOT
occupy reach that index too, and determinant 1 is sufficient for the
empty reason that it has no such piece. Determinant 2 is two pieces
glued at the half-mediant — the mediant of the two endpoints
with numerator and denominator each halved — and fails exactly where
that second piece is too coarse. The criterion cuts across the
determinant rather than refining it: determinant 3 splits into two
pieces at 49,245 doors and into three at 34,867. So the arithmetic
leaves the statement.
What the law needs is none of it, and no family label carries it: two
inequalities, both read at the door itself. At a convergent vertex of
index σ — its position in the expansion, which is the same digit
count an interval's index measures — the tree reference's index is at
least σ + 1, and the chain reference's index is strictly larger
than the tree reference's. Where
both hold, a chain-preferring run's chain reference has maxed the
ladder — 68,958 doors on that slice
across all ten families, zero short, the count running over the doors
whose ladder length the family's own read digits reach, that length
being undefined past the horizon. The two conclusions then run on
different mechanisms, and they are not one fact read twice. The tree
cell door that would leave early is empty because a chain move exists
there and the preference takes it: the run chains rather than dooring.
The straddle exits are not empty at all — every one of the 68,958
leaves at the maxed rung, the only rung left to leave from,
with no chain move on offer at a single one of them, the commit loop
requiring a strict improvement. The invariant that the ladder never
grows past the index a run doored out at is satisfied by the exit's own
height, then, and not by the exit being prevented. Where the first
inequality fails — 4,511 doors, the chain reference short at 2,356 of
them — is where all 1,583 surviving violations sit.
The geometry is preference-free and the law is not, and that is the
rest of the hypothesis. Run the same split on the tree-preferring
slice: the maxed ladder is still handed over at all 88,932 such doors,
while 33,319 of those exits violate the invariant, against zero under
chain preference. So the two inequalities force the geometry and the
preference is what converts it into the law — the step that decides
whether a run takes the maxed rung it has been handed. That also sharpens
what the chain/tree axis is. Both preferences chain only at
convergents and walk them in strictly increasing index, so neither
reads anything but the continued fraction and the axis is
stride: where the tree reference is the staler of the two, the
chain-preferring run never once walks consecutive convergents, 0 of
5,859 sequences, and the tree-preferring run does in 1,646 of 5,875.
The statement is about single decisions rather than about families or
policies — a run cannot read its own reference's index without knowing
the digits, and a determinant-3 family carries decisions of both kinds.
The cylinder family satisfies both inequalities at every door of the
kind at issue, which is why it looked for so long like the hypothesis
itself.
Scope. Ten reference families — the maps'
images and hand-built chains — × 16 runs × exhaustive digit products,
1,209 to 1,241 streams per family. The geometric half is measured at
both route preferences and the nesting half at the chain-preferring
one; the two are stated together because the contrast between them is
the finding. A rule at that scope and not a theorem over all families:
what is proved is the identity-map case above. No input stays keyed to
the endpoints' arithmetic: what separates a determinant-2 reference
that opens a door respecting the first inequality from one that does
not is where its unoccupied piece sits, read over the same ten
families at both preferences. The occupied piece's own reach is proved
rather than measured, and the classification sets aside 1,690 doors,
all at determinant 3, where a family's finite digits leave undecided
which piece holds the value.
verifier:
explore_reference_families.py,
explore_g2_separator.py
The decision
lemma rule
What the spine theorem runs on is nesting: lower a patience, and
the committed cells of the two runs nest pointwise, so the finer
trace's cell sits inside the other's at every counted step. Off the
spine
that nesting is measured dead — but not everywhere, and where it
survives has a name. Call a step decision-free when no
iteration of its multi-commit had both candidates available at once:
a tree child and a straddle chain cell both containing the current
image, which is the one configuration in which the loop has a route
preference to consult. Unresourced, along a patience-down
move — one that lowers a single patience coordinate —
committed cells nest at every step whose whole history is
decision-free in both runs — zero exceptions among the 188,928
(policy, step) pairs that qualify. So the spine theorem's nesting
dies only where a preference decision was available. That is
necessary and not sufficient, and the same counts refute the converse
outright: 481,937 such pairs carry a decision in their history and
nest anyway. Half the
proof is in hand. From a common start it is complete — a smaller
tree reference sits in the same child and a smaller chain reference
gives a weakly longer chain, so both loops walk the same branch
sequence with the lower-patience run refining at least as far, and a
candidate appearing for the smaller reference would itself be a
second candidate. What the engine carries alone is the induction
across steps, where the two runs start from different cells: that is
the monotone-fixed-point step
the bottom lemma records as tight
in its single-reference form.
The consequence is a necessary condition on any unresourced stall
off the spine — every patience-down neighbour separated from it by
an available decision — and the question that condition leaves: can
a preference decision alone, with no conserved budget behind it,
buy a late gain with an early loss? A budget can, and that is the
burst trap's whole mechanism: a conserved spendable quantity, so
paying early removes capacity late. Unresourced the answer is
still yes. Across three designed batteries, 10,174 pairs of
policies one policy move apart carry a first differing counted step and a
total deficit pointing opposite ways — the side worse where the
traces part ends strictly ahead — and 4,114 of those pairs hold
equal patience on both ends, so the two runs read identical
references at every step and the entire divergence is the two
preference bits. The cleanest witness pays 3.244 ln at its
divergence step, then collects 6.415 ln at each of the next three
while the early winner freezes — its own subdivision point sits
inside the shrinking references — before the traces re-merge,
15.9995 ln apart. Nothing is conserved anywhere in that trade; the
only coupling between steps is the ratchet's position. So a budget
manufactures not the trade but its assembly into a local minimum:
the same landscapes carry thousands of trades and not one stall —
zero stalls and zero adjacent value ties across 348 distinct
unresourced landscapes, up to 1.9 times the decision density the
earlier evidence was read off — so a trade's late winner, the end
a stall would have to hold wherever a neighbour wins the step at
which their traces part, always sits at the bottom or finds a
strictly improving move elsewhere in its neighbourhood. A world
can deny it one: that is
the horizon-cut stall, which ends
the counted window inside the trade so the late win stands, and
beats whatever neighbours remain outright.
Scope. Exhaustive over 741,888 patience-down
comparisons — one policy and one counted step each — unresourced, on
the nine rows at horizon 120 and on the spike-stream battery at
horizons 16 and 120; the nesting statement is the 188,928 of them
that are decision-free throughout. The common-start half is proved for this
cover and move set; the induction across steps is carried by the
engine at that scope and not by a proof. Nesting beats the coarser
trace in the lexicographic deficit only while both traces are
finite-loss, which at patiences below the counted-window start is
every trace measured. The trade's existence is a rule — an
exact-arithmetic witness, re-derived by hand — and its abundance an
observation over 276,376 policy pairs in 1,102 landscape runs; the
desert is an observation over the 348 landscapes. Toy scale.
verifiers:
explore_stall_unresourced.py,
explore_decision_trade.py