Round-independent workspace bounds for repeatUntilBlank #
Every round of a RunsWords phase starts from a wordsCfg (where every work-tape head sits at
position 0), runs for at most t steps (moving each head by at most 1 cell per step, so all
heads stay in window t), and halts in a wordsCfg (returning all work-tape heads back to 0).
Repeating such a phase any number of rounds via Turing.MultiTapePTM.repeatUntilBlank therefore
keeps every work-tape head inside window t along every prefix of every branch, regardless of how
large rounds is.
Main results #
Turing.MultiTapePTM.workTapePos_runsWords_mem_window: a closedRunsWordsphase of timetkeeps every work-tape head inwindow talong every fixed-coin replay.Turing.MultiTapePTM.workTapePos_repeatUntilBlank_mem_window:repeatUntilBlankof a closedRunsWordsloop body of per-round timetkeeps every work-tape head inwindow tfor any number of rounds.Turing.MultiTapePTM.runsInSpace_toNTM_seq_repeatUntilBlank: sequencing an initialRunsWordspreparation (t₁),repeatUntilBlank(tper round), and a finalRunsWordsphase (t₂) runs in nondeterministic workspacek * (2 * max t₁ (max t t₂) + 1), independent ofrounds.
Running an oracle configuration with an Empty operation signature samples its closed run.
Along any fixed-coin replay of a closed RunsWords phase of step bound t, every work-tape
head remains in window t.
Round-independent head window for repeatUntilBlank. Under the closed RunsWords
invariants of RunsWords.repeatUntilBlank with per-round step bound t, every fixed-coin replay of
repeatUntilBlank i body keeps every work-tape head inside window t, for any rounds.
Workspace bound for first.seq ((repeatUntilBlank i body).seq last). When first (t₁),
each round of body (t), and last (t₂) satisfy closed RunsWords specifications, the
combined machine visits at most k * (2 * max t₁ (max t t₂) + 1) work-tape cells on x,
independently of rounds.