Design
Interactive computer science

Turing Machine Lab

Build, validate, and run your machine one transition at a time.

HU EN
BSc thesis - Galambosi Ádám.
Show email address
States
Tapes
Tape content is too long. It need to be less than 40 characters.
Heads
Rules
Rules check
[|[message.message]|]
Initialization
Structure
Tapes number:
Heads on tapes: [ [|[ index ]|] -> [|[ tape.heads.length ]|] ]
States: [|[ state ]|]
Start state:
End states: [|[ endState ]|]
Inside state
Actual state:
Done steps:
Tapes
Rules
[|[ rule ]|]
Guide
  • Smallest head and tape number is 0
  • Head start position available inputs are integers and 'u' character.
  • At head start position '0' means strings left side, 'u' means longest string's right side.
  • First match executes, so order is important.
  • Every parameter in the rules is optional except statuses and '='.
  • Every rules executes left to right, so order is important in every rule.
  • Parameters are separates with space.
  • Rules main parts starts with statuses.
  • Head name syntax: 'tapeNumber-headNumber'.
  • '=' symbol is the separator between read and write parts.
  • Symbol of empty read is '_'
  • Example rule: 'q0 0-1:2 = q1 0-1:3 0-1:>'.
  • Example means: if machine in q0 status and we read 2 at tape 0 with head 1, the machine step into q1 status, write 3 with 0-1 head and this head steps right.
Examples