チューリングマシンへの入力は無限の長さにできますか?


26

アルファベットのみを考慮すると、チューリングマシンへの入力として指定できる文字列は、セットです。しかし、入力が無限のバイナリ文字列であることは理にかなっていますか?たとえば、チューリングマシンが0で始まるすべての文字列を受け入れる場合、無限ゼロのバイナリストリングもチューリングマシンが受け入れる言語に属しますか?Σ *Σ={01}Σ

回答:


21

無限ストリングで初期化されたテープでチューリングマシンを実行しても問題はありませんが、通常は考慮されません。それでも、マシンは有限時間で終了する必要があります。無限時間計算の概念もあり、これはここで適切かもしれません。


4
入力が無限である間に有限時間で計算を完了することは、困難な挑戦のようです。
マスト

5
@Mast必ずしもではありません。入力全体を読む余裕はありません。
ユヴァルフィルマス

1
@JulesMazurキーワードはhypercomputationです。
ユヴァルフィルマス

3
@JulesMazurハイパーコンピューティングは必ずしも必要ではありません。プログラムは出力テープへの書き込みを続けることができ、結果はType IIチューリングマシンのように無限の文字列に収束します。
-jkabrg

1
入力として無限の文字列を許可すると、困難に陥ると思います。特に、入力のセットはもはや数えられないため、いくつかの証明が壊れています。
Taemyr

17

これは、タイプ2チューリングマシンの機能の1つです。特に、実数間の関数の計算可能性を分析するために使用されます。さらに興味深いことに、それらは統合などの演算子の計算可能性を分析するために使用されます。

クールな事実:正確な数値積分は計算可能です。


5

「理にかなっている」という質問に答えるために、これは有限時間で実行されるチューリングマシンを検討する場合に役立ちます。

具体的には、これはプレフィックスなしのチューリングマシンを考えるのに非常に便利な方法です。これらは、停止入力のセットに接頭辞がないマシンです。つまり、マシンを停止させる入力は、他のプレフィックスではありません。これらは通常のチューリングマシンと同等ですが、チューリングマシンが独自の停止入力を決定できる場合のみです。ユーザーは、マシンがどの入力で停止するかわかりません(これは決定できないプロパティです)。

これを確認する方法の1つは、一方向の無限入力テープを備えた、通常のチューリングマシンであり、テープヘッドは戻せません。ユーザーはテープをビットで満たし、マシンを実行します。これは、定義上、プレフィックスなしのチューリングマシンです。マシンが停止する場合、有限数のビットのみを読み取らなければならず、テープのその部分のプレフィックスはプログラムにならないか、マシンは代わりにそこで停止します。

これは、計算可能な確率分布について説明するのに適した方法です。ユーザーがテープをランダムビット(マシンのランダム性のソース)で満たし、マシンがランダムビット文字列を吐き出します。このようなすべてのチューリングマシンのセットは、計算可能な分布のセット(具体的には、下位の半計算可能な半測定値)に対応します。

無限入力の利点は、停止しているプログラムのプレフィックスをマシンに与える場合、マシンが何をするかを指定する必要がないことです。マシンは、指定された入力の終わりを超えて読み取りを試みます。


2

そのようなテープがなくても、別のチューリングマシンを使用して作成できます。

チューリングマシンは、空であるが無限のデータテープにアクセスできます(または、「マシンには小さなテープファクトリが組み込まれているだけです」と言われています)。したがって、プログラム可能なデータパターンで初期化でき、テープは別のチューリングマシンの入力として使用できます。

もちろん、コンテンツの作成方法がアルゴリズムで定義できない場合、そのようなコンテンツはチューリングマシンで作成できません。


6
これがどのように質問に答えるかわからない。いずれの場合も、すべての無限シーケンスがチューリングマシンによって生成できるわけではありません。少なくとも2つのシンボルを持つアルファベット上には数え切れないほど多くの無限ストリングがあるのに対し、シードするシードチューリングマシンと数え切れないほど多くの有限入力があるだけです。
デビッドリチャービー

2

無限の入力を考慮し、「標準」チューリングマシンの動作に限定できる場合があります。たとえば、入力で指定された無限に繰り返される有限パターンを考えます。チューリングマシンを作成して、有限量のメモリ/テープストレージを使用して、テープヘッドの現在のアクションによってこの無限パターンがどれだけ変更されたかを追跡できます。言い換えれば、テープ上の無限サイズのパターンを「同等にシミュレート」します。

「無限入力」が考慮されている別のケースは、セルオートマトンのチューリングの等価性/完全性の分析です。複雑な証明として、CookはCA 110ルール操作を無限指定の初期テープで開始するが(有限の)有限サイズパターンを持つチューリングマシン操作に変換する際に、「弱チューリング等価」と呼ばれる概念を導入しました。


1
「無限入力」と「無限オブジェクトの有限エンコーディング」という用語は、明確に区別されており、基本的です(DFAが最小の無限の通常言語はすべて例です)。ここで混同しないでください。
ラファエル

2
はいDFAは、説明されているエンコードに使用できます。(無限パターンの繰り返しによる)無限長ストリングの有限エンコーディングのテープをスケッチしたように、有限ストリングのみのテープとは能力が異なります。
vzn

1

形式言語では、文字列は定義上、シンボルの有限シーケンスです。古典的なチューリングマシンには、有限の入力文字列を持つ無限のテープがあります。そのため、入力の長さに制限はありませんが、入力を無限にすることはできません。

そうは言っても、TMと同様に機能するが、無限の入力シーケンスを持つ多くの代替マシンがあります。

無限の長さの入力を持つことが理にかなっているかどうかは、目的に依存します。チューリングマシンのコンテキストでは厳密には意味がありません(不可能なため)が、チューリングのようなマシンのコンテキストでは意味があり、多くのアプリケーションがあります。


4
無限の文字列を持つことは完全に可能です。確かに、この正確な状況に対処するオートマトン理論のブランチがあります。そして、無限の入力に対処するためにチューリングマシンの定義に必要な唯一の変更は、入力が有限でなければならないという条件を削除することであるとすると、チューリングマシンと無限の文字列。
デビッドリチャービー

1
@DavidRicherby:私たちは同意しているようです。最後の段落を言い換えて、元の古典的な純粋なチューリングマシン(入力が定義により有限である)のコンテキストにのみ厳密であること、それが意味をなさないことを明確にする方法を自由に教えてください無限長の入力について話します。条件を削除するとすぐに、厳密にはTMではなく、チューリングのようなマシンになります。
みんな

1
テープに無限のものを入れて起動したからといって、デバイスがチューリングマシンでなくなることには同意しません。マシンはまだ同じマシンです。初期条件を変更しただけです。チューリングマシンが有限文字列の言語(例:決定可能または半決定可能言語)にどのように関連するかの定義は、有限入力の観点からですが、それは機械がそれを必要とすることを意味しません。同様に、無限に積み上げられたCDROMを隣に置いても、コンピューターはコンピューターになることをやめません。
デビッドリチャービー

1
@DavidRicherbyまあ、技術的にはチューリングマシンは有限の入力を取るマシンです。定義でこの制限を変更する場合、他の何かを定義します。コンピューティングの背後にある考え方は、ある意味ではまだ同じですが、複雑さをどのように表現しますか?非常に異なる問題。
ラファエル
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.