1.分别写出描述以下语言的正规文法和正规式:
L1={abna|n≥0}
正规文法:
L1->aA
A->bna
A->Ba
B->bn
B->bB|ε
正规式:
L1=aA
A=Ba
B=bn=b*
A=b*a
L1=a(b*a)=ab*a
L2={ambn|n≥1,m ≥1}
正规文法:
L2->AB
A->aA|a
B->Bb|b
正规式:
L2=AB
A=aa*
B=bb*
L2=aa*bb*
L3={(ab)n|n≥1}
正规文法:
L3->abL3|ab
正规式:
L3=(ab)n
=a(ab)*b
2.将以下正规文法转换到正规式
Z→0A
A→0A|0B
B→1A|ε
A=0A+0(1A+ε)
=0A+01A+0
=(0+01)A+0
=(0+01)*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
=Z(10+01)+10+01
=Z(10+01)|(10+01)
=Z(10|01)|(10|01)
=(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
=(b+aa)A+b
=(b+aa)*b
=(b|aa)*b
S=a(b|aa)*b
I→L|IL|Id
I=L+IL+Id
=L+I(L+d)
=L(L+d)*
=L(L|d)*