単元一覧 › 大学数学 オートマトン・形式言語

オートマトン・形式言語の問題

難易度 1教科書の例題レベル大学数学 オートマトン・形式言語

1 テープ決定性チューリング機械 を考える。

  • 入力アルファベット:
  • テープ記号の集合: ( は空白記号)
  • 状態の集合: 。初期状態は 、停止状態は である( からの遷移はない)。
  • テープは右に無限に続き、はじめは左端のマスから順に入力文字列が書かれ、残りのマスはすべて である。ヘッドは左端のマス(入力の 1 文字目)にあり、状態は である。

遷移関数 は次の表で与えられる。表の は「状態 に移り、いま読んでいるマスに記号 を書き、ヘッドを の向き( は右、 は左)に 1 マス動かす」ことを表す。「—」の組では遷移は定義されていない。

状態
—
—
——

遷移を 1 回適用することを 1 ステップと数える。入力文字列 を与えて を動かしたとき、状態が になるまでに何ステップかかるか求めよ。

この問題で使うもの

この問題を解けるようになるまで(2 技能)
算数中学高校大学大学院

読み込み中…

右端(太枠)がこの問題で使う技能です。左へドラッグすると、さらに前の前提をさかのぼれます。技能を押すと、そこまでの道筋が光ります。

一覧で見る(前提が先)
  1. 決定性有限オートマトンの動作と受理判定
  2. チューリング機械の動作の追跡

ヒント

行き詰まったら、上から順に 1 つずつ開いてください。

ヒント 1

チューリング機械の動作の追跡を使う。状態・テープの内容・ヘッドの位置(様相)を、遷移表に従って 1 ステップずつ書き出していく。

ヒント 2

各ステップでは「いまの状態」と「ヘッドが読んでいる記号」の組で表を引き、書く記号・ヘッドの向き・次の状態を決める。 は を読み飛ばして右へ進み、 を に書き換えて に移る。

ヒント 3

最初の 3 ステップで を読み飛ばし、4 ステップ目で を に書き換えて になる。その後 が右端の空白に着くまで右へ進み、空白で左に戻って になる。そこから に入るまでを数えよう。

答えと解説

答えを見る
結果を記録する(このブラウザにだけ保存されます):
解説を読む

様相(状態・テープの内容・ヘッドの位置)を 1 ステップずつ追跡する。様相を と書き、「テープの内容は 、状態は 、ヘッドは の 1 文字目を読んでいる」ことを表す。

はじめ(0 ステップ):

1. 状態 で を読む → 。 をそのまま残して右へ。様相
2. で → 。様相
3. で → 。様相
4. で → 。 を に書き換えて右へ、状態 。様相
5. で → 。様相
6. で → 。様相
7. で → 。左へ戻り状態 。様相
8. で → 。右端の を に消して左へ、状態 。様相

8 ステップ目で停止状態 に入ったので、 は停止する。途中で遷移が定義されていない組(「—」)には一度も出会っていない。

停止時のテープの内容は ( が 5 個)であり、この機械は 1 進法で を計算していることがわかる。

よって、求めるステップ数は である。

別解

入力 はマス 1〜6 に書かれている(1,1,1,+,1,1)。マス 7 以降は である。ヘッドはマス 1、状態は から始める。

ステップ 1: マス 1 で 、記号 1 → 。ヘッドはマス 2。
ステップ 2: マス 2 で 、記号 1 → ヘッドはマス 3。
ステップ 3: マス 3 で 、記号 1 → ヘッドはマス 4。
ステップ 4: マス 4 で 、記号 → 。マス 4 を 1 に書き換え、ヘッドはマス 5。
ステップ 5: マス 5 で 、記号 1 → ヘッドはマス 6。
ステップ 6: マス 6 で 、記号 1 → ヘッドはマス 7。
ステップ 7: マス 7 で 、記号 → 。ヘッドはマス 6。
ステップ 8: マス 6 で 、記号 1 → 。状態 になる。

検算: で 1 を 3 個読み(3 ステップ)、 で 1 ステップ、 で 1 を 2 個読み(2 ステップ)、空白で 1 ステップ、 で 1 ステップ。合計 。途中で未定義の遷移には到達しない。

よって 8 ステップ。

この問題の確認

AI が作成した問題です。公開前に次の確認を行いました。確認の方法について

間違いを報告する

この問題の誤り・分かりにくい点・難易度や学年のずれを知らせる
どこについての報告ですか

報告の内容と問題の番号を保存します。名前やメールアドレスは保存しません。

関連する問題