Skip to content

simulates non-graphically a non-deterministic turingmachine (ntm)

Notifications You must be signed in to change notification settings

NiklasKaulfers/NTMsim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 

Repository files navigation

simple non deterministic turing machine simulator


TODO:

implementation of Epsilon
implementation of a GUI representing runs and allowing changes

what to change

the TestText.txt file contains example code, replace whats in there with ur code and it will run

how to install

requires jdk22 or higher version
in .../NTMsim/src use:
javac *.java
java Main

if something goes wrong or it shows a file is missing just compile that file with:
javac MissingFile.java

syntax:

here is how the syntax would look like replace the given cariable names with ones you like

.init:
start: your start;
end: your end;
alphabet: char1, char2, ...;
symbols: char1, char2, char3,...;
.code:
currentState, currentChar, nextState, nextChar, (< or > or _);

for the direction use <, > or _ to show where the tm should read next
the order in init or in code doesnt matter, but the .init part has to come before the .code part
you need 1 start point and 1 end point, whenever the next command is read as end while going through ur tm it will terminate successfully
the size of the alphabet or the symbols doesnt matter, should be bigger then 1 to make a functional program tho
in code u have to create the commands for each situationhere is also recommeneded a size of atleast 2 so it does smth
whitespaces can be placed however you want to, the parser will remove them within itself anyways

example :

.init: start:q; end: q2; alphabet: a,b; symbols: a,b,c; .code: q,a,q1,a, >; q1,b,q2,b,>;

this works

.init: ; symbols: a,b,c
end: q2; alphabet: a,b; start: q; .code: q,
a,q1,a, >; q1,b,q2,b,>;

so does this even tho it doesnt look good

About

simulates non-graphically a non-deterministic turingmachine (ntm)

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages