Public-input marshalling correctness -- proof internals #
This file lifts the pointwise backward-copy facts to a loop invariant, repairs the finitely many captured scratch positions, and establishes the complete sparse representation of the Turing machine's initial configuration.
Store after installing the constants used by the backward-copy loop.
Equations
Instances For
Semantic invariant after relocating positions |x|, …, cursor + 1.
Uncaptured destinations are exact, captured destinations are at least marked
positive, future uncaptured raw sources retain their public-ABI value, and all
other data registers have their expected raw-or-zero contents.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Installing loop constants establishes the invariant before any input position has been relocated.
One positive-cursor body advances the complete relocation invariant by one position, including an exact value for ordinary sources and a positive visited marker for captured scratch sources.
The complete backward loop executes once per input position and leaves the relocation invariant at cursor zero.
Exact store selected by one captured-position repair command.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Exact store selected by the recursive captured-position repair pass.
Equations
- Complexity.RAM.TMConfig.Sparse.repairStore n [] x✝ = x✝
- Complexity.RAM.TMConfig.Sparse.repairStore n (entry :: rest) x✝ = Complexity.RAM.TMConfig.Sparse.repairStore n rest (Complexity.RAM.TMConfig.Sparse.repairBitStore n entry x✝)
Instances For
The recursive repair command has an exact structured execution.
On data registers, one repair either preserves the store or updates exactly the selected input-cell destination.
A repair list preserves a data register that is not one of its selected input-cell destinations.
A visited destination selected exactly once by a repair list receives its captured Boolean value shifted to the sparse symbol code.
A zero data register stays zero throughout every conditional repair, including when it is an unvisited captured destination.
Captured values selected for a public input.
Equations
Instances For
After captured-position repair, every positive input cell has its exact TM symbol code, cell zero is still temporarily blank, and all non-input tapes are still blank.
Exact store after initializing state, heads, and all cell-zero markers.
Equations
Instances For
State, head, and left-marker initialization turns repaired tape data into
the complete sparse representation of tm.initCfg x.
The selected capture-tree leaf executes the constant setup, exact backward copy, conditional repair, and semantic initialization, ending in a complete sparse representation of the TM's initial configuration.
The fixed public-ABI marshaller follows the unique capture-tree path for the input and establishes the sparse initial TM configuration.