第一题:

解: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 

posted on 2019-10-16 10:45  201706120066马鸿鑫  阅读(218)  评论(0编辑  收藏  举报