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

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

難易度 4大学院入試の標準レベル大学数学 オートマトン・形式言語

入力アルファベット 、テープ記号の集合 ( は空白記号)をもつ 1 テープ決定性チューリング機械 を考える。

  • 状態の集合は であり、初期状態は 、受理状態は 、拒否状態は である。 は または に入った時点で停止する。
  • テープのマスには左から順に番号 が付いており、入力 はマス から に 1 文字ずつ書かれ、ほかのマスはすべて である。最初、ヘッドはマス にある。
  • 遷移関数 は次の表で与えられる。表の は「状態 に移り、いまのマスに記号 を書き、ヘッドを の向きに 1 マス動かす( は右、 は左)」ことを表す。
状態

遷移関数を 1 回適用することを 1 ステップと数える( や に移る遷移も 1 ステップと数える)。

を を満たす整数とする。入力 ( を 個並べた後に を 個並べた文字列)に対して を動かしたとき、 が停止するまでのステップ数を の式で求めよ。

この問題で使うもの

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

読み込み中…

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

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

ヒント

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

ヒント 1

まず短い入力(たとえば )で を 1 ステップずつ追跡し、各状態がどんな役割をしているか(どの記号を書き換え、どちらへ進むか)をつかもう。

ヒント 2

の 1 回の往復で、 が 1 つ に、 が 1 つ に変わる。第 往復の開始時のテープの様子を書き、右へ進むステップ数と左へ戻るステップ数を で表してみよう。

ヒント 3

1 往復は によらず ステップである。 往復で がなくなった後、 はまだ残っている を読む。そこから が右端の に着くまでのステップ数を数えよう。

答えと解説

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

入力 では、マス 〜 に 、マス 〜 に があり、マス 以降は である。

は、状態 で左端の未処理の を に書き換え、 で右へ進んで最初の を に書き換え、 で左へ戻って の右隣に戻る、という往復を繰り返す。

第 往復()

第 往復の開始時、状態は 、ヘッドはマス にあり、マス 〜 は 、マス 〜 は 、マス 〜 は 、マス 〜 は である( のときも同様)。

  • がマス の を にして右へ: ステップ。
  • はマス 〜( または )を右へ進む: ステップ。
  • がマス の を にして左へ、 になる: ステップ。
  • はマス 〜( または )を左へ進む: ステップ。
  • がマス の を読んで右へ、 になる: ステップ。

よって 1 往復は ステップで、終了後は状態 、ヘッドはマス にあり、上の形が を にして保たれる。 往復で合計

ステップである。

最後の部分

往復の後、状態は 、ヘッドはマス にあり、マス 〜 は 、マス 〜 は 、マス 〜 は で、 は残っていない。 よりマス は である。

  • がマス の を にして右へ: ステップ。
  • はマス 〜( または )を右へ進む: ステップ。
  • がマス の を読み、 に移って停止する: ステップ。

この部分は ステップである。

合計

(確認: の入力 では、実際に追跡すると ステップで停止し、 と一致する。)

別解

入力 では、マス が 、マス が である。

【第 周回()】 周回の始めは、マス が 、マス が で、ヘッドはマス ()にあり状態は である( のときは初期状態)。
- が を に書き換えて右へ(): 1 ステップ。ヘッドはマス 。
- が と を読み飛ばして右へ進み、最初の (マス )に着くまで: マス を読むので ステップ。
- が を に書き換えて左へ(): 1 ステップ。ヘッドはマス 。
- が と を読み飛ばして左へ進み、(マス )に着くまで: マス を読むので ステップ。
- が を読み、 に移って右へ: 1 ステップ。ヘッドはマス 。

合計 ステップ。これが 回続く( なので毎回 が残っている)。

【第 周回】 周回後、ヘッドはマス で状態は 。 より、マス は (少なくとも 1 個)、マス は 、マス 以降は空白である。
- が を に書き換えて右へ(): 1 ステップ。ヘッドはマス 。
- が と を読み飛ばして右へ進む: マス を読むので ステップ。
- マス の空白を が読み、 に移る: 1 ステップ。

合計 ステップで拒否して停止する。

【総ステップ数】
。

【検算】 (): (マス1,)→ マス2 [1]、 を読み右へ マス3 [2]、 を にして左へ マス2 [3]、 が を読み左へ マス1 [4]、 を読み で右へ マス2 [5]。 が を にして右へ マス3 [6]、 が を読み右へ マス4 [7]、空白を読み へ [8]。計 8 ステップ。式: で一致。

この問題の確認

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

間違いを報告する

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

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

関連する問題