3

「辞書」とは、一意のキーを持つキーと値のペアの配列を意味します。そうでない場合、なぜですか?十分な長さであれば、キーを入力として、値を出力として使用でき、必要なだけ多くの問題の解決策を得ることができます。可能なすべての入力を保持するのに十分な長さである限り、何でも「計算」できます。入力に一定量のビットがあることが確立されている限り、これは無限である必要はありません。したがって、入力が X ビットであることに同意した場合、必要なのは 2^X 項目の辞書だけであり、X ビットを入力として受け取る可能性のあるすべてのチューリング マシンが得られます。

右?そうではないと思いますが、なぜですか?

4

3 に答える 3

4

単純なチューリング マシンは 2 つの整数を加算できます。つまり、任意の 2 つの整数を加算できます。有限辞書はできません。

編集:
(soandosが窮屈なコメントボックスで回答するにはあまりにも良い点を指摘したため、回答を編集しています。)

良い質問!{key, value} のペアを列挙した無限の辞書があるとします。ここで、キーは、チューリング マシンとその有限入力のすべての可能な組み合わせ (または、ユニバーサル チューリング マシンへのすべての可能な有限入力シーケンス) であり、サイズの大きい順に並べられています。値は対応する最終状態であり、[HALTS, DOES NOT HALT] を示す先行ビットが付いています。これはチューリング完全であると私は主張します。(エントリを検索する行為は自明であり、それについて議論する必要はないと思います)。

停止問題の解決不可能性は、JSoldi の Dictionary に相当します。特定のサイズを下回るエントリの [HALT, DOES NOT HALT] ビットを検索できるようにしたい場合は、辞書の有限部分のみが必要です。しかし、チューリング マシンとしてディクショナリの多くを実装するには、その制限サイズよりも大きなマシンが必要になります。エントリはディクショナリのその部分には含まれません。どのようなサイズのマシンでも、そのサイズのすべてのマシンの停止問題に答えることができるマシンがありますが、そのマシンはより大きく、それ自体についての質問に答えることができません。同様に、辞書の有限量はどこかの項目 (実際には無限に多くの項目) で完全に繰り返されますが、その項目はその量にはありません。

于 2011-05-12T04:16:30.417 に答える
0

チューリング マシンは、あらゆる種類のプログラムであらゆる種類の入力を計算でき、固定長の入力である必要はありません。さらに、ディクショナリには、選択したプログラムの入力に一致するキーと値のペアを選択する方法がありません。

さらに、X ビットの入力がある場合、キー スペースは X^2 ではなく、2^X になります。そして、それは単一のプログラム用です。

実際、無限に多くのキーと値のペアを含む辞書を持っていたとしても、選択する必要があるキーを決定するために必要なロジックには、おそらくチューリング マシンまたはキーを選択するためのより複雑なものが必要になるでしょう。

于 2011-05-12T04:28:54.967 に答える
-1

チューリングの完全性は、データの保存方法ではなく、何かを行うための一連のルールに関係しています。ここを参照してください。

于 2011-05-12T04:15:04.693 に答える