已知文法G(S): S→bAa A→(B|a B→Aa) 写出句子b(aa)b的规范归约过程。
时间: 2024-05-17 15:19:26 浏览: 15
首先,输入句子b(aa)b可以通过以下推导过程得到:
S → bAa → bBa → bAaa → bbaaa
接下来,我们需要进行规范归约。从右到左扫描推导过程中的每一步,找到可以使用产生式进行规范归约的部分。
bbaaa
→ bAaa
→ bBa
→ bAa
→ S
因为S是起始符号,最终结果为S,因此b(aa)b的规范归约过程为S。
相关问题
已知文法G: 1S→A 2 A→B 3 A→aA 4 B→bB 5 B→b (1)写出该文法的LR(0)项目集规范族。(注:该文法已经拓广)
拓广后的文法G'如下:
```
1. S' -> S
2. S -> A
3. A -> B
4. A -> aA
5. B -> bB
6. B -> b
```
LR(0)项目集规范族如下:
```
I0:
S' -> .S
S -> .A
A -> .B
A -> .aA
B -> .bB
B -> .b
I1:
S' -> S.
I2:
S -> A.
I3:
A -> B.
A -> a.A [a]
B -> b.B [b]
I4:
A -> aA.
B -> b.B [b]
I5:
A -> aA.
B -> bB. [b]
I6:
B -> bB. [b]
```
其中,括号内的符号为该项目的“展望符号”。例如,[a]表示该项目后面期望看到输入中的符号为a。在LR(0)分析表中,如果一个项目的展望符号为$X$,则在该项目所在的行上填写动作“移进”,并在对应的列上填写状态转移后的状态;如果该项目为归约项目,则在对应的行、列上填写“规约”和对应的产生式编号。如果该项目既不是移进项目也不是归约项目,则在对应的行、列上填写“错误”。
已知文法 A→fAa|fAg|b 判断该文法是否是 SLR(1)文法
首先,我们需要构造该文法的 LR(0)自动机。
LR(0)自动机的状态集合如下:
| 状态 | 项目集 |
| :-----: | :----------------: |
| I0 | A→•fAa |
| | A→•fAg |
| | A→•b |
| I1 | A→f•Aa |
| | A→f•Ag |
| I2 | A→fA•a |
| I3 | A→fA•g |
| I4 | A→•fAa |
| | A→•fAg |
| | A→•b |
| | A→f•Aa |
| | A→f•Ag |
| I5 | A→fA•a |
| I6 | A→fA•g |
| I7 | A→fAa• |
| I8 | A→fAg• |
接下来,我们需要构造该文法的 SLR(1)分析表。
| 状态 | a | b | f | g | $ |
| :---------: | :-----: | :-----: | :----: | :----: | :----: |
| 0 | s2 | s3 | s4 | s5 | |
| 1 | | | r3 | r3 | r3 |
| 2 | | | r2 | r2 | r2 |
| 3 | | | r1 | r1 | r1 |
| 4 | s2 | s3 | s4 | s5 | |
| 5 | | | s6 | s7 | |
| 6 | | | r5 | r5 | r5 |
| 7 | | | r4 | r4 | r4 |
| 8 | | | r6 | r6 | r6 |
其中,s表示移入状态,r表示规约状态,数字表示将要转移到的状态。
可以发现,该文法存在移入-规约冲突和规约-规约冲突,因此该文法不是 SLR(1)文法。
相关推荐
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)