文法があり、LL(1)があるかどうかを確認できます。しかし、文法によって生成された言語がLL(1)かどうかを確認する方法はありますか? LL(1)文法とLL(1)言語の違いは何ですか?言語がLL(1)かどうかを調べる方法は?
答えて
LL(1)である任意の文法はLL(1)言語を定義します。 LL(1)という文法がある場合、その言語のLL(1)文法が自動的にLL(1)であることを意味するため、LL(1) 。
説明すると、言語は一連の文字列であり、その言語の文法はその言語を記述する手段です。いくつかの言語はLL(1)文法を持ち、他の文法はLL(1)文法を有する。しかし、文法がLL(1)でないという事実は、それが記述する言語がそうではないことを意味するものではない。たとえば、この文法を考える:端子aを見るとAの生産を予測しようとすると、それはFIRST/FIRST紛争が含まれているため
A -> ab | ac
この文法はLL(1)ではありません。しかし、言語はまた、文法で
A -> aX
X -> b | c
を説明しているので、それは、LL(1)言語を記述だから、(ちょうどABとACが含まれています)これらの文法によって生成された言語は確かにLL(1)です。
任意の文法で記述された言語がLL(1)かどうかを判断することはずっと難しく、私の知る限りでは、生成する言語のLL(1)文法を明示的に提示するしかありません最初の文法(これは難しい)によって、またはそのような文法が存在しないことを数学的に証明するために使用される。
希望すると便利です。
LL(1)*言語*は、LL(1)文法でない限り、LL(1)以外のいくつかの他の*文法*によって定義することができますか? - 私の頭の中で確かめることを試みる。 –
@pst、はい、1つのLL(1)文法があれば十分です。 –
- 1. 言語がLL(1)かどうかを調べる方法は?
- 2. LL(2)LL以外の言語(1)
- 3. 値がゼロかどうかを調べる方法は?
- 4. EJB3 SessionBeanでユーザーの言語を調べる方法は?
- 5. 単語が複数であるかどうかを調べる
- 6. 文字列が英語かどうかを調べる
- 7. stdinが空であるかどうかを調べる方法
- 8. androidでスピーカーフォンがオンかどうかを調べる方法
- 9. wxコントロールが無効かどうかを調べる方法
- 10. ウェブページの言語が英語であるかどうかを知る方法?
- 11. なぜすべてのLL(1)文法LR(1)ですか?
- 12. C言語のテキストファイルに単語が何回出現するかを調べる
- 13. 文書がsolrで指定された用語で始まるかどうかを調べる方法は?
- 14. Djangoでは、リクエストがキャンセルされたかどうかを調べる方法は?
- 15. 入力文字列がC言語の実数であるかどうかを調べる
- 16. C言語のプログラムで問題の数値が100で割り切れるかどうかを調べる
- 17. オブジェクトが静止しているかどうかを調べる方法は?
- 18. 型パラメーターが型のサブタイプであるかどうかを調べる方法は?
- 19. 配列要素が空であるかどうかを調べる方法は?
- 20. TrueTypeフォントがイタリック体であるかどうかを調べる方法は?
- 21. matlabで行列が空であるかどうかを調べる方法は?
- 22. 配列がスタックにあるかどうかを調べる方法は?
- 23. ブーストグラフに頂点が存在するかどうかを調べる方法は?
- 24. チキンスキームに変数が存在するかどうかを調べる方法は?
- 25. UITableViewCellがドラッグされているかどうかを調べる方法は?
- 26. JCRプロパティが複数値であるかどうかを調べる方法は?
- 27. 文法を作るLL(1)
- 28. URL http://www.test.com/abc.pdfがファイルかディレクトリかどうか調べる方法は?
- 29. クラスが他のクラスのサブクラスかどうかを調べる方法は?
- 30. 文字列が数字かどうかを調べる方法は?
文法と言語の違いは何ですか? –