最初のチューリングマシン


7

アランチューリングが最初に作ったチューリングマシンがどれほど効率的だったか知っている人はいますか?つまり、1秒あたりに何回の動きをしたかということです...気になるところです。また、ウェブ上でそれに関する情報を見つけることができませんでした。


非決定論的バリアントは非常に効率的であり、多項式時間でNPの問題を決定する可能性があります。
einpoklum 2018

回答:


58

「チューリングマシン」(または「a-machines」)は数学的な概念であり、実際の物理的なデバイスではありません。チューリングは、コンピューターに関する数学的証明を書くために、次のロジックでそれらを思いつきました。

  • 物理的なワイヤーとスイッチに関する証明を書くことは非常に困難です。
  • チューリングマシンに関する証明の記述は(比較的)簡単です。
  • 物理的なワイヤーとスイッチでできることは何でも、チューリングマシンを構築して(*)(**)できます。

しかし、チューリングは紙テープにシンボルを書き込む実際の機械を構築したことはありません。他の人が持っていますが、これはデモンストレーションにすぎません。たとえば、名刺から作成できるものは次のとおりです

なぜ彼は物理的なチューリングマシンを構築しなかったのですか?簡単に言えば、それほど有用ではありません。問題は、チューリングマシンより強力な計算モデルを誰も思い付かないことです(チューリングマシンでは実行できないものを計算できるという点で)。そして、ラムダ計算やPythonプログラミング言語など、他のいくつかの計算モデルは「チューリング完全」であることが証明されています。チューリングマシンが実行できるすべてのことを実行できます。

したがって、数学的証明以外の場合は、一般に、これらの他のモデルのいずれかを使用する方がはるかに便利です。その後、一般性を失うことなく、証明にチューリングマシンを使用できます。

(*)具体的には、任意の計算:たとえば、チューリングマシンは電球をオンにすることはできませんが、計算理論の観点からは電球はあまり面白くありません。

(**)コメントで指摘されているように、チューリングの「コンピュータ」の主な定義は、アルゴリズムに従う人間でした。人間が実行できる計算はチューリングマシンが実行できないことはないと彼は推測しました。ただし、人間の心が実行できることを正確に定義することは非常に難しいため、これを証明することはできませんでした。興味があれば、Church-Turingの論文をご覧ください。


コンピューターTuringが証明を書いていたと確信しています。固定された指示に従って人々に言及しました:en.wikipedia.org/wiki/Human_computer(2番目の脚注)。人間は原則として任意の指示に従うことができるため、指示に従って人間に関する証明を書くことは非常に困難です。
Jasmijn、

@Robin歴史的な完全性のために、チューリングはチューリングマシンを開発して(彼の先生)アロンゾチャーチのランバ計算が普遍的な計算モデルであったことを証明しました。彼は、チューリングマシンに当てはまることを証明し、チューリングマシンがラムダ計算と同等であることを証明することで、これを実現しました。
JimmyJames

@ロビングッドコール!それに関する脚注を追加しました。
Draconis

5
@JimmyJames正確ではないと思います。Entscheidungsproblemへのチューリングの解決策は、教会の独立者であり、彼が教会の学生になる前でした。チャーチは少し前に証拠を発表し、チューリングがそれを聞いたとき、彼は彼の結果を書き終えようと急いだ。彼はチャーチの論文に応じて彼の機械とラムダ計算の同等性の証明を含めました、しかし、これは彼の最初の目標ではありませんでした。
Sasho Nikolov

@SashoNikolovあなたは正しいサーです。説明と訂正に感謝します。
JimmyJames

18

チューリングは、物理的なチューリングマシンを構築したことはありません。チューリングマシンのポイントは、実用的な物理コンピューターではなく、計算可能なものを形式化することであり、実際、「計算」が何を意味するのかを形式化することでした。


8

それは望んでいた答えではないかもしれませんが、私はいくつかの深刻な楽しみをもたらします。


主張1:多くのチューリングマシンが、アランチューリングや他の多くの人によって構築されました。

証明。で不動のボルトを指して膨隆、アラン・チューリングは「見て、チューリングマシン任意の入力時に停止している」、彼のいつもの鋭い洞察力とシンプルながら言いました。

道徳:チューリングマシンにはいろいろな種類があります。それらの多くは非常に単純です。しかし、それらは(機能的に)チューリングマシンです。


主張2:マシンに無制限のメモリがあるかどうかは決定できません。

証明。私はコンピューティングマシンを持っています。そのため、メモリの追加の各ビットを示すのに1秒かかります。私はそれが無限の記憶を持っていないことをあなたに納得させたいと思います。しかし、慎重な実証主義者であるあなたは、いつでも、またはいつまでも永遠に、いつでもそれが無限の記憶を持っていることを誰も拒絶できないと主張します。

道徳:オンデマンドで拡張するオブジェクトについて話すときは注意してください。


最初の例は外見的に聞こえますが、引用はありますか?そして、たとえ彼がそれを言ったとしても、TMはデータを保持するテープを含んでいるので、彼は比喩的に話しているようです。もちろん、TMは概念的なデバイスであり、物理的なデバイスではないため、TM自体はメタファーです。
Barmar 2018

