计算理论导引习题答案[第2版]CHAP5new

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

5.1 证明EQ CFG 是不可判定的。

解:只须证明ALL CFG ≤m EQ CFG 即可。

构造CFG G 1,使L(G 1)=∑*。设计从ALL CFG 到EQ CFG 的归约函数如下: F=“对于输入<G >,其中G 是CFG :

1)输出<G ,G 1>。”

若<G >ALL CFG ,则EQ CFG 。

若<G >ALL CFG ,则EQ CFG 。

F 将ALL CF

G 归约到EQ CFG 即ALL CFG ≤m EQ CFG

∵ALL CFG 是不可判定的,

∴EQ CFG 是不可判定的。

5.2证明EQ CFG 是补图灵可识别的。

证明:注意到A CFG ={|G 是能派生串w 的CFG}是可判定的。构造如下TM : F=“输入,其中G ,H 是CFG ,

1) 对于字符串S 1, S 2,,重复如下步骤。

2) 检测S i 是否可以由G 和H 派生。

3) 若G 和H 中有一个能派生w ,而另一个不能,则接受。”

F 识别EQ CF

G 的补。

5.3 略。

5.4 如果A m B 且B 是正则语言,这是否蕴涵着A 也是正则语言?为什么? 解:否。例如:

对非正则语言A={0n 1n |n 0}和正则语言B={0},可以构造一个可计算函数f 使得:

f(w)=⎩⎨⎧≠=n n n

n 1

0w 1,10w 0, 于是w A f(w)B,故A m B 。

5.5 证明A TM 不可映射规约到E TM 。

证明:反证法

假设A TM m E TM , 则有TM m TM E A ≤。而A TM 的补不是图灵可识别的,从而可知E TM 的补也不是图灵可识别的。

下面构造一个识别E TM 的补的图灵机S :

S=“输入,M 是TM,

1) 对i=1,2,…重复下一步。

2) 对S 1,S 2,…,S i 模拟M 运行i 步,若有接受,则接受。”

S 可识别E TM 的补,所以E TM 的补是图灵可识别的,与上面由假设得到的E TM 的补不是图灵可识别的矛盾。所以A TM 不可映射规约到E TM 。

5.6 略。

5.7证明:如果A 是图灵可识别的,且A ≤m A ,则A 是可判定的。

证:∵A ≤m A ⇔A ≤m A 且A 为图灵可识别的

∴A 也为图灵可识别的

∴由A 和A 都是图灵可识别的可知A 是可判定的.

5.8 解:在由构造相应骨牌簇时,添加如下一类骨牌:

若M 中有一个左移(q,a)=(r,b,L),则添加一张骨牌:

⎥⎦

⎤⎢⎣⎡rb qa ##。 并且第一张骨牌改为⎥⎦

⎤⎢⎣⎡w q 0###。

问题

5.x 证明所有的图灵可识别问题都映射可规约到A TM 。

证明:设问题A 是图灵可识别的,且M 是识别A 的TM 。构造一个可计算函数

f 使得f(w)=, 则有

w A f(w) A TM 。

这说明A ≤m A TM 。

5.9 证明S={|M 是TM 且满足:只要它接受w ,就接受w R }不可判定。 证明:对任意,其中M 是TM ,w 是串,令f()是如下TM : F=“输入x ,

1) 若x 01或10,则拒绝。

2) 若x=01,则接受。

3) 若x=10,则在w 上运行M 。若M 接受,则接受。”

可以看到A TM f()∈S 。A TM ≤m S ,所有S 不可判定。

5.10 证明S={|双带TM M 在输入w 上运行时会在第二条带上写下一个非空白符}是不可判定的。

证明:对任意,其中M 是单带确定TM ,w 是字符串。令f()=,其中D 是如下的双带TM :

D=“输入x ,

1) 初始化,x 放在第一带上,第二带为空。

2) 在第一带上模拟M 运行。

3) 若M 接受,则在第二带上写下一个非空白符,并接受;若M 拒绝,则

拒绝。”

从D 的构造可以看出A TM ⇔∈S ,即A TM ≤m S ,所以S 不可判定。

5.13 USELESS TM ={| N 是TM,并且N 有无用状态}。

求证USELESS TM 不可判定。

证明:构造E TM 到USELESS TM 的规约函数:

F=“对于输入,M=(Q,,,,q 0,q accept ,q reject )是TM,

1) 构造TM N N=(Q,1,1,1,q 0,q accept ,q reject ),其中,

1={$},1=1{$}。设Q={q 0,q 1,q 2,,q n ,q reject ,q accept }。 对任意q Q ,a 1:

⎪⎩⎪⎨⎧==<≤==≠=+.$,),,$,(,0,$,),,$,($,),,(),(11n reject

i i q q a L q n i q q a L q a a q a q δδ

2) 输出。”

对于任意TM M ,如上构造的TM N ,除接受状态外,每个状态均非无用状态(若在输入$上运行N ,则N 遍历q 0,q 1,q 2,,q n ,最后进入q reject 并停机)。构造N 的目的就是消除M 中任何非接受状态为无用状态的可能。因此有: E TM ⇒ USELESS TM E TM ⇒ USELESS TM

所以E TM ≤m USELESS TM 而E TM 不可判定,因此USELESS TM 不可判定。

5.14 考虑这样的问题:检查图灵机在输入w 上,当其读写头处于带最左方格时,是否曾经试图将读写头向左移。将这个问题形式化为一个语言,并证明它是不可判定的。

解:此问题可以形式化为一个语言S :

S={ | TM M 在输入w 上,当其读写头处于带最左方格时,曾经

试图将读写头向左移}

为证明S 是不可判定的,可以证明A TM ≤m S 。构造一个可计算函数f:∑*→∑*,使得对每个,其中M 是TM ,w 是串,f()=,其中

M ’=“输入x,

1) 将工作带上内容改为$x 。

2) 读写头置于x 的第一个字符,模拟M 运行。

3) 每当读写头移到$,保持状态,右移一格。

4) 若M 进入接受状态,读写头左移到$,再左移一次,停机,接受;若

M 进入拒绝状态,则拒绝。”

于是A TM ⇔∈S 。

5.15 证明S={|图灵机M 在输入w 上运行时有左移}可判定。

证明:构造如下TM F :

F=“输入,M 是TM ,w 是串,

1) 计算M 的状态数,记为p 。

2) 在w 上模拟M ,直到有左移,或停机,或已运行了|w|+p 步。

3) 若有左移,则接受;若停机但无左移,则拒绝;若无左移且不停机,则

拒绝。”

需要说明的是在|w|+p 步运行中无左移也不停机的情况。由于无左移,M 运行|w|

相关文档
最新文档