EvalVis / EvalVis/TuringMachine
Non-deterministic Turing machine
- Dominant language
- TypeScript
- Stars
- 0
- Forks
- 0
- PR merge metrics
- No merged PRs in 30d
Description
**Describe the feature**
Non-deterministic Turing machine is similar to already implemented classical Turing machine with one difference:
It can have multiple choices when reaching the same state and value.
Example:
Classic Turing machine instruction:
q1, 1 -> q2, 0, R.
Meaning: when you are in state q1 and encounter number 1 switch to state q2 replace number 1 with number 0 and move writing head to the right.
Non-deterministic Turing machine can have multiple choices:
q1, 1 -> q2, 0, R.
q1, 1 -> q1, 1, L.
q1, 1 -> q3, 0, S.
So in the same state it can either:
1. Switch to state q2, write 0 and move right.
2. Remain in state q1, write 1 and move left.
3. Switch to state q3, write 0 and stay in the current cell.
Each choice has 33,(3)% change to be picked.
Optional requirement: if you are up for the additional challenge modify the changes for the instruction to be picked. Example:
q1, 1 -> q2, 0, R, 50
q1, 1 -> q1, 1, L, 10
q1, 1 -> q3, 0, S, 40
Now the first instruction has 50% chance to be picked, the second one 10% change and the last one 40% chance.
Make sure the chances sum to 100%.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.