文章目录

  • 一、非确定性图灵机 与 计算树
  • 二、非确定性
  • 三、非确定性图灵机 与 确定性图灵机 相互模仿
  • 四、非确定性图灵机 -> 确定性图灵机

一、非确定性图灵机 与 计算树


非确定性图灵机体现在多个方面 , 如果在下图的 q1\rm q_1q1​ 状态时 , 读写头指向 000 时 , 有 两个操作 ;

确定性图灵机中 , 单个状态下 , 读取确定的字符时 , 只允许有一条对应的指令 , 不能出现多个后继状态 ;

非确定性图灵机 的计算过程是一个 计算树 ;

计算树 在计算机科学中 , 是一个很重要的数据结构 , 算法的计算复杂度主要是根据计算树进行分析的 ;

二、非确定性


非确定性图灵机的优势是 , 给图灵机设计带来了很多方便 , 给定一个计算问题 , 如果可以找到一个图灵机来认识该计算问题 , 如果要 设计一个非确定性图灵机很容易 , 设计确定性图灵机 , 难度很大 ;

非确定性 在 计算理论中 , 是 搜索 和 猜测 的代名词 ;

三、非确定性图灵机 与 确定性图灵机 相互模仿


非确定性图灵机 与 确定性图灵机 之间 , 可以进行 互相模仿 ;

非确定性图灵机 与 确定性图灵机 给我们的最初印象是 非确定性图灵机 计算能力要强于 确定性图灵机 ,

非确定性图灵机 的后续操作可以有多个 ,

确定性图灵机 的后续操作只有唯一的一个 ,

但实际上 非确定性图灵机 与 确定性图灵机 的计算能力是等价的 , 它们之间是可以 相互模仿 的 ;

给定一个 非确定性图灵机 , 可以找到一个 确定性图灵机 来模仿它 ,

给定一个 确定性图灵机 , 可以找到一个 非确定性图灵机 来模仿它 ;

四、非确定性图灵机 -> 确定性图灵机


确定性图灵机 可以看成是特殊的 非确定性图灵机 ;

给定一个 非确定性图灵机 , 设计一个 确定性图灵机 来模仿该 非确定性图灵机 ;

给定如下非确定性图灵机 , 设计 确定性图灵机 模仿下面的 非确定性图灵机 ;

确定性图灵机 模仿 非确定性图灵机 思路 :

给定一个 非确定性图灵机 , 给定一个输入字符串 , 在字符串上进行计算 , 得到的 格局 快照 , 形成一个 计算树 , 如下图示例 :

如果设计 确定性图灵机 模仿 非确定性图灵机 的计算过程 , 即计算树 ,

首先模仿 非确定性图灵机 在计算树中的 左侧 深度为 111 的计算 , 如下图的红色部分对应的计算过程 ;

然后模仿 非确定性图灵机 在计算树中的 右侧的 深度为 111 的计算 , 如下图的蓝色部分对应的计算过程 ;

如果上述两个计算都没有进入接受状态 , 那么继续模仿 深度为 222 的计算 , 如下图的红色部分对应的计算过程 ;


如果还没有进入接受状态 , 那么继续模仿另外的深度为 222 的计算 , 如下图紫色部分对应的计算 :

如果在所有的 深度为 222 的计算中 , 都没有进入接受状态 , 那么继续 模仿深度为 333 的计算过程 ;

以此类推 , 直到找到 非确定性图灵机的 接受状态为止 ;

如果中间 出现一次接受状态 , 就让搜索停止下来 , 如果没有就继续模仿 ;

上述的模仿过程是一个 深度优先搜索 过程 ;

非确定性图灵机 转为 确定性图灵机 的计算过程 在最坏的情况下是 深度优先搜索 ,

