スペースを使用したCFG解析


18

時間で文脈自由文法を解析できる多数のアルゴリズムがあります。行列乗算を使用すると、それよりも漸近的に高速化することもできます。On3

ただし、私が知っている任意のCFGを解析するためのすべてのアルゴリズムは、最悪の場合のスペース使用量が(ただし、確かに、その行列乗算アルゴリズムのスペース使用量はわかりません)。私は、このスペース使用量を改善するアルゴリズムがあるかどうか疑問に思っていました(時間制限は無視します)。Ωn2

精神的に連結した後、私の心にポップアップ質問Ω N 2全てのCFG解析アルゴリズムに結合した空間知っていた。おそらく実用的な関心はありませんが、単に知りたいと思うものです。CSG=NDSPACEnDSPACEn2Ωn2


5
他のすべての解析ア​​ルゴリズムについては知りませんが、行列乗算に基づくアルゴリズムは空間を取ります。参照:cstheory.stackexchange.com/questions/1313/...Θ(n2)
ライアン・ウィリアムズ

回答:


14

この答えの前半は、複雑な理論用語でのデイビッドの答えを効率的に(からlog 2n )言い換えることにすぎません。ログ4nログ2n

文脈自由言語は、複雑度クラスこのクラスは、対数深度の半無限回路によって同等に特徴付けられますこれらは多項式サイズの回路であり、ORゲートには境界のないファンインがあり、ANDゲートには境界のあるファンインがあります(たとえば2)。ログファクターで深さを増やすことにより、すべての無制限のファンインORゲートを有界のファンインORに置き換えることができます。これにより、問題がN C 2に置かれましたLOGCFLNC2どのように表示することは困難ではないによって評価することができるD S P A C E ログ2NC2たとえば、これまでに探索されたゲートで子供の左/右のシーケンスを維持する深さ優先探索。結果はLewis-Hartmanisの論文に戻ります。これにより、Davidのスペース制限が改善されますが、 n log n時間かかります。よくわかりません。DSPACEログ2nnログn

時間と空間のトレードオフを理解する従来の方法は、小石ゲームを使用することです。CYKに関するいくつかの論文がありました。より最近の試みはこのプレゼンテーションの最初の部分にあります。ここでは、(a)指数時間で線形空間を実現できること、および(b)時間をに制限する場合、CYKは少なくともn 2の空間を使用することを示します。On2n2

確かに一見に値する非常に興味深い問題です。


リンクのおかげで、それは非常に興味深いプレゼンテーションでした。
アレックス10ブリンク

13

Oログ2nO1Oログn

Oログ4n


3
ルイスらによる同様の結果に出会ったばかりです。ここに:ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=5397245。それでも、多項式時間のみを使用して2次空間よりもうまく処理できるかどうかは疑問です。
アレックス10ブリンク

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