Create and run Turing machines

Version 1.1.0 (10.8 KB) by Thomas
Some tools and examples for creating and simulating Turing machines and macro-Turing machines.
50 Downloads
Updated 5 Nov 2020

View License

The class "TuringMachine" provides some tools for defining, running and analyzing simple Turing machines.
The class "MacroMachine" provides methods to define a macro-machine and simulate it following: Alex Holkner: Acceleration techniques for busy beaver candidates. In: Proceedings of the Second Australian Undergraduate Students' Computing Conference, 2004. S 75-80 or https://www.researchgate.net/publication/254389437_ACCELERATION_TECHNIQUES_FOR_BUSY_BEAVER_CANDIDATES
Using a macro machine can significantly improve the simulation performance compared to working with a basic Turing machine (however no speedup is guaranteed) .

Run TuringExample() for an example how the methods in both classes work.
Set a debug stop in line 6 of the function onestep to analyze the simulation step by step and see how the states, the tape and the position of the tape head change.

Cite As

Thomas (2024). Create and run Turing machines (https://www.mathworks.com/matlabcentral/fileexchange/80446-create-and-run-turing-machines), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2020b
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes
1.1.0

Improved plot function for Turing machines. Some minor bugfixes.

1.0.0