第一题:
解:L1={abna|n≥0}
s->aA
A->Ba
B->ε|bB
正规式: ab*a
L2={ambn|n≥1,m ≥1}
S-> AB
A-> aA|a
B->bB|b
正规式:aa*bb*
L3={(ab)n|n≥1}
S-> A
A -> aAb|ab
正规式: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