0
P → PL | L
L → N; | M; | C
N → print E
M → print "W"
W → TW | ε
C → if E {P} | if E {P} else {P}
E → (EOE) | V (note: this has a variable O)
O → + | - | *
V → 0 | 1 | 2 | 3 (note: this has a terminal 0 (zero))
T → a | b | c | d
上記の文法Gについては、Pの生成を予測しようとするときにFIRST/FIRST競合を引き起こすので、LL(1)ではありませんか? 私はそれがLL(1)でないことを証明する方法について本当に苦労しています... 助けやアドバイスは非常に感謝しています!言語がLL(1)かどうかを調べる方法は?