1

Я прочитал одну из своих заметок для подготовки к вступительным экзаменам на PhD. Верхняя буква не является терминалом, а строчная буква - терминалом.Один пример о грамматике LL (1)?

У нас есть две грамматика как:

G1: S-->bSa | aSb | ba 
G2: S-->XYa 
    X-->a | Yb 
    Y--> c | epsilon 

Мое примечание писал:

G1 не LL(1) Grammar но G2 является LL(1) Grammar.I знать некоторые о LL (1), но я думаю, что этот пример для меня это не очевидно. кто-нибудь мог бы это сделать для меня? Благодарю.

+1

Вам необходимо более внимательно изучить документацию для этого онлайн-инструмента. Вот грамматика: http: //smlweb.cpsc.ucalgary.ca/vital-stats.php? Grammar = S + -% 3E + b + S + a% 0D% 0A +++ | + a + S + b% 0D% 0A +++ | + Ь + а. (Spaces пункт.) – rici

+0

@rici Okey. Я понял. Благодарю. Возможно ли сделать это более ясным для меня без инструментов? – user3661613

+0

@rici у вашей грамматики тоже неправильный синтаксис, ошибка, строка 2, ошибка синтаксиса, найденная в EOF. Грамматика плохо сформирована! – user3661613

ответ

1

Это действительно просто.

Для пересечения G1: Первый (bSa) Первый (aSb) пересечение First (ba) Пусто, поэтому не LL (1).

Для G2 вы ...

+0

Да, спасибо, Rici Помогите мне недооценить. благодаря – user3661613