LL1の文法について質問があります。このような文法がある場合:
<S>::=<A>
<A>::=<A> car cat | epsilon
最初は何が<A>
できますか?イプシロンだけですか?そして、それが単なるイプシロンである場合、言語はLL1ではあり得ません!私は混乱しています...
LL1の文法について質問があります。このような文法がある場合:
<S>::=<A>
<A>::=<A> car cat | epsilon
最初は何が<A>
できますか?イプシロンだけですか?そして、それが単なるイプシロンである場合、言語はLL1ではあり得ません!私は混乱しています...
First(A) = {epsilon, car}
A が非終端記号で A : a α がプロダクションの場合、First( A ) に a を追加します。A : epsilon がプロダクションの場合、First( A ) に epsilon を追加します。
A : α1 α2 α3 ... αm がプロダクションの場合、First( α1 ) を First( A ) に追加します。α1 がイプシロンを導出する場合、First( α2 ) を First( A ) に追加します。α1 と α2 の両方がイプシロンを導出する場合、First( α3 ) を First( A ) に追加します。