非有限オートマトンはありますか?


35

オートマトン理論では、私たちは皆、最初から有限オートマトンとしてオートマトンを読みます。私が知りたいのは、オートマトンが有限である理由です。明確にするために、有限のオートマトンには、アルファベット、言語、正規表現で作成された文字列、または何が含まれていますか?そして、(理論上)非有限オートマトンはありますか?


1
確かに、言​​語や「正規表現で作られた文字列」ではありません。多くの単純な正規表現は、無限の数の文字列に一致します(ただし、それらは有限オートマトンによって認識できます。)
アレクシス

:私は心の中でinfinteの1つを有する質問尋ねcs.stackexchange.com/questions/55864/...
ジャレドような言葉

回答:


34

通常遭遇するすべてのオートマトンモデルは有限表現されています。そうでなければ、数え切れないほど多くあります。つまり、チューリング完全モデルによってキャプチャされません。または、CSの考え方では、役に立たない¹。

「有限オートマトン」は、有限の構成セット(入力文字列は別として)しか持たないため、有限と呼ばれます。たとえば、プッシュダウンオートマトンには、任意のコンテンツを含めることができるスタックがあります。可能な構成は無限にあります。


Nota bene:PDAの構成はまだ有限で表現されています!実際、チューリングの計算可能性に含まれる計算モデルには、有限表現可能な構成が必要です。そうでない場合、TMはそれらをシミュレートできません。


  1. この質問の目的のために、ここでハイパーコンピューティングを意識的に無視します。

コメントは詳細なディスカッション用ではありません。この会話はチャットに移動さました
ラファエル

32

フルネームは「有限状態オートマトン」です。重要な部分は、オートマトンの状態が、離散状態の有限セットの要素によって完全に特徴付けられることです。つまり、オートマトンの(関連する)状態に実数値の変数が含まれる場合、無限の数の潜在的な状態が存在し(浮動小数点表現の有限性は別として)、オートマトンは有限ではありません。

これは理論的なコンピューターサイエンスでは起こりえないかもしれませんが、実数列のモデリングの領域ではあまりエキゾチックではありません。隠れマルコフモデルを使用すると、観測不可能な状態の(離散、有限)マルコフモデルの各状態に対する1つの出力フィルターで構成される確率システムの出力として数列をモデル化できます。フィルターは、前の出力のベクトルから次の実数値の出力を計算します(「自己回帰」モデル)。ただし、遷移確率は現在のマルコフ状態にのみ依存するため、基礎となるマルコフモデルは有限です。

ただし、この記事全文)では、遷移確率が以前の出力の実数ベクトルにも依存するバリエーションを開発しています。このシステムの状態は、離散マルコフ状態と実数のタプルの組み合わせ(「混合状態マルコフモデル」)であるため、無数の異なる状態になります。

要するに、非有限オートマトンは理論的に明確に定義されており、時には遭遇することさえあります。


1
完全な開示:私は言及された論文の著者の一人です。それが適切な開示または無関係な自己宣伝と考えられていた場合、私は...よく分からない
アレクシス

6
必要に応じて自分の作品を参照することは完全に大丈夫だと思います-あなたがトピックの主要な専門家の一人であれば、私たちはあなたを喜んでいます!-そして、あなたとしての明白な開示で十分です。ありがとう!
ラファエル

有限状態オートマトンにはプッシュダウンオートマトンが含まれていませんよね?実数状態に至るまで特別な理由はありますか?この明白な例がうまくいかない理由についてここで何か見逃しているのか、それともあなたがたまたま異常な例を選んだのかわからない。
Mehrdad

1
彼は、実際の状態変数のようなものにジャンプする代わりに、プッシュダウンオートマトンのような従来の非FSAを使用しなかった理由を尋ねようとしていると思います。
user2357112は、

1
まあ、主にそれが私が考えた例だからです!しかし、混合状態マルコフモデルの「状態」も固定数のパラメーターで構成されていますが、パラメーターの一部が実数であるため(ただし、遷移だけでなく、出力)。PDAの場合、非有限性は無制限のサイズのスタックに由来します。ただし、ルールの数は有限であり、その長さは有限です。そのため、1つのステップで可能な動作は有限です。
アレクシス

19

有限オートマトンでは、状態の数、基礎となるアルファベットのサイズ、マシンで受け入れられる文字列の長さなど、かなりの有限性があります。

たとえば、マシンに無限に多くの状態を持たせることで、これらの有限状態を確実に緩和できますが、そうすると、そのようなマシンはすべての言語を受け入れるように設計できるという意味で、興味のないものになります。


そして、アルファベットだけが無限である場合はどうでしょうか?たとえば、自然数の正規表現を使用している場合はどうなりますか?それは可能ですか?
パービン

