正规文法与正规式

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

L1={abna|n≥0}。

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

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

 

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

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

 

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

 

S→aA
A→bA|aB|b
B→aA

 

I→l|Il|Id

 
解:
 

1、可由正规文法定义:

L1:

S->aA

A->bna

A->bA|a

 

可由正规文法定义:

L2:

T->aS|bA

A->bA| ε

 

可由正规文法定义:

L3:

S->aA

A->bB

B-aA|ε

 

正规式:

L1:ab*a

L2:aa*bb*

L3:ab(ab)*

 

2

(1) 

A=0A+0(1A+ε)

 =0A+01A+0

 =A(0+01)+0

 =(0+01)*0

所以:

Z=0A

 =0(0+01)*0

 =0(0|01)*0

 

 

(2)

Z=U0+V1

 =(Z1+1)0+(Z0+0)1

 =Z10+10+Z01+01

 =Z(10+01)+10+01

 =(10+01)*(10+01)

 

 

(3)

A=bA+aB+b

 =bA+aaA+b

 =A(b+aa)+b

 =(b+aa)*b

 

S=aA

 =a(b+aa)*b

 =a(b|aa)*b

 

 

(4)

I→l|Il|Id

l=l+Il+Id

=I(l+d)+l

=I(l+d)*

=I(l|d)*

 
 

你可能感兴趣的:(正规文法与正规式)