題目
文法:
S–>Aa | bAc | dc | bda
A–>d
通過構造基於LR(0)、LR(1)項目的識別活前綴的DFA,判斷上面文法
- 是否是SLR(1)文法??
- 是否是LALR(1)文法??
- 是否是LR(1)文法??
依次說明理由。
解
FOLLOW集
(1)基於LR(0)項目的識別活前綴的DFA
(2)基於LR(0)、LR(1)項目的識別活前綴的DFA
判斷:
- 基於LR(0)項目的識別活前綴的DFA中:在I4第一個項目要求面對c移進到8,第二個要求r5歸約,I7第一個項目要求面對a移進到10,第二個要求r5歸約。所以存在衝突, 不是SLR(1) 的!
- 基於LR(1)項目的識別活前綴的DFA中:沒有同心項目集可以合併, 是LALR(1) 的, 也是LR(1) 的