技能一覧 › 大学院数学 計算理論・ラムダ計算

停止問題と決定可能性

対角線論法で停止問題 が決定不能(ただし帰納的可算)であることを示し、決定可能な言語と決定不能な言語の間に成り立つ・成り立たない帰着(例: 、任意の決定可能な言語は に帰着できる)を判定できる

前提

この技能までの道筋(22 技能)
算数中学高校大学大学院

読み込み中…

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

一覧で見る(前提が先)
  1. 決定性有限オートマトンの動作と受理判定 (大学数学 オートマトン・形式言語)
  2. チューリング機械の動作の追跡 (大学数学 オートマトン・形式言語)
  3. 四則の混じった計算の順序 (算数 計算と数のきまり)
  4. 等間隔にならんだ数の和 (算数 計算と数のきまり)
  5. 分数のたし算・ひき算 (算数 計算と数のきまり)
  6. 小数の四則計算 (算数 計算と数のきまり)
  7. 正負の数の加法・減法 (中学数学 数と式)
  8. 分数のかけ算・わり算 (算数 計算と数のきまり)
  9. 正負の数の乗除・累乗と四則混合 (中学数学 数と式)
  10. 分配法則を使った計算のくふう (算数 計算と数のきまり)
  11. 文字式の計算(同類項・分配法則) (中学数学 数と式)
  12. 等差・等比数列の和と Σ (数学B 数列)
  13. 数列の極限 (数学III 極限)
  14. 関数の極限 (数学III 極限)
  15. 約数の見つけ方 (算数 整数の性質)
  16. 素因数分解と約数の個数 (算数 整数の性質)
  17. 平方根の意味と根号の簡単化 (中学数学 数と式)
  18. 根号の乗除と加減 (中学数学 数と式)
  19. 指数の拡張と指数関数 (数学II 指数関数と対数関数)
  20. 対数の定義と性質 (数学II 指数関数と対数関数)
  21. 計算量のオーダーの比較 (大学数学 アルゴリズムと計算量)
  22. 多項式時間多対一帰着の性質 (大学院数学 計算理論・ラムダ計算)

説明

停止問題 は、どんなアルゴリズムでも判定しきれない言語の代表例です。この技能では、対角線論法で が決定不能であること、それでも「停止するものは必ず見つけられる」という意味で帰納的可算であることを示します。そのうえで、帰着 の性質と組み合わせて、 や「決定可能な言語はすべて に帰着できる」など、決定可能な言語と決定不能な言語の間の帰着の成否を判定できるようになります。

なぜそうしてよいのか

言葉を定めます。言語 が決定可能とは、すべての入力で必ず停止し、 なら受理・ なら拒否するチューリング機械があること。 が帰納的可算とは、 のときちょうど受理する( のときは拒否してもよいし停止しなくてもよい)チューリング機械があることです。 が帰納的可算なのは、 を受け取って の 上の動作を 1 ステップずつ模倣し、停止したら受理する機械(万能機械)を作れるからです。 が停止しないときはこの模倣も終わりませんが、帰納的可算の定義ではそれで構いません。

決定不能性は対角線論法で示します。 を決定する機械 があったと仮定し、次の機械 を作ります:「入力 に対し を 上で走らせ、『停止する』と出たら無限ループに入り、『停止しない』と出たらすぐ停止する」。 に自分自身の符号 を与えると、 が停止するのは が「 は で停止しない」と答えたとき、すなわち が停止しないときに限ります。これは矛盾なので は存在しません。機械の一覧と入力の一覧を縦横に並べた表の対角成分をことごとく裏返したものが で、 はどの行とも対角で食い違うので表に載り得ない、というのが対角線論法の正体です。

帰着の判定には、 の性質「 かつ なら 」と同じ証明をそのまま使います:(帰着関数 )で が決定可能なら、 を計算してから の決定機械を走らせれば も決定できます。同様に が帰納的可算なら も帰納的可算です。よって は決定可能な言語(たとえば )には帰着できません。逆向きは、決定可能な の決定機械 から「 を走らせ、受理なら停止、拒否なら無限ループ」という機械 を作っておけば、(固定の文字列 を に付け足すだけなので多項式時間)が を与えます。また は帰納的可算ではありません:もしそうなら、 を受理する機械と を受理する機械を 1 ステップずつ交互に走らせ、どちらかが受理した時点で答えれば が決定できてしまうからです。

手順

  1. 主張に現れる言語を「決定可能」「帰納的可算だが決定不能( など)」「帰納的可算でない( など)」に分類する。 は決定不能・帰納的可算、 は帰納的可算でない

  2. の形の主張で が決定可能なら、 も決定可能でなければならない。 が決定不能なら成り立たない(例: )

  3. で が帰納的可算なら、 も帰納的可算でなければならない。 が帰納的可算でなければ成り立たない(例: )

  4. が決定可能で なら、( は「拒否の代わりに無限ループする」)で が成り立つ

  5. 補集合が絡むときは で向きをそろえてから、手順 2〜4 を当てはめる

例題

とし、 は充足可能な CNF 論理式全体の言語、 は多項式時間多対一帰着とする。次のうち正しいものをすべて選べ。

ア  は決定可能である。
イ  は帰納的可算である。
ウ  が成り立つ。
エ  が成り立つ。
オ  は帰納的可算である。

例題の解答

【手順 1】分類する。対角線論法により は決定不能なので ア は誤り。 の 上の動作を模倣して停止したら受理する機械があるので は帰納的可算で、イ は正しい。 は、変数への真偽値の割り当て(有限個)をすべて試せば必ず停止して判定できるので決定可能。

【手順 2】ウ: なら、帰着関数を計算してから を判定することで が決定可能になり、矛盾。よって ウ は誤り。

【手順 4】エ: の決定機械を、拒否する代わりに無限ループするよう書き換えた機械 をとると、 は で停止する 。写像 は固定の文字列を付けるだけで多項式時間で計算できるので、エ は正しい。

【手順 1 の補足】オ: も帰納的可算なら、 と の受理機械を交互に 1 ステップずつ走らせることで が決定可能になり矛盾。よって オ は誤り。

以上より正しいのは イ と エ。

答え:

イ, エ

よくある誤り

この説明は AI が書き、別の AI が例題を独立に解いて答えを確かめ、説明を一歩ずつ査読しました。

入口の問題

この技能を使う問題