DFAの等価クエリのコスト


12

この質問に触発され、私は次のことに興味があります:

特定のDFAが特定の正規表現と同じ言語を受け入れるかどうかを確認する最悪のケースの複雑さは何ですか?

これは知られていますか?この問題はPにあり、両方のサイズにアルゴリズム多項式があることが期待されます。

回答:


16

Garey and Johnson(p。174)によると、正規表現の非普遍性はPSPACEに完全です。これは、上の正規表現かどうかを決定する問題であるないしないすべての文字列を生成します。したがって、あなたの問題もPSPACEに完全です。{01}

OPの問題がPSPACEにあることを確認する1つの方法を次に示します。DFA所与と正規表現R、NFA構築BのためのR、実質DFA構築する電力設定構成を使用するのCに相当するBCをメモリに保持しませんが、多項式空間のみを使用してCに Oracleアクセスします。ここで、製品構成を使用して、ACの対称差のDFA Dを仮想的に構成します。このDFAは文字列を受け入れません(したがってL A = L rArBrCBCCDAC)開始状態から受け入れ状態へのパスがない場合。到達可能性はNLにあり、 Dのサイズは 2 p o l yn あるため N S P A C Ep o l yn = N P S P Aで L D = whether C E = P S P A C ELA=LrD2polynLD=NSPACEpolyn=NPSPACE=PSPACE、サヴィッチの定理による後者の平等。


あなたはそれがだと確信している中で(それだけでPSPACE-HARDだろうされていない場合)PSPACE?または、多項長のすべての文字列をチェックして、正規表現とDFAがそれらすべてに同意するかどうかを確認するだけで十分でしょうか?それは明らかですか?:
ニールヤング

4
到達可能性はNLにあることに注意してください。正規表現に対応するDFAは指数関数的ですが、Oracleへのアクセスは安価であるため、NPSPACE = PSPACEで対称差が空かどうかを判断できます。
ユヴァルフィルマス

硬さの結果が表示されません。つまり、上記の問題を正規表現の普遍性にどのように軽減しますか?
マルクス

2
すべてを受け入れるDFAを選択します。硬さを示すには、問題の問題に対する正規表現の非普遍性を減らします。
ユヴァルフィルマス

1
@YuvalFilmus参照いただきありがとうございます!おそらく両方の意味で、完全性のために最初のコメントを回答に追加する必要があります:)
レフReyzin
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.