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

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

文章目录

一、丘奇-图灵论题

二、可判定性引入

三、图灵机语言

四、图灵机结果

五、判定机

五、部分函数与全部函数

六、可判定性定义





一、丘奇-图灵论题


为算法提供严格的数学模型 , 除了图灵机之外 , 还有其它的 3 33 种数学模型 :


① 可计算函数 ,数学方向 ;


② Lambda 演算 , 程序语言方向 ;


③ 登记计算机 ( Register Machine ) , 计算理论方向 ;



所有的数学模型 都为算法提供了严格的数学模型 , 这些数学模型之间是相互等价的 , 这是一个论题 , 不需要证明 ;


图灵机为算法提供了严格的数学定义 , 不需要证明 ;



丘奇-图灵论题 : 图灵机是计算的极限 , 是算法的严格的数学定义 ;






二、可判定性引入


经典的计算理论有 3 33 个基本概念 , 算法 ( Algorithm ) , 可判定性 ( Decidability ) , 有效性 ( Efficiency ) ;


之前讲的 都是 算法 ( Algorithm ) 范畴的 ;



同时 希尔伯特纲领 中 , 也要求了判定算法 , 希望存在一个算法 , 帮助判定任何一个数学命题的真假 ;


参考博客 : 【计算理论】图灵机 ( 图灵机引入 | 公理化 | 希尔伯特纲领 | 哥德尔不完备定理 | 原始递归函数 )






三、图灵机语言


给定一个字符串 , 将字符串写在带子上 , 让图灵机从开始状态 , 开始位置进行计算 ,


如果在计算过程中的 某个时刻 , 图灵机进入接受状态 , 那么称 该图灵机是接受这个字符串的 ;



将图灵机 M \rm MM 所 接受的所有字符串 w \rm ww 都放在一起 , 组成一个 集合 L \rm LL , 则该集合就是 图灵机 M MM 的语言 ;


使用符号化表示为 : L ( M ) = {   w   ∣   M 接 受 w 字 符 串   } \rm L(M) = \{ \ w \ | \ M 接受 w 字符串 \ \}L(M)={ w ∣ M接受w字符串 }



图灵机 计算模型 , 可以转换成语言 ;






四、图灵机结果


图灵机在 字符串 w \rm ww 上进行计算 , 可能有 3 33 种不同的结果 :


① 图灵机进入 接受状态 , 接受该字符串


② 图灵机进入 拒绝状态 , 不接受该字符串


③ 图灵机进入 L o o p \rm LoopLoop 不停机状态 , 出现循环



停机问题 , 在计算机科学中很重要 , 尽量避免出现 Loop 不停机状态 ;






五、判定机


简化图灵机 , 只研究特殊图灵机 , 该 特殊图灵机 在所有的字符串上 , 都会停机 , 任意给一个字符串 , 图灵机在该字符串上进行计算 , 要么进入接受状态 , 要么进入拒绝状态 ;


这种特殊的图灵机 , 被称为 “判定机” ;






五、部分函数与全部函数


部分函数 : 任意给定一个图灵机 , 对应一个 部分函数 , 给这个函数一个输入值 , 不会有结果 ; 图灵机进入 接受 / 拒绝 状态就有结果 , 进入 Loop 状态就不会有结果 ;


全部函数 : 任意给定一个输入值 , 都有唯一的输出值与之对应 , 这是函数 ; 这种函数称为 全部函数 ;



这里研究的特殊的图灵机 “判定机” , 判定机 只会进入 接受 / 拒绝 状态 , 因此判定机对应的是一个全部函数 ;






六、可判定性定义


如果一个语言是 图灵-可判定的 , 那么一定存在一个 判定机 判定该语言 ;


目录
相关文章
|
网络协议 Unix 应用服务中间件
Nginx极简实战—Nginx服务器高性能优化配置,轻松实现10万并发访问量
如何使Nginx轻松实现10万并发访问量。通常来说,一个正常的 Nginx Linux 服务器可以达到 500,000 – 600,000 次/秒 的请求处理性能,如果Nginx服务器经过优化的话,则可以稳定地达到 904,000 次/秒 的处理性能,大大提高Nginx的并发访问量。
Nginx极简实战—Nginx服务器高性能优化配置,轻松实现10万并发访问量
|
10月前
|
关系型数据库 分布式数据库 数据库
锦鲤附体 | PolarDB数据库创新设计赛,好礼不停!
锦鲤附体 | PolarDB数据库创新设计赛,好礼不停!
|
资源调度 关系型数据库 MySQL
【Flink on YARN + CDC 3.0】神操作!看完这篇教程,你也能成为数据流处理高手!从零开始,一步步教会你在Flink on YARN模式下如何配置Debezium CDC 3.0,让你的数据库变更数据瞬间飞起来!
【8月更文挑战第15天】随着Apache Flink的普及,企业广泛采用Flink on YARN部署流处理应用,高效利用集群资源。变更数据捕获(CDC)工具在现代数据栈中至关重要,能实时捕捉数据库变化并转发给下游系统处理。本文以Flink on YARN为例,介绍如何在Debezium CDC 3.0中配置MySQL连接器,实现数据流处理。首先确保YARN上已部署Flink集群,接着安装Debezium MySQL连接器并配置Kafka Connect。最后,创建Flink任务消费变更事件并提交任务到Flink集群。通过这些步骤,可以构建出从数据库变更到实时处理的无缝数据管道。
926 2
|
存储 缓存 网络协议
网络丢包排查方法
网络丢包排查方法
|
设计模式 Java 应用服务中间件
Springboot抵御即跨站脚本(XSS)攻击2
Springboot抵御即跨站脚本(XSS)攻击2
|
人工智能 自然语言处理
性能超ChatGPT-3.5,专用金融分析的多模态大语言模型
【4月更文挑战第19天】不列颠哥伦比亚大学与Invertible AI合作开发的FinTral模型,是一款专为金融分析设计的多模态大型语言模型,超越ChatGPT-3.5,具备处理文本、数值、表格和图像数据的能力。通过直接偏好优化(DPO)提升性能,FinTral能执行多种金融任务,如情感分析、股票预测等,且在与GPT-3.5和GPT-4的对比中胜出。然而,其金融领域的专注可能限制了其跨领域应用,且依赖准确的实时数据。FinTral为金融分析提供高效工具,提升理解和决策支持的可靠性。
258 1
|
机器学习/深度学习 数据采集 监控
经典神经网络论文超详细解读(六)——DenseNet学习笔记(翻译+精读+代码复现)
经典神经网络论文超详细解读(六)——DenseNet学习笔记(翻译+精读+代码复现)
5125 1
经典神经网络论文超详细解读(六)——DenseNet学习笔记(翻译+精读+代码复现)
|
数据可视化 UED Python
用Python打造批量下载视频并能可视化下载进度的炫酷下载器
用Python打造批量下载视频并能可视化下载进度的炫酷下载器
285 0
|
传感器 监控 IDE
什么是Arduino?
Arduino是一个基于易于使用的硬件和软件的开源电子平台。 Arduino开发板能够读取输入——控制传感器上的LED灯;按钮上的手指或WeChat消息转换为——输出启动电动机、监控等在线发布内容。您可以通过向板上的微控制器发送一组指令来告诉您该怎么做。为此,您可以使用Arduino编程语言(基于Wiring)和Arduino软件(IDE)(基于Processing)。
865 0
|
数据安全/隐私保护 Python
攻防世界Crypto、Broadcast、Morse、Caesar、base64
攻防世界Crypto、Broadcast、Morse、Caesar、base64
334 0