文章目录

  • 一、计算理论内容概览
  • 二、计算问题的 有效性
  • 三、语言 与 算法模型
  • 四、可计算性 与 可判定性
  • 五、可判定性 与 有效性
  • 六、语言分类

一、计算理论内容概览


计算理论分为 形式语言与自动机 , 可计算部分 , 计算复杂性部分 ;

形式语言与自动机 内容 : 自动机 , 确定性有限自动机 , 非确定性有限自动机 , 正则语言 , 泵引理 , 上下文无关语法 , 下推自动机 , 都属于 形式语言 与 自动机 部分 ;

可计算 内容 : 图灵机 , 确定性图灵机 , 非确定性图灵机 , 丘奇-图灵命题 , 可判定性 , 可计算性 等问题 ;

计算复杂性 内容 : 时间复杂性 , 模型间的时间复杂性关系 , P\rm PP 类 , NP\rm NPNP 类 ;

二、计算问题的 有效性


可计算性 包含 可判定性 , 可判定性 包含 有效性 ;

可计算性 > 可判定性 > 有效性 ;

计算问题 对应的算法中 , 有些算法是 有效的 , 有些算法是 无效的 ,

如 : 穷举算法 , 蛮力搜索之类的算法 , 没有有效性可言 , 肯定不是有效算法 ; 贪心算法 , 欧几里得算法 是有效算法 ;

这里希望可以区分 有效算法 与 无效算法 ;

在上一篇博客 【计算理论】计算复杂性 ( 多项式等价 | P 类 | 丘奇-图灵论题延伸 ) 中给出了有效算法的严格的数学定义 ;

有效算法 : 就是在 多项式时间 内 , 可以执行完毕 , 得到一个确定的结果的算法 ;

三、语言 与 算法模型


语言 与 算法模型 :

① 正则语言 ( 自动机 ) : Lr=L(a∗b∗)\rm L_r = L(a^*b^*)Lr​=L(a∗b∗) , 该语言是正则表达式语言 ; r\rm rr 下标含义是 regular 正则 ;

正则语言参考 : 【计算理论】正则语言 ( 正则表达式原子定义 | 正则表达式递归定义 | 正则表达式语言原子定义 | 正则表达式语言结构归纳 | 正则表达式语言示例 | 根据正则表达式构造自动机 )

② 上下文无关语言 ( 下推自动机 ) : LCFL={anbn:n≥0}\rm L_{CFL} = \{ a^nb^n : n \geq 0 \}LCFL​={anbn:n≥0} , 该语言不是正则表达式语言 , 是上下文无关语言 ; 下标 CFL\rm CFLCFL 含义是 Context-Free Grammer , 上下文无关语法 ;

上下文无关语法参考 : 【计算理论】上下文无关语法 ( 语法组成 | 规则 | 语法 | 语法示例 | 约定的简写形式 | 语法分析树 )

③ 可判定语言 ( 判定机 ) : Ld={anbncn:n≥0}\rm L_{d} = \{ a^nb^nc^n : n \geq 0 \}Ld​={anbncn:n≥0} , 该语言不是上下文无关语言 , 是可判定语言 ; 下标 d\rm dd 含义是 Decidability 可判定 ;

可判定语言参考 : 【计算理论】可判定性 ( 丘奇-图灵论题 | 可判定性引入 | 图灵机语言 | 图灵机结果 | 判定机 | 部分函数与全部函数 | 可判定性定义 )

④ 可计算语言 ( 图灵机 ) : LTr=ATM\rm L_{Tr} = A_{TM}LTr​=ATM​ , 该语言是可计算的 , 不是图灵可判定的 ; 下标 Tr\rm TrTr 含义是 Turing-recognizable ( 图灵机可识别 ) 即可计算的 ;

⑤ 不可计算语言 ( 没有对应算法模型 ) : LnTr=A‾TM\rm L_{nTr} = \overline{A}_{TM}LnTr​=ATM​ , 图灵机不识别语言 , 不可计算语言 ;

