东北大学计算理论习题课

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

6.构造一个FA M,使得T(M)的正规表达式为 01+((0+1)*1)*。 解:1.分解表达式,找出基本单元:0,1,01,1。设计接收 这些基本单元的自动机如下:
2.设计二个FA M1和M2,分别满足
T(M1)={02i∣i是自然数}
T(M2)={02i+1∣i=0,1,2,3,4,…}
解: M1 :
q0 0
0
q1
q3
0
0
q0
q1
0
M2 :
0
q0
q1
0
3. 给定NFA M1 =({p,q,r,s},{0,1},δ,p,{s}),如下表所示。
构造一个DFA M2,使得T(M1)=T(M2) 。
11
0
[p,q,s] [p,r,s] [p,s] [p,q,r,s]
[p,q,r,s] [p,q,s] [p,q,s] [p,q,r,s]
[p,r,s]
[p,r] 1 [p,q,r]
[p,s] [p,s]
0
0
[p,q,s] 0 [p,q,r,s] 0
0
1 0
1
[p,r,s] 1 [p,s] 1 [p,r,s]
F

F {
{q
0}
F
如果 ε-CLOUSURE(q0) F Φ 否则
δ’ :对任何q∈K,任何a∈∑, δ’(q,a)= (qˆ,a) 。
公式(1):对于q∈K, , ˆ (q,ε)=ε-CLOSURE(q)
公式(2): 对于q∈K, w∈∑*, a∈∑,
ˆ (q,wa)=ε-CLOSURE(δ( (ˆq,w),a))
第一章 习题课
1.给定文法G=({S,B,C,D,E},{0,1},P,S),其中P: S→ABC,AB→0AD,AB→1AE,AB→ε,D0→0D,
D1→1D,E0→0E, E1→1E, C→ε, DC→B0C, EC→B1C,0B→B0,1B→B1 试写出句子01100110的派生过程。 解:SABC0ADC0AB0C01AE0C01A0EC 01A0B1C01AB01C011AE01C011A0E1C 011A01EC011A01B1C011A0B11C011AB011C 0110AD011C0110A0D11C0110A01D1C 0110A011DC0110A011B0C0110A01B10C 0110A0B110C0110AB0110C01100110C01100110
因为fCLOSURE(a)={a,b}, 所以F’=F={f} δ’ :q∈K,任何a∈∑, δ’(q,a)= (ˆq,a) 。
ε
ε a0
b c
1 ε
d ε
e
0 1
f
在计算 ˆ (q,a)时,要将a理解成a路径! 例如δ’(a,0)= (ˆa,0)={c,e,d,b} 。
δ’:
0
a {c,e,d,b}
K’={[p],[p,q],[p,r],[p,s],[p,q,r],[p,q,s],[p,r,s],[p,q,r,s]} F’ ={ [p,s],[p,q,s],[p,r,s],[p,q,r,s]}
4.将下面的ε-NFA M等价变换成NFA M’。
ε
ε a0
b c
1 ε
d ε
e
0 1
f
解:M’=(K, ∑, δ’,q0 ,F’),q0是M的开始状态,其中
q0’=[q0] ,
F’={[q1,q2,…,qi]|[q1,q2,…,qi]∈K’且{q1,q2,…,qi}∩F≠Φ} δ’ :K’×∑→K’,对[q1,q2,…,qi]∈K’, a∈∑,有
δ’([q1,q2,…,qi],a)=[p1,p2,…,pj] 当且仅当
δ({q1,q2,…,qi},a)={p1,p2,…,pj}
b
Φ
c
{f}
d
{f}
e
{f}
f
Φ
1 {d,b} {d,b} {f,d,b} {d,b} {f,d,b}
Φ
5.化简正规表达式 a(ε+aa)*(ε+a)b+b+φ(ab*+b)*。 解:上式=a(aa)*(ε+a)b+b 其中(aa)*(ε+a)代表集合: {ε,aa,aaaa,aaaaaa,…}{ε,a} = {ε,aa,aaaa,aaaaaa,…}{a,aaa,aaaaa,…} ={ε,a,aa,aaa,aaaa,aaaaa,aaaaaa,…}={a}* 于是上式=aa*b+b=a+ b+b= (a++ε)b= a*b
2.设计下列各文法G,使得它们分别是: (1)G是个上下文无关文法,且
L(G)={aibj ck ∣ i,j,k≥1}。 (2)G是个正规文法,且
L(G)={aibj ck ∣ i,j,k≥1}。 (3)G是个上下文无关文法,且
L(G)={ wwR∣w∈{0,1}+ }。其中wR是w的逆转,例 如w=001, 则wR=100. 解:设计一个文法G要验证:
凡是符合要求的句子G都能产生出来; G产生出来的所有句子都是符合要求的。
(1) G=({S,A,B,C},{a,b,c},P,S)
P: S→ABC , A→aA|a, B→bB|b,C→cC|c
(2) G=({S,A,B,C},{a,b,c},P,S) P: S→aA , A→aA| bB, B→bB|cC, C→cC|ε
q0’=[p] , K’和F’以后确定。
δ0 1
δ’:
p {p,q} {p}
0
1
q {r } {r}
[p] [p,q]
[p]
[p,q] [p,q,r]
[p,r]
[p,r] [p,q,s]
[p]
r {s} Φ
s {s} {s} 1 [p] 0 [p,q]
[p,q,r] [p,q,r,s] [p,r]
(3) G=({S},{0,1},P,S) P: S→0S0|1S1|00|11
第二章 习题
1.设计一个有限自动机(FA) M,使得T(M)中的每个句
子w同时满足下面三个条件:
1) w∈{a,b,}*;
2) |w|是3的整数倍;
3) w以a开头,以b结尾。
解:
q0 a
源自文库
q1 a,b q2 b q4
a,b q3 a,b
解:令 M2=(K’,∑, δ’, q0’,F’), 其中 K’2K,K’中的元素是由K的子集
δ0 1 p {p,q} {p} q {r } {r}
{q1,q2,…,qi}构成,但是要把子集
r {s} Φ
{q1,q2,…,qi}作为的一个状态看待,
s {s} {s}
因此把此子集写成[q1,q2,…,qi]。
相关文档
最新文档