设有已拓广的文法G(S′是G的开始符号):S′→S S→aA|a A→cAd|ε给出G的LR(1)项目集规范族和G()函数用FA表示(如图5—5所示)。
(1)改正图5—5的LR(1)项目集规范族中的错误。 (2)试判断G是四类LR文法的哪一类.并简要说明理由。
设有文法G的LR(1)项目集规范族和GO函数,用如图5—4所示的FA表示。试判断G是四类LR文法的哪一类,并简要说明理由。
设有下列文法(S是文法的开始符号): (1)S→aSSb|aSSS|c (2)S→AS|b A→SA|a (3)S→cA|ccB B→ccB|b A→cA|a 试构造上述文法的LR(0)项目集规范族。
(3)设文法G[S]的LR(1)有效项目为: I=[S→.A,] 求closure({I})。 (4)设LR(1)项目集中有一状态Si: Si={[A→A+A.,+/],[A→A.+A,+/]} 求go(Si,+)。
下述LR(0)项目可以成为一个LR的项目集吗? ①A→P.Q P→.a Q→.a ②A→P.P A→P.Q P→.a Q→.a 说明没有超前扫描的情况下②不存在冲突。
设有如下文法G(S是G的开始符号): G:S→A*B|B A→*B|* B→A (1)求文法G的LR(1)初始项目集I0,并求出GO(I0,*)。 (2)试判断文法G是四类LR文法的哪一类。