图灵机,图灵完备

2023-10-28 00:48
文章标签 完备 图灵机 图灵

本文主要是介绍图灵机,图灵完备,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.图灵

艾伦·麦席森·图灵(Alan Mathison Turing,1912年6月23日-1954年6月7日),英国数学家、逻辑学家,被称为计算机科学之父,人工智能之父。

 

2.图灵机

图灵机,又称图灵计算、图灵计算机,是由数学家艾伦·麦席森·图灵(1912~1954)提出的一种抽象计算模型,即将人们使用纸笔进行数学运算的过程进行抽象,由一个虚拟的机器替代人们进行数学运算。它有一条无限长的纸带,纸带分成了一个一个的小方格,每个方格有不同的颜色。有一个机器头在纸带上移来移去。机器头有一组内部状态,还有一些固定的程序。在每个时刻,机器头都要从当前纸带上读入一个方格信息,然后结合自己的内部状态查找程序表,根据程序输出信息到纸带方格上,并转换自己的内部状态,然后进行移动。

以上只是图灵机模型的内容,而非具体的实现。

图灵机可以解决什么问题

假设上述模型里所说的功能都能被以某种形式物理实现,那么任意可计算问题都可以被解决。

计算问题的一些举例:

  • 给定一个正整数n,判断它是否是质数
  • 给定一个01序列,把他们按位取反
  • 给定一个字符串,判断某个字符是否存在,及查找存在位置
  • 给定一个逻辑蕴含的命题,求它的逆否命题

非计算问题的例子:

  • 今晚吃什么
  • 为什么太阳从东边升起

3.什么是图灵完备?

在可计算性理论里,如果一系列操作数据的规则(如指令集、编程语言、细胞自动机)按照一定的顺序可以计算出结果,被称为图灵完备(turing complete)。

一个有图灵完备指令集的设备被定义为通用计算机。如果是图灵完备的,它(计算机设备)有能力执行条件跳转(if、while、goto语句)以及改变内存数据。 如果某个东西展现出了图灵完备,它就有能力表现出可以模拟原始计算机,而即使最简单的计算机也能模拟出最复杂的计算机。所有的通用编程语言和现代计算机的指令集都是图灵完备的(C++ template就是图灵完备的),都能解决内存有限的问题。图灵完备的机器都被定义有无限内存,但是机器指令集却通常定义为只工作在特定的、有限数量的RAM上。

图灵完备的语言,有循环执行语句,判断分支语句等。理论上能解决任何算法。但有可能进入死循环而程序崩溃。

图灵不完备也不是没有意义,有些场景我们需要限制语言本身。如限制循环和递归, 可以保证该语言能写的程序一定是终止的。

比特币的脚本系统是图灵不完备的,以太坊的智能合约系统是图灵完备的。各有优缺点,图灵不完备会更安全些,图灵完备会更智能些。



作者:空灵一月
链接:https://www.jianshu.com/p/a04b16c5bbda
來源:简书

 

 

这篇关于图灵机,图灵完备的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/289536

相关文章

1.1 从图灵机到GPT,人工智能经历了什么?——《带你自学大语言模型》系列

《带你自学大语言模型》系列部分目录及计划,完整版目录见: 带你自学大语言模型系列 —— 前言 第一部分 走进大语言模型(科普向) 第一章 走进大语言模型 1.1 从图灵机到GPT,人工智能经历了什么?1.2 如何让机器理解人类语言?(next, next)1.3 Transformer做对了什么?(next, next, next) 第二部分 构建大语言模型(技术向) 第二章 基础知识

springboot学习-图灵课堂-最详细学习

springboot-repeat springBoot学习代码说明为什么java -jar springJar包后项目就可以启动 配置文件介绍 springBoot学习 依赖引入 <properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><maven.compiler.tar

《全网首发》平衡三进制图灵机的构建

PS:以下内容均为本人原创,未经授权及许可,严禁引图、转载或加工,违者必究。 ————2024年6月13号 1、图灵机的概述 图灵机(Turing machine)是一种理论计算模型,由英国数学家阿兰·图灵(Alan Turing)于1936年提出。它被用来研究计算过程的基本性质和计算理论的极限。图灵机被认为是现代计算机的理论基础。 1.1图灵机的组成部分: 无限长的纸带: 纸带被划

B3981 [信息与未来 2024] 图灵完备

题目描述 (你不需要看懂这张图片;但如果你看懂了,会觉得它很有趣。) JavaScript 是一种功能强大且灵活的编程语言,也是现代 Web 开发的三大支柱之一 (另外两个是 HTML 和 CSS)。灵活的 JavaScript 包含“自动类型转换”的语言特性。例如,JavaScript 认为[](空数组)和 0 是可以比较且相等的。自动类型转换带来的一个后果是我们可以只用 ()+[]

从数学危机到图灵机

从数学危机到图灵机 学习计算机之前先讲数学,因为数学是计算机之道 文章目录 从数学危机到图灵机第一次数学危机:第二次数学危机:第三次数学危机:可计算问题:图灵机:总结: 第一次数学危机: 毕达哥拉斯学派坚信:数是万物的本原,事物的本质是数的关系比例构建而成的。一切数均可表示成整数或者整数比(也就是后来的二进制)。 危机:后来毕达哥拉斯证明了勾股定理,同时发现有些直角三角形的

超分辨率重建——过完备字典

在基于稀疏表示的超分辨率重建方法中,经常会提到一个词,叫做过完备字典,那么什么是过完备字典呢? 稀疏表示理论的核心在于y=Da,其中y是一个真实的信号,D是一个过完备字典,a是其稀疏表示。假设y是n行1列的矩阵,D为n*k的矩阵,其中k>n,a为k行1列的矩阵,并且a为一极小的非0向量,及a中的大多数元素都是0. 我们称D为过完备字典,及信号y可以在过完备字典下,稀疏表示为a。明显的D为n行k

vue3 - 图灵

目录 vue3简介整体上认识vue3项目创建Vue3工程使用官方脚手架创建Vue工程[推荐] 主要⼯程结构 数据双向绑定vue2语法的双向绑定简单表单双向绑定复杂表单双向绑定 CompositionAPI替代OptionsAPICompositionAPI简单不带双向绑定写法CompositionAPI简单带双向绑定写法setup简写⽅式脚本单独写到ts⽂件中 Vue3中的数据双向绑定ref

图灵有奖书评征集活动第001期

图灵有奖书评征集活动第001期 为了促进LAMP技术在国内的发展,几年以来,图灵公司出版了一系列优秀的LAMP类著作。在读者朋友的鼓励和支持下,图灵的这一系列图书获得了非常好的口碑。为了感谢广大读者朋友的热情支持,图灵公司特与国内最大的PHP社区PHPChina共同携手,举办一次LAMP图书有奖书评征集活动。此次活动分为两期,每期时间为1个月。 无论您专注于哪个领域,无论您的技术水平如何,相

图灵5月精彩巨献

图灵5月精彩巨献 1.          Linux高级程序设计 2.          Web标准实战 3.          WPF揭秘 4.          EJB 3实战 5.          iBATIS实战 6.          PHP 5范例代码查询辞典 7.          SQL Server 2005范例代码查询辞典 8.

图灵LAMP类图书精彩荟萃

1.    《Linux高级程序设计》 基本信息: 作    者:Jon Masters、Richard Blum 译    者:陈健 更多信息:http://www.china-pub.com/39901 内容简介: 本本书是Linux 程序设计领域内的经典著作,涵盖了各种常用的和最重要的Linux 程序设计的技术和方法。书中蕴含了作者的宝贵经验,提供了大量的最佳实践。无论你是有开发经