已知文法A→aAdaAbε 判断该文法是否是 SLR1文法若是构造相应分析表。
该文法不是 SLR(1) 文法。
原因是在状态 2 中,存在两个冲突的项目集:
$I_2={A\to aAb,\ A\to aAd,\ B\to b\cdot}$
其中,$\cdot$ 表示项目的“归约点”。
对于符号 $b$,存在移进-归约冲突:
- 向后看符号为 $b$,应该移进 $B$,但是存在项目 $B\to b\cdot$,可以进行归约。
对于符号 $d$,存在规约-规约冲突:
- 向后看符号为 $d$,应该归约为 $A\to aAd$,但是存在项目 $A\to aAb$,也可以进行归约。
因此,该文法不是 SLR(1) 文法。
无法构造相应的分析表。
原文地址: http://www.cveoy.top/t/topic/bD8z 著作权归作者所有。请勿转载和采集!