私は構文解析の代数理論を学んでいます。私の最初の問題は、正式な言語理論に固有の半環の例を特定することです。これは、2つの例を構築する試みです。
1与えられたCNF文法では、セミリングの要素は、次の演算を持つ終端記号と非終端記号のセットです。
i)乗算。CYKルールに従って2つのセットをペアで結合します。たとえば、与えられたCNF文法
s: p p | q r
t: p q
u: q q
その後
ii)加算は和集合です。
残念ながら、乗算は結合的ではありません。
2 2番目の半環の要素は、記号ではなく、位置が修正された文法規則(必ずしもCNFではない)のセットです。操作は
i)乗算。Earley完全規則に従って、一致するすべての要素のペアを結合します。たとえば、与えられたCNF文法
s: p q r
r: s t | u
その後
ii)加算はここでも集合和集合です。
この例も不十分です。
要素が文法規則のセットであり、乗算が規則の置換であるセミリングは、うまく機能しているようです。しかし、これは変装した関係代数にすぎません。確かに、各文法規則を等価クラス-規則の適用によって関連付けられた終端文字と非終端文字で構成される単語のペアのセットとして考えてみましょう。
次に、文法内の単語の認識は、リレーショナル構成のチェーンです。たとえば、
(この単項式は、Josh Goodman博士論文のセミリングパーサー多項式を連想させます。ただし、多項式と行列を使用して新しいセミリングを構築することは、ここでは興味がないことを繰り返します)。
したがって、問題は残ります。アルファベット介した正式言語の半リングは唯一の例ですか?