チューリングマシン作成の開始
オートマトンシミュレータでチューリングマシンを作成するには,「File」メニューの「New」-> 「Turing Machine」を選択します.
My First Turing Machineの入力
まずは,教科書の図6.6に掲載されている問題L5「文字aとbからなる文字列xに現れるaの個数がbよりも多い時に真,そうでない時に偽」を解くチューリングマシン「My First Turing Machine」を作ってみます.チューリングマシンの編集もオートマトンの編集とほぼ同じです.ただ,状態遷移の矢印につくラベルは,オートマトンでは入力文字だけだったのですが,チューリングマシンでは以下の3種類の組み合わせからなるラベルになります.
- 入力文字 (Input Symbols) : 空白は「blank」を選びます.
- 出力文字 (Output Symbol) : 変更がない場合はno change を選びます.
- 移動方向 (Head Movement) : 左(Left)に進むか右(Right)に進むかを決めます.
教科書図6.6に対応するチューリングマシンは以下のようになります.
テープへの入力
チューリングマシンへの入力が終わったら,テープへの入力を行います(オートマトンシミュレータと違って,実行開始前にテープに書き込んでおく必要があります).既に書き込まれている時は,
実行開始時の注目点が緑の逆三角で表現されているので,入力文字列の左端がそこに来るようにして,文字列を入力していきます."abaabba" という文字列を入力し終わった状態が,以下の図になります.
実行
文字列 "abaabba" はaが4回,bが3回使われているので,正しいチューリングマシンが作られていたら,問題L5「文字aとbからなる文字列で,現れるaの個数がbよりも多い」が真になるはずです.実行して確かめてみましょう.実行の制御はメニュー上のボタンでおこないます.
: 実行開始
: 一時停止
: 1ステップ進む
: 1ステップ戻る
: 入力をクリアする.


実行終了後に,
1ステップ戻るボタン(
)を押すと以下のように,以下のように不受理状態で停止したことがわかります.
(注) チューリングマシンに関しては,シミュレータの中でテストする機能はありません.