コンテンツへスキップ
uencoder

Turing Complete

チューリング完全とは、計算システムがチューリングマシンをシミュレートでき、あらゆる計算可能な関数を計算できることを意味する。汎用計算能力の基準である。

目的

言語やシステムの計算能力の上限を判定し、計算可能性の限界を理解する。

メカニズム

条件分岐 + 任意のループ/再帰 + 読み書きメモリが必要である。ほとんどのプログラミング言語はチューリング完全である。HTML+CSS(議論あり)、SQL(再帰 CTE)、正規表現(後方参照)は境界線上にある。停止性問題は決定不能である。

ユースケース

  • 計算理論を学ぶこと
  • プログラミング言語の表現力
  • 計算可能かどうかの判定

References