【计算理论】图灵机 ( 非确定性图灵机 与 计算树 | 非确定性 | 非确定性图灵机 与 确定性图灵机 相互模仿 | 非确定性图灵机 -> 确定性图灵机 )相关推荐

  1. 【计算理论】计算复杂性 ( 阶段总结 | 计算理论内容概览 | 计算问题的有效性 | 语言与算法模型 | 可计算性与可判定性 | 可判定性与有效性 | 语言分类 ) ★

    文章目录 一.计算理论内容概览 二.计算问题的 有效性 三.语言 与 算法模型 四.可计算性 与 可判定性 五.可判定性 与 有效性 六.语言分类 一.计算理论内容概览 计算理论分为 形式语言与自动机 ...

  2. 【逻辑与计算理论】从逻辑到计算的转变之路

    [逻辑与计算理论]从逻辑到计算的转变之路 总所周知,λ-演算与组合子演算构成的邱奇计算理论与图灵的图灵机模型共同构成了计算机计算理论的支柱.在前面的文章中我们已经讨论过了自动机与图灵机相关理论,在这里 ...

  3. 【计算理论】下推自动机 PDA 及 计算示例

    文章目录 一. 下推自动机 二.下推自动机 计算过程 三.下推自动机 计算结果 四.下推自动机 计算示例 一. 下推自动机 1 . 下推自动机 由来 : 下推自动机 ( PDA ) 是在 确定性有限自 ...

  4. 【计算理论】计算复杂性 ( 计算理论内容概览 | 计算问题的有效性 | 时间复杂性度量 | 输入表示 | 时间复杂度 )

    文章目录 一.计算理论内容概览 二.计算问题的判定性 三.计算问题的 有效性 四.时间复杂性度量 五.算法有效性 数学定义需求 六.输入表示 七.时间复杂度 一.计算理论内容概览 计算理论分为 形式语 ...

  5. 【计算理论】计算理论总结 ( 上下文无关文法 CFG 转为下推自动机 PDA 示例 2 ) ★★

    文章目录 一.上下文无关文法 CFG 转为下推自动机 PDA 流程 二.上下文无关文法 CFG 转为下推自动机 PDA 示例 2 参考博客 : [计算理论]上下文无关语法 ( 语法组成 | 规则 | ...

  6. 【计算理论】计算理论总结 ( 上下文无关文法 CFG 转为下推自动机 PDA 示例 1 ) ★★

    文章目录 一.上下文无关文法 CFG 转为下推自动机 PDA 流程 二.上下文无关文法 CFG 转为下推自动机 PDA 示例 1 参考博客 : [计算理论]上下文无关语法 ( 语法组成 | 规则 | ...

  7. 【计算理论】计算理论总结 ( 下推自动机计算过程 | 上下文无关文法 CFG 转为下推自动机 PDA ) ★★

    文章目录 一.下推自动机计算过程 二.上下文无关文法 CFG 转为下推自动机 PDA 流程 参考博客 : [计算理论]上下文无关语法 ( 语法组成 | 规则 | 语法 | 语法示例 | 约定的简写形式 ...

  8. 【计算理论】计算复杂性 ( 多项式等价 | P 类 | 丘奇-图灵论题延伸 )

    文章目录 一.多项式等价 二.P 类 三.丘奇-图灵论题延伸 一.多项式等价 多项式等价 : 所有的 确定性的计算模型 之间是 相互等价 的 , 两个带子图灵机 与 单个带子图灵机 , 计算相同的问题 ...

  9. 计算理论2--可计算理论

    计算理论2--可计算理论 图灵机 博主正在学习INTRODUCTION TO THE THEORY OF COMPUTATION (Second Edition) --Michal Sipser,以及 ...

最新文章

  1. 测量工具(keras)
  2. crm创建和编辑全局选项集
  3. TopCoder SRM 152 div 2 500point
  4. 如何写好一篇高质量的IEEE/ACM Transaction级别的计算机科学论文?——顶刊与顶会的区别...
  5. atcoder 076
  6. 第3章-动态基础分析实验
  7. 信息学奥赛C++语言: 素数回文数的个数
  8. 微软提出第一个端到端的Video Captioning方法:SWIN BERT,涨点显著!
  9. Centos5.11 使用yum源
  10. pip install报错_【Python】pip install django报错
  11. UGUI的Slider
  12. java编程剪刀石头布_Java实现的剪刀石头布游戏示例
  13. paip.win32的internet扩展已停止工作解决大法
  14. android item弹出popupwindow recycleview_PopupWindow+RecyclerView实现上下滑动框功能
  15. 一个简单的java分页
  16. 自我介绍(思维导图)
  17. R(A+B)<=R(A)+R(B): R(AB)<=min(R(A)+R(B)): A为m×n矩阵,r(A)=n,则AX=0只有零解。设矩阵A为m×n的秩R(A)=m;Ax=b 有解;
  18. Ant Design中Form组件重置验证条件resetFields()方法
  19. Collections集合
  20. Java中的同步方法

热门文章

  1. linux 如何查看服务和端口
  2. ​周锦民:腾讯在线教育视频互动直播间技术实践
  3. python---django中orm的使用(5)数据库的基本操作(性能相关:select_related,和prefetch_related重点)(以及事务操作)...
  4. 关闭SharePoint 2010 customErrors
  5. CSS中Float概念相关文章
  6. 智能指针auto_ptr介绍
  7. 【引用】JS刷新当前页面
  8. 用户管理和su,id 命令
  9. PowerDesigner使用方法入门学习
  10. 关于汉诺塔非递归算法的一点思考