非決定性プッシュダウンオートマトンによって受け入れられる最大で


10

問題文 :

してみましょう(潜在的に非決定性)プッシュダウンオートマトンこととしましょうAがその入力アルファベットなります。単語があるのw A * STは| w | Kで受け入れられているMMAwA|w|kM

この問題はNP完全ですか?それは研究されましたか?そのような単語を見つけることを可能にするアルゴリズムはありますか?


Djikstraのアルゴリズムはうまくいかないのですか?(私はおそらくここで何かを誤解しているでしょう!)
alpoge '20

「せいぜい」?k
alpoge 2011年

どういたしまして、カヴェ。はい、「せいぜい」忘れてしまいました、また編集しました。
ラミン、2011年

1
答えは簡単です-これは宿題ですか?
Sariel Har-Peled 2011年

オートマトンの説明にアクセスできますか、それともブラックボックスとしてしかありませんか?
Raphael

回答:


9

CFG言語と通常の言語の共通部分計算します(これは、状態の数にkを乗算し、「行き止まり」の状態を追加することを意味します)。次に、結果が空かどうかを確認します。文法に変換し(結果は多項式サイズになると思います)、イプシロンプロダクションから「バックトラック」します。Σ=0kkk

編集:Kavehはこれが多項式であることを述べたので、kが入力として与えられた場合、アルゴリズムは次のように指数関数になりますk | 。しかし、カヴェはそれを修正する方法を見つけました。元のオートマトンをCFGに変換し、すべての端子を固定端子に置き換えます。次のように、反復アルゴリズムを使用して、各非終端記号によって生成される単語の最小サイズを見つけます。kk|k|

すべての長さをで初期化し、明白な方法ですべての長さを繰り返し更新します。生産A a tB i(順序は関係ありません)が与えられた場合、f A = min f A t + f atΠB。主張:これは O n 反復に収束します。ここで、 nf=ft+ΣfBO非端末の数です。その理由は、最小長の単語を生成するツリーでは、非終端記号が2回使用されないためです。各「エッジ」の処理には最大で1回の反復が必要です(一部のエッジは並行して「更新」できます)。


また、変換PDA CFGは多項式であると考えています。ありがとう!したがって、問題はPにあります。P
ラミン

わかりました、最小の長さを直接計算する方法があるので、入力ではありません。しかし、すべての端末を固定端末に置き換える理由がわかりません。アルゴリズムは元の端末で正しく動作するはずです。|k|
ラミン

あなたは正しい、それは実際には問題ではありません。
Yuval Filmus、2011年

5

すべてのアルファベット文字を1つの特定の文字に変更します。これで、1つの文字に対してPDAが定義されました。その言語は文脈自由文法です。ただし、1つの文字に対する文脈自由文法は規則的です。したがって、CFGを通常の言語に変換し、長さkの単語が含まれているかどうかを確認します。

現在、これらの変換はすべて指数関数的な時間を必要とする傾向がありますが、問題がNP完全であるとは思えないようです。特に多項式時間を許可する場合。k

私は間違っているかもしれません、そして私の最初の簡潔な答えをお詫び申し上げます...

ところで、1文字のCFGが規則的であるという事実は、Parikhの定理に従います。直接証明は難しいことではありませんが。Parikhの定理の詳細については、リンクを参照してください。これは美しい結果です... http://www8.cs.umu.se/kurser/TDBC92/VT06/final/3.pdf


いいえ、私は学生ではありません。私が言及した問題は、最初はオートマトンの問題としてモデル化されたネットワークの問題です。多項式の解を探す価値があるかどうかだけがわかります。
ラミン

5
この答えはコメントではありませんか?
Oleksandr Bondarenko

2
はい、そうです。サリエル、これをコメントに移動するか、回答を提供できますか?
Suresh Venkat、2011年


元の回答をコメントに移動しました。これは新しい答えです。
Suresh Venkat、2011年

0

kk

編集:上記はNFAでのみ機能します!申し訳ありません。


(ただし、間違いなく
ポリタイム

ダイクストラのアルゴリズムが問題を解決できるかどうかはわかりません。初期状態と最終状態の間の最短経路を見つけることができます。もちろん、この経路で受け入れられる単語を生成することもできます。しかし、このパスは初歩的なものであり、単語は非初歩的なパスを通じて受け入れることができます。そうでなければ、文脈自由文法が単語を生成できるかどうかを決定する問題は決定可能ですが、そうではありません。
ラミン

CFLの空テストは決定可能です、いいえ?
alpoge 2011年

(誤解している場合は、もう一度お願いします!)
alpoge

まあ、「マーキング」アルゴリズムを使用してこれを行うことができます(CFGの場合)-端末にマークを付け、次に端末を派生するものにマークを付け、次にプロセスが終了するまで、派生したものにマークを付けるなど。開始変数がマークされている場合。また、私の答えは無視してください。これは、NFAの場合にすべきことです(確かにPDAの場合はそうではありません!)。
alpoge 2011年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.