参考博客 : 【计算理论】可判定性 ( 通用图灵机和停机问题 | 可判定性 与 可计算性 | 语言 与 算法模型 )

四、可计算性 与 可判定性


可判定性 与 可计算性

① 可判定性 ( Decidability ) : 计算模型是 图灵机中的 判定机 ;

② 可计算性 ( Turing-recognizable 图灵机可接受的 ) : 计算模型是 图灵机 ;

可计算性 包含 可判定性 ;

可计算性 与 可判定性 之间的相互关系 :

补集可计算 : 如果一个语言的 补集 ( Complement ) 是可计算的 ( Turing-recognizable ) , 那么称该语言是 补集可计算的 ( co-Turing-recognizable ) ;

判定 = 可计算 + 补集可计算 : 如果一个语言是 可判定的 ( Decidable ) , 那么这个语言是 可计算的 ( Turing-recognizable ) , 同时这个语言又是 补集是可计算的 ( co-Turing-recognizable ) ;

可计算 : Turing-recognizable

补集可计算 : co-Turing-recognizable

之前提到过 通用图灵机语言 ATM\rm A_{TM}ATM​ 是 可计算的 , 对应的计算模型是 图灵机 , 但 ATM\rm A_{TM}ATM​ 是 不可判定的 ;

可判定 = 可计算 + 补集可计算

通用图灵机语言 ATM\rm A_{TM}ATM​ 是 不可判定的 , 可计算的 , 其补集肯定是不可计算的 ;

参考博客 : 【计算理论】可判定性 ( 通用图灵机和停机问题 | 可判定性 与 可计算性 | 语言 与 算法模型 )

五、可判定性 与 有效性


可判定性 与 有效性 :

① 可判定性 ( Decidability ) : 计算模型是 图灵机中的 判定机 ;

② 有效性 : 在 多项式时间 内 , 可以执行完毕 , 得到一个确定的结果的算法 ;

六、语言分类


语言分类 :

① 可计算语言 : 下推自动机等价问题算法 EQPDA\rm EQ_{PDA}EQPDA​ , 通用图灵机语言 ATM\rm A_{TM}ATM​ ;

② 可判定语言 : 无效算法语言 , 有效算法语言 ;

③ 无效算法语言 : 蛮力穷举算法 ;

④ 有效算法语言 : 正则表达式 , 上下文无关语言 , 动态规划算法 , 贪心算法 ;

下图中 , 分为 可计算 , 可判定 , 无效算法 , 有效算法 ;

① 可计算 : 蓝色部分之外的是 可计算语言 , 对应的计算模型是 图灵机 ;

② 可判定 : 蓝色圆框 之内的是 可判定语言 , 对应的计算模型是 判定机 ;

③ 无效算法 : 蓝色圆框 与 红色圆框 之间的是 无效算法 , 蛮力穷举算法 ;

