1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
|
# vim: ts=2 sw=2 et ft=ruby
# Call with an empty tape
# $ turing.rb bb3.stm ''
# Busy Beaver: 3-state, 2-symbol
# state A
1. cond if: 'B', then: 2, else: 4
2. write symbol: '1', goto: 3
3. right goto: 6
4. write symbol: '1', goto: 5
5. right goto: 16
# state B
6. cond if: 'B', then: 7, else: 9
7. write symbol: 'B', goto: 8
8. right goto: 11
9. write symbol: '1', goto: 10
10. right goto: 6
# state C
11. cond if: 'B', then: 12, else: 14
12. write symbol: '1', goto: 13
13. left goto: 11
14. write symbol: '1', goto: 15
15. left goto: 1
# halt
16. halt
|