美文网首页
可判定性

可判定性

作者: WILL_HUNTING | 来源:发表于2019-05-20 17:25 被阅读0次

研究算法在求解问题上的能力。有些问题算法上可解,有些问题算法上不可解。

5.1 可判定语言

算法上可判定的语言。

5.1.1 与正则语言相关的可判定性问题

检测一个有穷自动机是否接受一个串;一个有穷自动机的语言是否为空;两个有穷自动机是否等价。

DFA接受问题:

A_{DFA}=\{<B, \omega >|B是DFA,\omega 是串,B接受\omega \}

定理5.1 A_{DFA}是一个可判定语言。

NFA接受问题:

A_{NFA}=\{<B, \omega >|B是NFA, \omega 是串, B接受 \omega \}

定理5.2 A_{NFA}是一个可判定语言。

空性质测试:

E_{DFA}=\{<A>|A是一个DFA, 且L(A)=\Phi \}

定理5.4 E_{DFA}是一个可判定语言

检查两个DFA是否识别同一个语言:

EQ_{DFA}=\{<A, B>|A和B都是DFA, 且L(A)=L(B)\}

定理5.5 EQ_{DFA}是一个可判定语言

用定理5.4来证明定理5.5

证明:构造如下语言L(C):

L(C)=(L(A) \bigcap \overline{L(B)}) \bigcap (\overline{L(A)} \bigcap L(B))

5.1.2 与上下文无关语言的可判定问题

A_{CFG}=\{<G, \omega >|G是CFG, \omega 是串, G派生\omega \}

image.png

5.2 停机问题

算法上不可解的问题是存在的。

不可判定:检查一个图灵机是否接受一个给定串的问题。

检查一个图灵机是否接受一个给定串的问题:

A_{TM}=\{<M, \omega>|M是一个图灵机,且接受\omega\}

定理5.9 A_{TM}是不可判定的。

A_{TM}是图灵可识别的。下面的图灵机U识别A_{TM}:

U = “对于输入<M, \omega>,其中M是一个TM,\omega是一个串:

  1. 再输入输入\omega上模拟M;

  2. 如果M进入接受状态,则接受;如果M进入拒绝状态,则拒绝。”

如果M在\omega上循环,则机器U在输入<M, \omega>上循环,这就是U不判定A_{TM}的原因。A_{TM也被称为停机问题

图灵机U是通用图灵机的一个例子。通用:可以模拟任何其他图灵机,前提是知道其描述。

5.2.1 对角化方法

存在语言是图灵不可识别的。

5.2.2 停机问题是不可判定的

证明 假设A_{TM}是可判定的,下面将由之导出矛盾。设H是A_{TM}的判定器。令M是一个TM,\omega是一个串,再输入<M, \omega>上,如果M接受\omega,则H就停机且接受\omega;如果M不接受\omega,则H也会停机,但拒绝\omega。换句话说,H是一个TM使得:

H(<M, \omega>) = \left\{ \begin{aligned} 接受 & & 如果M接受 \omega \\ 拒绝 & & 如果M不接受 \omega \end{aligned} \right.

现在来构造一个新的图灵机D,它以H作为子程序。当M被输入它自己的描述<M>时,TM D就调用H,以了解M将做什么。一旦得到这个信息,D就反着做,即:如果M接受,它就拒绝;如果M不接受,它就接受。下面是D的描述:

D=“对于输入<M>,其中M是一个TM:

  1. 再输入<M, <M>>上运行H。

  2. 输出H输出相反的结论,即,如果H接受,就拒绝;如果H拒绝,就接受。”

不要被“在一个机器上运行它自己的描述”这个想法所困扰,这类似与以一个程序本身作为输入来运行这个程序,这在实际中确实时有发生。例如,编译器是翻译其他程序的程序。Pascal语言的编译器也许其自身就是以Pascal写的,所以“在一个程序本身上运行这个程序”是有意义的。

总而言之:

D(<M,>) = \left\{ \begin{aligned} 接受 & & 如果M不接受 <M> \\ 拒绝 & & 如果M接受 <M> \end{aligned} \right.

当以D的描述<D>作为输入来运行D自身时,结果会怎样呢?我们得到:

D(<D>) = \left\{ \begin{aligned} 接受 & & 如果D不接受 <D> \\ 拒绝 & & 如果D接受 <D> \end{aligned} \right.

不论D做什么,她都被迫相反地做,这显然是一个矛盾。所以,TM D和TM H都不存在。

5.2.3 一个图灵不可识别语言

如果一个语言是图灵可识别语言的补集,则称它是补图灵可识别的

**定理5.16 ** 一个语言是可判定的当且仅当它和它的补都是图灵可识别的。

相关文章

  • 可判定性

    研究算法在求解问题上的能力。有些问题算法上可解,有些问题算法上不可解。 5.1 可判定语言 算法上可判定的语言。 ...

  • 第六次分享06.24 测试用例设计之理论&实践-等价类

    1.测试用例的定义 2.测试用例的用途和目的 3.测试用例设计的基本准则 代表性、可判定性、可再现性; 4.测试用...

  • 2565-06-15

    不可解性?等同于初等数论的不可判定性,并隐含了哥德尔的第一个不完备定理的弱形式。???? 毛寺心意社 坐标上海20...

网友评论

      本文标题:可判定性

      本文链接:https://www.haomeiwen.com/subject/blzkzqtx.html