The C++-program simulates a Turing Machine (TM).
TM is defined by input files : metafile, states file, alphabet file, transition file, input word(s) file(s).
- Each row of metafile contains data related to some Turing machine (number of tapes, names of states file, alphabet file, transition file, input word(s) file(s)).
- States file contains list of initial, halting and internal states.
- Alphabet contains list of empty, input and internal symbols.
- Each row of transition file contains some transition rule.
- Each row of input word file contains input word for some tape.
A Turing Machine example (Recognition of Palindromes) from 'The Design and Analysis of Computer Algorithms [1976]' by A.V.Aho, J.E.Hopcroft, J.D.Ullman (See examples 1.8, 1.9) is used as a demo sample of Turing Machine.
Sources and demo :
http://alexvn.freeservers.com/s1/turing.html
http://sourceforge.net/projects/turing-machine