決定論的なプッシュダウンオートマトンでコンテキストのない言語を受け入れることができるかどうかを決定する


22

文脈自由文法Gが与えられると、Gが受け入れる言語を正確に受け入れる非決定的プッシュダウンオートマトンNが存在します。(およびその逆)

Gが受け入れる言語を正確に受け入れる決定的プッシュダウンオートマトンDも存在する場合があります。それは文法に依存します。

Gの生成に関するどのアルゴリズムによって、Dが存在するかどうかを判断できますか?


4
あなたがいても知っておくG用DPDAがあること、それを見つけるために何のアルゴリズムはありません。こちらをご覧ください
sdcvvc

回答:


20

文脈自由文法を与え、DPDAが同じ言語を認識しているかどうかを判断し、存在する場合はそれを計算するアルゴリズムはありません。

そのようなアルゴリズムが存在すれば、文脈自由文法の普遍性の決定不可能な問題、つまり所与の文脈自由文法が言語全体を認識するかどうかを決定できるためです。GΣΣ

そのようなアルゴリズムます。文脈自由文法にしましょう。してみましょう可能。次に、アルゴリズムは、認識するDPDAがあるかどうかを判断します。ADPDAGLLGADPDAAL

  • そのようなDPDAがない場合、はDPDAに認識されません。特に、それは規則的ではないため、はできません。LΣ

  • DPDAが存在する場合、DPDA普遍性を決定できるため、が等しいかどうかを判断できます。どうして?なぜなら:ALΣ

    • DPDA言語は補完的に閉じられています(DPDAは決定論的であるため)
    • 空はDPDAで決定可能です(PDAであるため

を使用して、コンテキストフリーの文法に対してかどうかを決定するアルゴリズムを構築しましたが、これは不可能であることが証明されています。したがって、は存在しません。ADPDALG=ΣGADPDA


申し訳ありませんが理解できません。Gが使用するアルファベットを参照するためにΣを使用していますか?「Lは完全な言語です」とはどういう意味ですか?の任意の文字列の言語であるを生成する文法Gでアルゴリズムを実行すると言っていますか?DPDAだけでなく、この言語の単純なDFAも明らかに見つかります。の補語は空の言語です。これはDPDAとDFAの両方で簡単に認識されます。したがって、説明に何かが欠けているのは明らかです。ΣΣΣ
アンドリュートマゾス

これが今より明確になることを願っています。私は少し異なる質問に答えていることに注意してください:を計算 できるかどうかを尋ねたと誓いましたが、それが存在するかどうかを判断するだけではありません。D
-jmad
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.