作业6 正规文法与正规式

1.分别写出描述以下语言的正规文法和正规式:

L1={abna|n≥0}。

答:正规文法

    S→aA

    A→bna

    A→ba|a

  正规式:ab*a

L2={ambn|n≥1,m ≥1}

答:正规文法

    S→aS|bn

    S→bn

    S→bS|ε

  正规式:aa*bb*

L3={(ab)n|n≥1}

答:正规文法

    S→AB

    A→aA

    B→bB

    B→aA|ε

  正规式:(ab)*(ab)

 2.将以下正规文法转换到正规式

Z→0A         
A→0A|0B   
B→1A|ε     

Z=0A  (1)    A=0A+0B (2)     B=1A+ε  (3)

 答:将(3)代入(2)得:A=0A+0(1A+ε)

           =0A+01A+0

           =(0+01)A+0

           =(0+01)*0  (4)

将(4)代入(1)得:Z=0(0|01)*0

Z→U0|V1  
U→Z1|1   
V→Z0|0    

Z=U0+V1  (1)    U=Z1+1  (2)   V=Z0+0  (3)

 答:将(2)、(3)代入(1)得:Z=(Z1+1)0+(Z0+0)1

                =Z10+10+Z01+01

                =Z(10+01)+(10+01)

                =(10|01)(10|01)*

S→aA    
A→bA|aB|b    

B→aA      

S=aA (1)    A=bA+aB+b (2)   B=aA  (3)

 答:将(3)代入(2)得:A=bA+a(aA)+b

             =bA+aaA+b

             =(b+aa)*b  (4)

将(4)代入(1)得:S=a(b|aa)*b

I→l|Il|Id

答:I=l+II+Id

   =l+I(l+d)

   =l(l|d)*

原文地址:https://www.cnblogs.com/momo-er/p/11684539.html