Turingmachine

Screenshot of the turingmachine software program

[Download on GitHub]

Note: This software requires a java-environment

This software is meant for teaching the principles of turning-machines as a fundamental concept in the field of computer science.

The software is licensed under the terms of GPL3 because it uses JLaTeXMath for rendering the user interface.

Functions:

  • Creation of protocols for Turingmachines
  • Export of protocols (LaTeX)
  • Multitape Turingmachines
  • Highlighting of syntactical errors for Turingmachine tasks
  • Saving of the task list
  • Zoom for the protocol view
  • Highlighting of situations with a dice symbol in which more than one task would have been possible for the Turingmachine (for nondeterministic Turingmachines).
  • Execution of a user defined number of steps (10-250)

Hint: In order to use multitape turingmachines, you have to enter multiple lines as input. Each line will then be considered to be one tape.

Task definition then follows the scheme: "z0 11 11 RR z0" for 2 tapes (for comparison - definition of a task for a single tape turingmachine would be "z0 1 1 R z0").