Итак, у меня есть эта грамматика:
S -> X Y
X -> a X
X -> ε
Y -> c X Z
Y -> b
Z -> a Z
Z -> a
И из этого я строю наборы предсказаний
1 - a,c,b
2 - a
3 - c, b, a
4 - c
5 - b
6 - a
7 - a
Так что я знаю, чтобы определить, является ли грамматика LL (1), если и только если наборы Predict не пересекаются
Таким образом, мое понимание этого является общими левыми сторонами (не терминалами), в данном случае: X, Y, Z ... если каждый набор прогнозированияне содержит ничего общего, то это LL (1)
, поэтому для Z (наборы 6 и 7) не совпадают с X (наборы 2,3), однако y (наборы 4 и5) было бы хорошо
это правильный способ аргументировать это?