A fixed structured-RAM block for one Turing-machine transition #
The finite transition function is compiled as a decision tree. The program
first loads the symbols under all named heads, dispatches on the finite-state
code and the n + 2 four-symbol codes, then performs the selected transition
using indirect stores into the bounded tape blocks.
The construction is fixed once tm and the cell-window bound are fixed. It
does not install or consult an untrusted transition-table oracle.
Input tape index.
Equations
Instances For
Direct head register for one named tape.
Equations
- Complexity.RAM.TMConfig.Step.headReg tape = 1 + ↑tape
Instances For
First scratch register beyond the represented configuration.
Equations
Instances For
Constant-zero scratch register.
Equations
Instances For
Constant-one scratch register used by decrementing switches and head moves.
Equations
- Complexity.RAM.TMConfig.Step.oneReg n bound = Complexity.RAM.TMConfig.Step.scratchBase n bound + 1
Instances For
Destructive copy of the finite-state code used by the outer switch.
Equations
Instances For
Scratch register holding an indirect cell address.
Equations
- Complexity.RAM.TMConfig.Step.addressReg n bound = Complexity.RAM.TMConfig.Step.scratchBase n bound + 3
Instances For
Scratch register holding a writable symbol code.
Equations
- Complexity.RAM.TMConfig.Step.valueReg n bound = Complexity.RAM.TMConfig.Step.scratchBase n bound + 4
Instances For
Scratch register holding the symbol loaded under one named head.
Equations
- Complexity.RAM.TMConfig.Step.symbolReg n bound tape = Complexity.RAM.TMConfig.Step.scratchBase n bound + 5 + ↑tape
Instances For
Exclusive upper bound on every configuration and scratch register.
Equations
- Complexity.RAM.TMConfig.Step.registerLimit n bound = Complexity.RAM.TMConfig.Step.scratchBase n bound + n + 7
Instances For
A uniform value bound large enough for addresses, states, symbols, and a single rightward head move.
Equations
- Complexity.RAM.TMConfig.Step.wordBound tm bound = max (Complexity.RAM.TMConfig.Step.registerLimit n bound) (max (Fintype.card tm.Q) (bound + 1))
Instances For
One-bit-cushioned width used in logarithmic-cost bounds.
Equations
- Complexity.RAM.TMConfig.Step.wordWidth tm bound = Complexity.RAM.bitlen (Complexity.RAM.TMConfig.Step.wordBound tm bound) + 1
Instances For
A store fits the explicit register/value envelope used by one transition block. This public predicate states the concrete boundary directly without exposing the internal resource-certificate structure.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Decode one valid four-way switch branch as a tape symbol.
Equations
Instances For
Symbols currently read by all named TM heads.
Equations
- Complexity.RAM.TMConfig.Step.readSymbols cfg tape = (Complexity.RAM.TMConfig.tapeAt cfg tape).read
Instances For
Load the symbol under one represented head into its dedicated scratch register.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Initialize constants and copy the represented finite-state code.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Initialize scratch state and load every represented head symbol.
Equations
- Complexity.RAM.TMConfig.Step.loadOps n bound = Complexity.RAM.TMConfig.Step.setupOps n bound ++ List.flatMap (Complexity.RAM.TMConfig.Step.loadTapeOps n bound) (List.finRange (n + 2))
Instances For
Encode a writable tape symbol with the same zero-blank convention as the configuration representation.
Equations
Instances For
Update a represented head in the indicated direction.
Equations
- One or more equations did not get rendered due to their size.
- Complexity.RAM.TMConfig.Step.moveOps n bound tape Complexity.Dir3.stay = []
Instances For
Write one represented work/output tape and restore the left-end marker.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Write one represented work/output tape and move its head.
The direct write restoring cell zero to ▷ makes this branch-free while
matching Tape.write, whose write at head zero is a no-op.
Equations
- Complexity.RAM.TMConfig.Step.writeMoveOps n bound tape write direction = Complexity.RAM.TMConfig.Step.writeOps n bound tape write ++ Complexity.RAM.TMConfig.Step.moveOps n bound tape direction
Instances For
Straight-line register operations implementing a statically selected TM transition case.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Structured command for one statically selected transition case.
Equations
- Complexity.RAM.TMConfig.Step.action tm bound state symbols = Complexity.RAM.Structured.Cmd.basics (Complexity.RAM.TMConfig.Step.actionOps tm bound state symbols)
Instances For
Recursively dispatch on the loaded symbols for the listed named tapes.
Equations
- One or more equations did not get rendered due to their size.
- Complexity.RAM.TMConfig.Step.dispatchSymbols tm bound state [] x✝ = Complexity.RAM.TMConfig.Step.action tm bound state x✝
Instances For
Dispatch on the finite-state code, then on every loaded tape symbol.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Fixed structured-RAM program implementing one nonhalting TM transition.
Equations
Instances For
Concrete compiled RAM block for one nonhalting TM transition.
Equations
- Complexity.RAM.TMConfig.Step.compiled tm bound = (Complexity.RAM.TMConfig.Step.program tm bound).compile
Instances For
Exact transition count through symbol dispatch for the actually read case.
Equations
- One or more equations did not get rendered due to their size.
- Complexity.RAM.TMConfig.Step.dispatchSteps tm bound state actual [] = (Complexity.RAM.TMConfig.Step.actionOps tm bound state actual).length
Instances For
Exact source/compiled transition count for one represented TM step.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Logarithmic-cost bound through symbol dispatch.
Equations
- One or more equations did not get rendered due to their size.
- Complexity.RAM.TMConfig.Step.dispatchCost tm bound state actual [] = 4 * (Complexity.RAM.TMConfig.Step.actionOps tm bound state actual).length * Complexity.RAM.TMConfig.Step.wordWidth tm bound
Instances For
Explicit logarithmic-cost bound for one represented TM step.
Equations
- One or more equations did not get rendered due to their size.