現実のコンピュータはチューリングマシンメカニズムを使用していますか?


7

私は12年生の高校生です。私は高レベルのプログラミングと基本的なコンピュータサイエンスについて少し勉強します。

最近、チューリングマシンとは何かを理解し始めました。聞きたかった:

チューリングマシンは、計算のメカニズムを説明するために使用される架空のデバイスであることを理解しています。

しかし、チューリングマシンは、概念的にはコンピューターの実際の基盤ですか?(最も基本的なレベルで)。または、現実のコンピューティングメカニズムとチューリングマシンメカニズム(計算方法)の共通点はほとんどありませんか?

回答:


10

チューリング機械は、1936年の計算可能な数値と停止問題に関する論文でチューリングによって発明されました。それは当時浮かんでいた数少ないモデルの一つでした(教会のようなλ計算は、以前に定義されていました)。これらのモデルはすべて同等であることが後で示されているため、計算能力のみに関心がある場合は、チューリングマシンモデルは他のモデルと同じくらい優れています。

最近のコンピューターは、チューリングマシンモデルに基づいていません。チューリングマシンは非常に遅く、ハードウェアの機能を表すものではありません。ソフトウェア側から見ると、現代のコンピューターはRAMマシンに似ています。RAMマシンは間接的なアドレス指定を可能にし、無制限の「アルファベット」を持ちます(そのレジスターは任意の大きな整数を保持します)。たとえば、大きな数値で算術演算を行う場合など)。ハードウェア側に適したモデルはわかりません。理論的なコンピュータサイエンスで人気のブール回路は、メモリも反復計算もモデル化しません。

チューリングマシンは、多項式にバインドされたレジスタを持つRAMマシンと多項的に同等です。これは、両方のマシンが効率的な計算(多項式時間計算)の同じ概念を提供することを意味します。これは、実際の有用性が疑わしい理論的な概念です。対照的に、(制限付き)RAMマシンは実際の計算に適したモデルを形成しているため、RAMマシンの複雑さの結果には実用性があります。ただし、このモデルでも、さまざまな種類のメモリ(ディスク、メインメモリ、さまざまなキャッシュ)へのアクセス速度など、現代のコンピュータのいくつかの重要な複雑さを無視しています。


ご回答有難うございます。少し混乱したことは認めます。あなたの答えから、現代​​のコンピューターはチューリングマシンに基づいていないことがわかりました。もしそうなら、私が知りたいのは-コンピュータの最も低レベルの計算部分です(私が間違っている場合は私を訂正してください-しかし、数学的な計算を行う能力が最も基本的であり、他のすべてが起こることを可能にするあらゆるコンピュータの低レベルの能力)、これがどのように行われるかを説明できる理論モデルは何ですか?私は、コンピュータがどのように機能するかの最も基本的な側面の簡略化されたバージョンを本当に理解したいと思っています。
Aviv Cohn、2014年

1
コンピューティングシステムの要素を読んでみてください。最新のハードウェアは、論理ゲート、フリップフロップ、その他のメモリデバイスを実装するトランジスタを使用して実装されます。ハードウェアは、マシンワードにRAMマシンを実装します(通常、現在はそれぞれ64ビット)。ソフトウェアは多くの層に基づいて構築されていますが、ソフトウェアで確認できる最低レベルはこのRAMマシンです。
Yuval Filmus 14年

1
??? PTime計算は「実際の有用性が疑わしい理論上の概念」ですか?え?
vzn 2014年

@vzn私にとって、P対NPの質問には、実際的な関連性はまったくありません。
Yuval Filmus 14年

1

最近のすべてのコンピューターは、基本的には中央処理装置のCPUとメモリを加えたVon Neumannアーキテクチャに基づいて構築されています。算術/論理ユニットALUます。

チューリングマシンは基本的に同じ「アーキテクチャ」を持っていることに注意してください。 、テープに保存されたプログラムを実行できるユニバーサルコンピューターです。状態テーブルとテープヘッドは、CPU(この例では、ALUは算術論理を制御するすべてのTM状態のサブセットになります)やテープをメモリとして機能します。もちろん、多くの初期の実際のコンピュータは、データを格納するために「テープ」を使用していました(これは、大容量ストレージシステムなど、一部のコンテキストでは継続しています)。類推は、テープ上のバイナリの「シンボルアルファベット」でさらに強化できます。実際のコンピューターと同じように調査されたマルチヘッドTMもあります。

TCS複雑性理論は、抽象的なTMによって操作される物理エンティティ、つまり実際の物理的な場合のような「連続性/ 可分性」のような特性を持つ空間時間の両方を研究します。TMは、計算/ 移動するとき「作業」を行うと言われています。これも物理的な概念です。多くの深いTCSの定理は、「速度」などの強力な物理的概念があるのと同じように、空間と時間の間に深い相互関係を示します。つまり、全体として、TCSと物理学の間には深いつながりがあります。(TMが文字通りマシンであることを忘れないでください

要するに、TMと現代のコンピューターの間にはさまざまな強力な概念的/比喩的な類似点がありますが、コンテキストによっては、これは強調されたり、軽視されたりすることがあります(驚くべきことに、学生によって混乱が生じることはありません)。主な違いは、TMにはテープ上に無限のメモリがあることです。コンピューターでは、これは(いわば)大容量のメモリによってのみ「概算」されます。


1
アルゴリズムのサブフィールドでは、RAMマシンを研究することがよくあります。RAMマシンは、実際の計算のより優れたモデルを形成しているためです。TuringマシンはRAMマシンをpシミュレーションしますが、RAMマシンの方がはるかに効率的です。あなたは(おそらく)数字を並べ替えることはできませんO(nlogn)チューリングマシンを使用して。ランダムアクセスは、実際には非常に重要です。
Yuval Filmus 14年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.