fbpx
维基百科

非确定型图灵机

如果不加特殊说明,通常所说的图灵机都是确定型图灵机。非确定型图灵机确定型图灵机的不同之处在于,在计算的每一时刻,根据当前状态和读写头所读的符号,机器存在多种状态转移方案,机器将任意地选择其中一种方案继续运作,直到最后停机为止。具体而言,其状态转移函数为

其中是状态集合,是带字母表,分别表示读写头向左和向右移动;符号 表示集合的幂集,即

例如,设非确定型图灵机的当前状态为,当前读写头所读的符号为,若

任意地选择一个,按其进行操作,然后进入下一步计算。

非确定型图灵机在输入串上的计算过程可以表示为一棵树,不同的分支对应着每一步计算的不同的可能性。只要有任意一个分支进入接受状态,则称接受;只要有任意一个分支进入拒绝状态,则称拒绝;某些分支可能永远无法停机,但只要有一个分支可以进入接受或拒绝状态,我们就说在输入上可停机。注意,我们规定必须是无矛盾的,即它不能有某个分支接受而同时另一个分支拒绝,这样有矛盾的非确定型图灵机是不合法的。

定理:对于任意一个非确定型图灵机,存在一个确定型图灵机,使得它们的语言相等,即

证明:因为非确定型图灵机的计算过程就是一棵树,因此我们只需遍历该树就可以模拟其计算过程。一个简单的想法是利用深度优先搜索来遍历的计算树,但这样行不通,因为的某些计算分支可能永远不停机!所以我们可以采用一种在算法设计中称为迭代加深搜索的技巧来遍历的计算树。具体证明如下:

对于非确定型图灵机,构造一个确定型图灵机如下:

  1. 深度优先地模拟的每个分支的计算,但每个分支最多只计算步,如果某个计算分支在步内可以停机,则也停机,并将该计算分支的计算结果输出。
  2. 增加 1,跳转到上一步继续执行。

显然,若有某个分支可以停机,则此也一定会找到该分支并停机。因此

定理2:如果语言L被非确定型图灵机在多项式时间内接受,则一定存在多项式P使得语言L被时间复杂度为的确定型图灵机程序所接受。

定理2说明了为什么在证明P = NP之前,所有的NPC问题都只有指数时间复杂度算法。

参见

非确定型图灵机, 此條目没有列出任何参考或来源, 2010年8月21日, 維基百科所有的內容都應該可供查證, 请协助補充可靠来源以改善这篇条目, 无法查证的內容可能會因為異議提出而移除, 如果不加特殊说明, 通常所说的图灵机都是确定型图灵机, 和确定型图灵机的不同之处在于, 在计算的每一时刻, 根据当前状态和读写头所读的符号, 机器存在多种状态转移方案, 机器将任意地选择其中一种方案继续运作, 直到最后停机为止, 具体而言, 其状态转移函数为, displaystyle, delta, times, gamma, . 此條目没有列出任何参考或来源 2010年8月21日 維基百科所有的內容都應該可供查證 请协助補充可靠来源以改善这篇条目 无法查证的內容可能會因為異議提出而移除 如果不加特殊说明 通常所说的图灵机都是确定型图灵机 非确定型图灵机和确定型图灵机的不同之处在于 在计算的每一时刻 根据当前状态和读写头所读的符号 机器存在多种状态转移方案 机器将任意地选择其中一种方案继续运作 直到最后停机为止 具体而言 其状态转移函数为 d Q G 2 Q G L R displaystyle delta Q times Gamma to 2 Q times Gamma times L R 其中Q displaystyle Q 是状态集合 G displaystyle Gamma 是带字母表 L R displaystyle L R 分别表示读写头向左和向右移动 符号2 A displaystyle 2 A 表示集合A displaystyle A 的幂集 即 2 A S S A displaystyle 2 A S S subseteq A 例如 设非确定型图灵机M displaystyle M 的当前状态为q displaystyle q 当前读写头所读的符号为x displaystyle x 若 d q x q 1 x 1 d 1 q 2 x 2 d 2 q k x k d k displaystyle delta q x q 1 x 1 d 1 q 2 x 2 d 2 ldots q k x k d k 则M displaystyle M 将任意地选择一个 q i x i d i displaystyle q i x i d i 按其进行操作 然后进入下一步计算 非确定型图灵机M displaystyle M 在输入串w displaystyle omega 上的计算过程可以表示为一棵树 不同的分支对应着每一步计算的不同的可能性 只要有任意一个分支进入接受状态 则称M displaystyle M 接受w displaystyle omega 只要有任意一个分支进入拒绝状态 则称M displaystyle M 拒绝w displaystyle omega 某些分支可能永远无法停机 但只要有一个分支可以进入接受或拒绝状态 我们就说M displaystyle M 在输入w displaystyle omega 上可停机 注意 我们规定M displaystyle M 必须是无矛盾的 即它不能有某个分支接受w displaystyle omega 而同时另一个分支拒绝w displaystyle omega 这样有矛盾的非确定型图灵机是不合法的 定理 对于任意一个非确定型图灵机M displaystyle M 存在一个确定型图灵机M displaystyle M 使得它们的语言相等 即L M L M displaystyle L M L M 证明 因为非确定型图灵机的计算过程就是一棵树 因此我们只需遍历该树就可以模拟其计算过程 一个简单的想法是利用深度优先搜索来遍历M displaystyle M 的计算树 但这样行不通 因为M displaystyle M 的某些计算分支可能永远不停机 所以我们可以采用一种在算法设计中称为迭代加深搜索的技巧来遍历M displaystyle M 的计算树 具体证明如下 对于非确定型图灵机M displaystyle M 构造一个确定型图灵机M displaystyle M 如下 令k 1 displaystyle k 1 深度优先地模拟M displaystyle M 的每个分支的计算 但每个分支最多只计算k displaystyle k 步 如果某个计算分支在k displaystyle k 步内可以停机 则M displaystyle M 也停机 并将该计算分支的计算结果输出 令k displaystyle k 增加 1 跳转到上一步继续执行 显然 若M displaystyle M 有某个分支可以停机 则此M displaystyle M 也一定会找到该分支并停机 因此L M L M displaystyle L M L M 定理2 如果语言L被非确定型图灵机M displaystyle M 在多项式时间内接受 则一定存在多项式P使得语言L被时间复杂度为O 2 P n displaystyle O 2 P n 的确定型图灵机程序所接受 定理2说明了为什么在证明P NP之前 所有的NPC问题都只有指数时间复杂度算法 参见 编辑图灵机 複雜度類P 複雜度類NP P NP问题 取自 https zh wikipedia org w index php title 非确定型图灵机 amp oldid 26749792, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。