1
最初の証明/例は、2番目の証明/例よりも真実かもしれません。爆弾よりも関連性の高い引用があれば、それを使用したでしょう。Alan Turingは、最も単純なものから最もエキゾチックなもの(人間の心など)まで、コンピューティングマシンの包括的なリストを検査することで知られています。彼は(オラクルなしで)最も複雑で強力なものを可能な限り単純なモデルに減らしました。最初の例は、彼が私たちにもたらした悟りに敬意を表する新しい逸話です。
John L.

OPの質問へのコメントとして適しているでしょうか。
AnoE 2018

@AnoE、あなたの提案は理にかなっています。一方、OPの質問にコメントとして書いた場合、スタンドアロンの回答ほど適切ではないように見えるかもしれません。実際、私の回答は、アランチューリングが厳密な解釈で物理的なチューリングマシンを構築していないことを暗黙のうちに迂回的に指摘しました。最初の主張は、チューリングマシンがユビキタスであるという事実を強調しました。(私は、チューリング完全なマシンの普及を示す別の主張も考えていました。そのため、これはコメントの魅力をさらに低下させます。)
John L.

私が提案するかもしれませんが、「TMには多くの種類があります」についてより具体的かもしれません。「TM」とは、ヘッド、テープ、シンボルの特定のものです。他のマシンは同等ですが、同じではありません。コードクラッカーは確かにTMではありませんが、計算能力は同等です。OPは、チューリングがコンピューターを構築したかどうかを尋ねているのではなく、実際に TM(読み取り/書き込みヘッド、バンドなどを備えた)を構築したかどうかを尋ねているようです。
AnoE 2018

8

これは、チューリングマシンが最初に説明された実際の論文を参照するのに最適な場所と時間です。1つのリンクはこちらです。

https://www.cs.virginia.edu/~robins/Turing_Paper_1936.pdf

もちろん、彼はより控えめなので、「自動機」と呼んでいます。実際の機械はなく、想像の獣だけです。

チューリングは、私たちの知る限り、「自動機械」を構築することすらしませんでした。しかしながら、彼は他の多くの機械を作ることに非常に影響力がありました。ナチスドイツのジッパーを破壊するために使用された第二次世界大戦爆弾は、最も有名な例です。

悲しいことに、一般大衆が彼の業績に気づかされたのは、彼の死後かなり最初のことでした。(彼は彼が自殺したと言われている、有罪判決を受けた同性愛者として蜂が残酷に化学的殺菌を受けた後)


彼が書いたよりわかりやすい説明があります。それを見つけるのは少し難しいので、私はそれのミラーをホストしてきました。ロンドン数学会のプロシーディングス、シリーズ2-42、230-265。」 これにリンクすると、2005年にここに置いたオンラインのTuring Machineシミュレーターのリンクが非常に古い(Java!)ので、良い代替リンクは何だろうと思いました。
HostileForkはSEを信頼してはならないと

3

TMは紙にのみ存在します。これは計算の理論モデルです。実際にはビルドできません(テープが無限に長いため)。

したがって、答えは次のとおりです。いいえ、Turingは、実際にはTMを構築できませんでした。


「TMは無限に長いテープを持っているため、無限のテープがないため、チューリングマシンを構築できます。TMは無限に長いテープを持っています。無限に長いテープがない場合、それはチューリングマシン、それはそれと同じくらい簡単です。

私は人々が「有限のテープを備えたTM」を構築したことを十分に認識しており、その有用性を疑っていません(つまり、有界オートマトン)。計算可能)。しかし、すべての自然数、必然的に長さのテープが必要になるTMがあります +1シミュレーションするので、「十分に大きい」テープは決してありません。(理由を考えてください。)

一歩下がると、有限のリソースを使用して構築またはシミュレーションできないTMが簡単に存在します。最初のステップで1つ*を書き込み、右に進み、2つ目のステップで2つ*を書き込むTMを例にとります。このTMは、無限のメモリなしでは構築またはシミュレーションできません。


6
チューリングマシンを作ることは完全に可能です。テープは無限である必要はありません。マシンが最後に到達するたびに、テープを追加するだけです。
David Richerby

2
@ピルペル彼は実際に何かを作ったとは思わない。チューリングは純粋な数学者であり、紙にのみ取り組んだ。
xuq01

2
@ xuq01 <s>もちろん、彼のマシンもそうでした。</ s>
Draconis

2
実際のチューリングマシンがありますが、無制限のメモリがない(したがって、プログラムと入力値の制限されたセットしか計算できない)ことを除きます。実際のチューリングマシンのこの素晴らしいビデオをご覧ください:youtube.com/watch
allo

3
チューリングが建て@Pilpel最も注目すべき実際のデバイスでしたボンベユニバーサルコンピューティングマシンではない、と私たちは「チューリングマシン」と呼ぶものにかなり無関係。
Konrad Rudolph

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.