Fixed-time rewind correctness for PTM repetition #
This internal module lifts the one-tape fixed-rewind theorem to the complete
NTM.repeatAtTime wrapper configuration. A snapshot packages the input tape,
all work-tape banks, the real output tape, and the per-tape completion flags.
Its deterministic step commutes with one wrapper .rewind transition.
After exactly T + 1 rewind transitions, every active tape is parked at cell
one with its contents unchanged, the control enters .finish, and the inactive
tapes and real output tape are exactly preserved. Choice bits are arbitrary in
this administrative phase.
Main definitions and results #
NTM.RepeatRewindSnapshot— simultaneous tape-and-flag rewind stateNTM.repeatRewindSnapshotStep,NTM.repeatRewindSnapshotIter— pure dynamicsNTM.repeatAtTime_trace_one_rewind— one wrapper step matches one snapshot stepNTM.repeatAtTime_trace_rewind_snapshot— exactT + 1snapshot correspondenceNTM.repeatAtTime_trace_rewind_bound— finish state, parked active tapes, frame
Pure data advanced during the simultaneous fixed rewind of one repetition bank. The control state and completed-run votes remain external constants.
- input : Tape
Shared read-only input tape.
All physical work-tape banks.
- output : Tape
Real wrapper output tape, framed throughout rewind.
- inputDone : Bool
Whether the input head has already bounced from cell zero.
Per-local-tape bounce flags for the active bank.
Instances For
A framed tape is off the start marker and satisfies its uniqueness invariant, hence the wrapper's idle action preserves it exactly.
Equations
- Complexity.NTM.RepeatParked t = (t.StartInvariant ∧ 1 ≤ t.head)
Instances For
Snapshot well-formedness: input and active tapes satisfy the start-marker invariant, while inactive tapes and real output are parked for exact framing.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Advance every active tape and completion flag by one fixed rewind step.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Iterate the simultaneous rewind snapshot dynamics.
Equations
Instances For
Pointwise form of repeatRewindBankDone on tape reads.
Embed a rewind snapshot at counter r into the wrapper configuration.
Equations
- tm.repeatRewindCfg j r q votes S = { state := Complexity.NTM.RepeatQ.rewind j r q votes S.inputDone S.bankDone, input := S.input, work := S.work, output := S.output }
Instances For
Embed a completed rewind snapshot in the wrapper's finish state.
Equations
- tm.repeatFinishCfg j q votes S = { state := Complexity.NTM.RepeatQ.finish j q votes, input := S.input, work := S.work, output := S.output }
Instances For
The tape component of repeatFixedRewindTapeStep is its guarded movement:
writing the current symbol back is cell-preserving under StartInvariant.
One simultaneous snapshot step preserves snapshot well-formedness.
Every finite snapshot iteration preserves well-formedness.
A snapshot step commutes with any number of iterations of itself.
Snoc form of the snapshot iterator recursion.
The input tape and flag project to the pure one-tape rewind iterator.
Each active bank tape and flag project to the pure one-tape iterator.
Snapshot iteration preserves every inactive physical work tape exactly.
Snapshot iteration preserves the real output tape exactly.
One wrapper rewind transition commutes with one simultaneous snapshot step. The choice bit is arbitrary because the administrative phase ignores it.
Before the final rewind slot, an m-step wrapper trace agrees exactly with
m pure snapshot steps and carries rewind counter m.
Exactly T + 1 wrapper rewind transitions produce the finish configuration
associated with T + 1 simultaneous snapshot steps.
Fixed rewind correctness. Starting from rewind counter zero with all
completion flags false, T + 1 administrative steps enter .finish, park the
input and every active-bank tape at cell one without changing their cells, and
preserve every inactive tape and the real output tape exactly.