文法があり、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(2)LL以外の言語(1)
- 2. EJB3 SessionBeanでユーザーの言語を調べる方法は?
- 3. 値がゼロかどうかを調べる方法は?
- 4. 単語が複数であるかどうかを調べる
- 5. 文字列が英語かどうかを調べる
- 6. wxコントロールが無効かどうかを調べる方法
- 7. androidでスピーカーフォンがオンかどうかを調べる方法
- 8. なぜすべてのLL(1)文法LR(1)ですか?
- 9. ウェブページの言語が英語であるかどうかを知る方法?
- 10. 文書がsolrで指定された用語で始まるかどうかを調べる方法は?
- 11. 文法を作るLL(1)
- 12. Djangoでは、リクエストがキャンセルされたかどうかを調べる方法は?
- 13. matlabで行列が空であるかどうかを調べる方法は?
- 14. UITableViewCellがドラッグされているかどうかを調べる方法は?
- 15. 型パラメーターが型のサブタイプであるかどうかを調べる方法は?
- 16. TrueTypeフォントがイタリック体であるかどうかを調べる方法は?
- 17. オブジェクトが静止しているかどうかを調べる方法は?
- 18. C#でWebページの言語を調べる方法(プログラミングではない!)
- 19. URL http://www.test.com/abc.pdfがファイルかディレクトリかどうか調べる方法は?
- 20. 文字列が数字かどうかを調べる方法は?
- 21. クラスが他のクラスのサブクラスかどうかを調べる方法は?
- 22. com.ericsson.otp.erlangでerlangの用語が空であるかどうかを調べる方法
- 23. imputfieldの文字が単語内にあるかどうかを調べる
- 24. どの行がクリックされたかを調べる方法は?
- 25. レコードが見つかったかどうかを調べる方法:class :: dbi find_or_create
- 26. 部屋番号がデータベースにあるかどうかを調べる方法
- 27. 2つのPolyLinesが交差するかどうかを調べる方法
- 28. MethodInfoが基本メソッドのオーバーライドであるかどうかを調べる方法
- 29. ITypeが抽象クラスであるかどうかを調べる方法
- 30. 色が範囲にあるかどうかを調べる方法
文法と言語の違いは何ですか? –