"Indexed Grammars--An Extension of Context-Free Grammars" (1968)
どんなもの
非終端記号にスタック的にフラグを積める。フラグで分岐できる。
S → aA[f]c
A → aA[g]c
A → B
B[f] → b
B[g] → bB
で"a^n b^n c^n"。右辺の[f]はフラグをpushすることを示す。左辺の[f]はpopしてそのフラグだった場合の規則。
性質
- 構文解析はNP完全 [Rounds73, "Complexity of Recognition in Intermediate-Level Languages"] SATisfiableな論理式を全生成したりできる
- Full AFL
- emptinessは決定可能
- regularかどうか、context-freeかどうか、は決定不能
- 文脈依存言語には入る
Nested Stack Automaton
というタイプのオートマトンで受理できる言語クラスに等しい。要はスタックのスタックがある感じのオートマトン。
最終更新:2009年04月06日 17:11