④ 有效算法 : 红框内的算法是 有效算法 , 可以在 多项式时间 内得到一个结果 ;

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

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

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

  2. 【计算理论】可判定性 ( 通用图灵机和停机问题 | 可判定性 与 可计算性 | 语言 与 算法模型 )

    文章目录 一.通用图灵机和停机问题 二.可判定性 与 可计算性 三.语言 与 算法模型 一.通用图灵机和停机问题 利用 图灵 的结论 , 证明 有哪些 计算问题 是找不到 算法 进行判定的 ; 如 停 ...

  3. r语言 计算模型的rmse_直播丨R语言与作物模型高级应用实战技术应用

    随着基于过程的作物生长模型(Process-based Crop Growth Simulation Model)的发展,R语言在作物生长模型和数据分析.挖掘和可视化中发挥着越来越重要的作用.想要成为 ...

  4. 【计算理论】可判定性 ( 可判定性总结 )

    文章目录 一.可判定性总结 二.概览 一.可判定性总结 确定性有限自动机 , 下推自动机 , 图灵机 是目前提到过的计算模型 ; 关于 确定性有限自动机 的所有计算问题都是 可判定的 ; 关于 图灵机 ...

  5. WAIC 2021 | 百度量子计算段润尧:从理论到实践谈量子人工智能

    在 WAIC 2021 AI 开发者论坛上,百度研究院量子计算研究所所长段润尧发表主题演讲<量子人工智能:从理论到实践>.在演讲中,段润尧讲述了量子计算的理论基础,对量子人工智能的发展现状 ...

  6. 量子计算(1)量子力学基本理论(上)

    一.量子技术的历史 二.量子力学 1.量子的四特性 2.量子力学基本理论 ①态矢 ②内积与外积 ③两能集系统 ④观察概率 一.量子技术的历史 我们学习一个东西,归根结底是要掌握他在科学上的用途.而如何 ...

  7. UA MATH523A 实分析3 积分理论例题 一个测度与积分的综合计算题

    UA MATH523A 实分析3 积分理论例题 一个测度与积分的综合计算题 例 EnE_nEn​是一列[0,1][0,1][0,1]上的Lebesgue可测集,∃k∈[0,1]\exists k \i ...

  8. 量子计算:当前阶段仍属于热炒概念

    一.量子计算为何可能会成为一个风口? 量子计算是利用量子力学原理进行计算的新型计算方式.与传统的经典计算机不同,量子计算机利用量子比特(qubits)进行信息处理,由于量子比特可以处于叠加态,这使得量 ...

  9. 超算/先进计算的专项训练及考核的内容是什么?

    很多时候,同班同学A与B两人学习经历.能力都相差不大时,未来的发展可能相差万里.正所谓选择比努力更重要,这句话的意思是在相同努力付出下,不同的选择会带来巨大的结果. 在目前疫情及国际大环境中,在校期间 ...

最新文章

  1. 阿里程序员跳槽到小外企,再无996!业余时间开发APP,每月广告收入8万多!堪比阿里P8!...
  2. python使用sklearn的RocCurveDisplay来可视化ROC曲线(受试者工作特征曲线)
  3. boost::contract模块实现observer观察者的测试程序
  4. 那个成人总会遇到的小问题……
  5. kali linux查看网卡_CentOS7.6安装无线网卡驱动|Linux如何安装网卡驱动|Linux如何让配置网卡...
  6. 【Flink】Flink开发中遇到的问题及解法
  7. springboot事物注解不生效_springboot事务不生效的几种解决方案
  8. 视频播放器本地代理服务设计
  9. Atitit v3项目快速推进的推荐技术标准化 规范 流程
  10. 《星际穿越》科学解析
  11. Joyoshare Media Cutter for Mac(智能媒体剪辑软件)激活版
  12. 如何在Java中使用Lambda表达式
  13. C# 客户端rar/zip文件解压缩
  14. 必领空投一:4EVERLAND部署奖励
  15. allennlp与pytorch版本匹配
  16. C语言求:歌德巴赫猜想
  17. IDEA使用单元测试对数据库的insert语句进行测试,出现添加多条问题的解决方案
  18. 微信公众平台--服务号/订阅号--网页授权获取用户基本信息
  19. 桌面倒计时(中考,高考,考研,生日等重要事件倒计时)--C#
  20. CIO巧用零基预算法

热门文章

  1. 前后端同学,必会的Linux常用基础命令
  2. node express 学习笔记
  3. Spring Boot由jar包转成war包
  4. CoreData和SQLite多线程访问时的线程安全问题
  5. MySql优化的方法
  6. C#读取Excel显示到repeater中
  7. jni java c++ 参数传递问题解决
  8. The Simple Life
  9. 多目标跟踪笔记二:Efficient Algorithms for Finding the K Best Paths Through a Trellis
  10. mysql当前用户user()与current_user()