8
オートマトンが有限であるが、アルファベットが無限である場合、オートマトンは各状態から有限数の遷移を持ちます。遷移のいずれかに関連付けられていない文字は、オートマトンによって認識されません。その結果、無限アルファベットをオートマトンの遷移に現れる文字のみを含む有限アルファベットに置き換えることができ、オートマトンはまったく同じ言語を受け入れます。
ケビン-モニカの復活

3
@parvinそうではありません。その場合、(有限数の)状態間で無限の数の遷移が必要になります。これはまだ表現できません。「すべての偶数入力がAからBに、すべての奇数入力がAからCに」などの述語を使用する場合、基本的にアルファベットを有限クラスの同値類に分解します。
ベルギ

@Kevin、それは「遷移の有限数」の定義方法に依存します。自然数の任意の有限分割に従って選択された次の状態を持つ通常の(有限)FSAを考えます。たとえば、7による除算の剰余によって。または、実数が関係する同様の状況を考えます。状態図は完全に有限ですが、無限のアルファベット上で明確に定義されています。
アレクシス

@Parvin答えは「はい」だと思います(以前のコメントを参照)。
アレクシス

10

実際、オートマトン理論(Kleene、Rabin、およびScottの起源から大きく逸脱している)には、有限ではない多くの形式のオートマトンがあります。これにはいくつかの理由があります。

たとえば、プッシュダウンオートマトンは、構成のセットが無限であるオートマトンです(これらのステートの数は有限ですが、実際には、これらは「無限オートマトン」と見なされるべきです)。

同様に、状態空間が無限であるが、多くの構造を持つ無限オートマトンの他の例があります。たとえば、状態空間として(有限次元)ベクトル空間を持ち、遷移関数として線形写像(および初期と最終のもの)を持つオートマトンのクラスを考えます。これらは、ベースフィールド上の加重オートマトンとして知られています(61年のSchützenbergerによる)。これらを最小化し、同等性をテストできます。他の例には、レジスタオートマトン(これらのオートマトンには有限のレジスタセットがあり、無限のアルファベットを処理します:これらは文字をレジスタと比較し、文字をレジスタに保存できます)、およびより近代的な形式のノミナルオートマタ(同じ表現力を持ちますが、より良い基礎と特性があります)。そのようなオートマトンの空は決定可能です。

Aauua、およびL)に属する場合、状態は受け入れられます。最後のオブジェクトもあります(状態言語として!)。これらの2つのオブジェクトの存在は、決定性オートマトンを最小化できる理由を高レベルで説明する1つの方法であり、Myhill-Nerodeの一致と密接に関連しています。

結論として、無限オートマトンがありますが、講義で最初に研究されるモデルは常に有限状態のものです。


2

問題は無限状態オートマトンが存在する場合、無限オートマトンは存在しないという結論を仮定していると思います。

オートマトン理論では、異なる仮想モデルの力の階層があります。私が学んだのは4でした(覚えていますが、しばらく前です)、ウィキペディアで見つけたものは5です。チューリングマシンよりも強力なレベルの概念があり、大まかにハイパー計算と呼ばれます。仮想マシンのさまざまな説明は、これらのレベルのいずれかに分類されます。チューリングマシンは、すべて同じレベルの計算能力を持つ多数のモデルで特に知られています。

少なくとも1つの正式に定義された無限状態オートマトンは、これらのレベルのいずれかに分類されます。無限状態オートマトンの特定の厳密な定義がこれらのレベルの1つにどのように適合するかを示すのに少し興味深いものがあるかもしれませんが、それ以外は、各レベルを表すはるかによく研究された仮想マシンがあるため、あまり役に立ちません。これは、10億テープチューリングマシンにあまり関心がない方法と似ています。単一のテープチューリングマシンほど強力ではなく、処理が複雑になるからです。

さて、たまたま既存の階層レベルと同等ではない無限状態オートマトンを見つけたら、それは興味深いかもしれません。しかし、それなしでは、無限状態オートマトンは既存の階層内で既にキャプチャされており、無限大を処理する追加の複雑さを考えると、過度に複雑なチューリングマシンモデルを回避するのと同じ方法でそれらを回避します。


2

決定論的有限状態マシンの(単純な)無限バージョンは強力すぎます。そのようなことはどんな言語でも「記憶する」ことができるので、それらを考慮することから学ぶことはあまりありません。

たとえば、バイナリアルファベットについて、無限の高さの完全なバイナリツリーの形式のオートマトンを考えます。入力として考えられるすべての可能な文字列は、ツリーのノードに一意に対応するため、対応するノードが状態を受け入れるようにするだけで、任意の言語のディサイダーを構築できます。

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