の無制限文法を理解できないようです
L = (w am bn | w={a,b}* m=number of a's in w n=number of b's in w).
次の文法を作成しましたが、JFLAP に入力するすべての文字列を拒否し続けます。しかし、手動で解析ツリーを作成しても問題ありません。誰かが私のためにそれを見て、何が悪いのかを見ることができますか?
S -> AST | BSU | epsilon
UT -> TU
T -> A
U -> B
A -> a
B -> b
あなたの文法で JFLAP をダウンロードして使用しました。問題は、JFLAP が文法入力に使用する表記法を使用していないことだと思います。シンボルは使用されていません|
が、代わりにいくつかのルールを指定する必要があります。したがって、JFLAP 表記 (および有効な文法) では、次のようになります。
S -> AST
S -> BSU
S -> ε
UT -> TU
T -> A
U -> B
A -> a
B -> b
また、FLAP 設定で空の文字列を ε として設定する必要があります。解析ツリーを手動で作成できる場合は、JFLAP でこれを実行して派生を表示することもできます。