文库摘要:
最小化:
项目集规范族为C={ , , , , , , }
(3)不是SLR文法
状态3,6,7有移进归约冲突
状态3:FOLLOW(S’)={#}不包含a,b
状态6:FOLLOW(S)={#,a,b}包含a,b,;移进归约冲突无法消解
状态7:FOLLOW(A)={a,b}包含a,b;移进归约冲突消解
所以不是SLR文法。
(4) 构造例如LR(1)项目集规范族
见下图:
对于状态5,因为包含项目[ ],所以遇到搜索符号a或b时,应该用 归约。又因为状态5包含项目[ ],所以遇到搜索符号a时,应该移进。因此存在“移进-归约”矛盾,所以这个文法不是LR(1)文法。
给状态编号:
a b
0 1 2
1 1 2
2 0 3
3 3 3