【ちゅーりんぐかんぜん】

チューリング完全 とは?

💡 「何でも計算できます」の理論的お墨付き
📌 このページのポイント
チューリングマシンの構造 0 1 1 0 0 無限テープ ← 左右に無限 → ヘッド 読み書き 制御装置(状態遷移) q0 q1 qH 開始状態 停止状態 テープ+ヘッド+状態遷移 = 万能計算機
チューリングマシンの概念図
ひよこ ひよこ

チューリング完全って、何が「完全」なの?

ペンギン先生 ペンギン先生

「計算能力が完全に揃ってる」という意味だよ。チューリングマシンという理論上の万能計算機と同じことができるなら、その言語やシステムは「チューリング完全」と呼ばれるんだ

ひよこ ひよこ
ペンギン先生 ペンギン先生

無限に長いテープと、テープを読み書きするヘッドと、状態を持つ制御装置でできた仮想的な機械だよ。シンプルな仕組みだけど、理論上はどんな計算でもできるんだ

ひよこ ひよこ

プログラミング言語は全部チューリング完全なの?

ペンギン先生 ペンギン先生

ほとんどはそうだけど、HTMLCSSは単体ではチューリング完全じゃないよ。ループ条件分岐がないからね。逆にExcelの数式やマインクラフトのレッドストーン回路がチューリング完全だと証明されてるのは面白いよね

ひよこ ひよこ

チューリング完全だと何でも解けるの?

ペンギン先生 ペンギン先生

理論上はね。ただし「理論上解ける」と「現実的に解ける」は別物だよ。時間やメモリが足りなかったり、そもそもチューリングマシンでも解けない「停止問題」のような問題もあるんだ。チューリング完全は万能に見えて、実は限界もあるんだよ

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「チューリング完全」って出てきたら「理論上どんな計算でもできる能力がある」と思えればだいたいOK!
📖 おまけ:英語の意味
「Turing Complete」 = チューリング完全
💬 イギリスの数学者アラン・チューリングが1936年に提案した「チューリングマシン」に由来するよ。計算できるものの限界を定義した概念なんだ
← 用語集にもどる