第六次作业
1.分别写出描述以下语言的正规文法和正规式:
L1={abna|n≥0}。
正规文法:
S->aA A->b^na
A->Ba B->b^n
B->bB|ε
正规式:
S->ab*a
L2={ambn|n≥1,m ≥1}
正规文法:
S->AB
A->aA|a
B->bB|b
正规式:
S->aa*bb*
L3={(ab)n|n≥1}
正规文法:
S-> A
A -> aAb|a
正规式:
ab(ab)*
2.将以下正规文法转换到正规式
Z→0A
A→0A|0B
B→1A|ε
由题可知:①Z=0A ②A=0A+0B ③B=1A+ε
将③代入②可得:A=0A+0(1A+ε)=0A+01A+0=(0+01)A+0
得A=(0|01)*0
将②代入①可得:Z=0(0+01)*0
得Z=0(0|01)*0
Z→U0|V1
U→Z1|1
V→Z0|0
由题可知:①Z=U0+V1 ②U=Z1+1 ③V=Z0+0
将②③代入①得:Z=(Z1+1)0+(Z0+0)1 =Z10+10+Z01+01=(10+01)Z+10+01
得 Z=(10|01)*(10|01)
S→aA
A→bA|aB|b
B→aA
由题可知:①S=aA ②A=bA+aB+b③B=aA
将③代入②可得:A=bA+a(aA)+b=bA+aaA+b=(aa+b)A+b
得A=(aa|b)*b④
④代入①可得:S = a(aa|b)*b
I→l|Il|Id
由题可知:I=l+Il+Id=I(l+d)+l=(l+d)*+l
得I=(l+d)*l