素人向けの再帰的および再帰的に列挙可能な言語定義


24

私は、再帰的で再帰的に列挙可能な言語の多くの定義に出会いました。しかし、私はそれらが何であるかを完全に理解できませんでした。

誰かが簡単な言葉で彼らが何であるかを教えてもらえますか?

回答:


17

あんまり。数冊の本を読むべきです。おそらくお勧めできます。

とはいえ、チューリングマシンがある場合、特定の文字列がこの言語の一部である場合、常に「yes」または「no」と応答できる言語は再帰的です。この要件を解除して、言語の文字列に対して単に「はい」と言うと(そうでない場合は永久に実行できます)、再帰的に列挙可能な言語があります。再帰言語はチューリングマシンによって決定できること、そして再帰的に列挙可能な言語がその文字列をリストできることを確認するのは難しくありません(たとえば、無限数のチューリングマシンを並行して実行することにより-はい、可能です)鳩尾—アルファベットのすべての文字列で、対応するTMが受け入れる場合に文字列を出力します。多数の同等の定義があります。


18

マシンが答えを計算できる場合、問題は再帰的または決定可能です。

マシンが答えが肯定的であると確信できる場合、問題は再帰的に列挙可能または半決定可能です。


3

A 言語は、文字列のセットだけです。おそらく無限のカーディナリティです。

言語に属する文字列(およびそのような文字列のみ)を出力し続けるTMが存在する場合、言語は再帰的に列挙可能であり、その結果、言語のすべての文字列が出力に含まれます。

上記のTMが言語のすべての文字列を出力するだけでなく、順番に実行する場合、言語は再帰的です!(たとえば、辞書編集)。

再帰言語を簡単に考えることができると確信しています(そして、それらを順番に出力するTMを構築します)。決定不能性と対角化についてもう少し読んでいない限り、再帰的な列挙可能な言語(再帰的ではない)を思い付くのは非常に困難です。しかし、そのような言語は存在します。


1
私にとって、あなたの定義は最高で、最大1つの詳細です。順序は計算可能な順序でなければなりません。任意の2つの文字列を終了TMと比較できる必要があります。他の定義の多くは、列挙可能性と決定可能性を混同しています。彼らは有限の文字列の集合のための同等の証明することができるものの、これらは、異なる概念である(例えば以下を参照してください。?無限の文字列を含む缶言語は帰納的可算こと
babou

2

再帰言語は、チューリングマシンによって決定可能です。つまり、文字列が言語内にある場合は(適切なアルファベットを介して)任意の入力文字列が正しく返されるTMがあります。

再帰的に列挙可能な言語のみが認識されます。つまり、文字列が言語内にある場合は受け入れるチューリングマシンが存在しますが、文字列が言語内にない場合は永久にループする可能性があります。


0

再帰的言語と再帰的列挙可能言語の主な違いは、再帰的チューリングマシンが文字列を受け入れない場合、非最終状態で停止することです。

再帰的に列挙可能なチューリングマシンが文字列を受け入れない場合、非最終状態で停止するか、再帰言語の場合は永遠にループする可能性があります


0

==>言語内のすべての文字列を受け入れ、言語内にない場合は拒否するチューリングマシンが存在する場合、言語は再帰的です。たとえば、チューリングマシンMと文字列wを使用します。文字列wがチューリングマシンMのメンバーである場合、Mは最終状態で停止します。そうでない場合、計算を拒否します。==> ==>言語内のすべての文字列を受け入れ、言語内にない場合は拒否するチューリングマシンが存在する場合、言語は再帰的に列挙可能です。たとえば、チューリングマシンMと文字列wを取得します。文字列wが言語にある場合、Mは最終状態で停止します。それ以外の場合は、計算を拒否するか、永久に実行される可能性があります。

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