Turing Machine Simulator


Comma separated list of the Turing Machine States.

Accepting States

Comma separated list of the final/accepting Turing Machine states. The Turing Machine will terminate on entering any of these states.


Comma separated list of symbols in the Turing Machine's alphabet.

Start State

The state the Turing Machine starts execution from.

Blank symbol

Default value of tapes cells which have not been written to.

Transition Function

δ : Q ⨯ Σ → Q ⨯ Σ ⨯ {L, R}

The transition function takes the current state of the Machine and the symbol at the current tape head location and outputs: the next state of the machine, what symbol to write to the current tape head location, and what direction (left or right) to move the tape head. If the transition is not defined for the current machine state and tape symbol, the Turing Machine stops.

State Symbol Next State Output Symbol Direction


Comma separated list of input symbols to the Turing Machine. The input cannot contain the blank symbol.

Execution State

A Turing Machine continues to execute until it reaches an accept state or is in a state where there is no transition defined for the current symbol. The machine's tape is infinitely long in both directions and only the current cell and other cells which have been written to are shown. The current tape head location is indicated by the blue box. Press "Next Step" to single step through the machine's execution.


Current State
Current Transition

Written by Adrian Stoll on 27 Sep 2020