什么是图灵机?

什么是图灵机,为什么人们不断提及它? 我的IBM个人电脑是所有我需要做我的计算! 为什么有人关心这些机器?

图灵机是一个大问题的原因与经典计算机科学或计算理论types的东西的研究。 基本上就是分析计算机的一般属性,比如计算机有什么样的理论能力和局限性,以及当我们谈论“计算”什么的时候的意思。

一个可能使用图灵机研究的例子是停机问题 。 虽然这个问题是一个学术性的问题,但却很容易产生真实世界的影响。 为什么不写一个debugging器,只是告诉你,你的程序是否包含任何无限循环? 停机问题表明,解决这个问题的一般情况是不可能的。

图灵机的研究也适用于研究语言语法及其类,从而导致程序devise语言的发展。 “正则expression式”一词的出现是因为它们是一个正规的语法 ,而对这些语法的研究(计算理论的一部分)会告诉你更多关于正则expression式可以解决哪些问题以及解决哪些问题的方法。 例如,传统的正则expression式语法将无法解决以下问题:在input中parsing一些数字“N”的字符,然后parsing相同数量的N个字符“B”。

如果你对这类东西感兴趣,请看Michael Sipser 的“计算理论导论”(Introduction to the Theory of Computation) 。 这很好。

图灵机是由艾伦·图灵(Alan Turing)发明的一种理论计算机,用作math计算的理想化模型,基本上它是一种简单的计算机forms,由磁带纸带组成, 头部可以读取符号,写一个新的符号,然后左右移动。

图灵机被认为处于一定的状态 ,然后一个程序就是一个转换列表,在头部下面有一个当前状态和一个符号,应该在磁带上写什么,下一个状态是什么,以及在哪里头部应该移动。

这里是一个基本的图灵机 ,用JavaScript实现…

和一个草图:

图灵机http://weblog.fortnow.com/media/turing-machine.jpg

我的IBM个人电脑是所有我需要做我的计算!

别人没有指出的东西:你的IBM PC 一个图灵机。 更确切地说,它就等于它,就像你的电脑可以做的任何事情,图灵机可以做到的,任何图灵机可以做的,你的电脑都可以做到的。

具体而言,图灵机是一种计算模型,它完全捕捉可计算性的概念,同时保持简单的理由,而不需要计算机体系结构的所有具体细节。

(普遍接受的)“Church-Turing论文”断言,每一种计算设备或模型都不比图灵机器强大。 所以很多理论问题(例如像P和NP这样的类,“多项式时间algorithm”的概念等等)都是用图灵机来forms化的,尽pipe它们当然也可以适用于其他模型。 (例如,有时用lambda演算或组合逻辑或其他方式来考虑计算是很方便的,它们彼此之间的权力都是相等的,并且也与IBM PC相同。)

所以你去了:人们谈论图灵机,因为它是一个精确和完整的方式来说什么是“计算机”,而不必描述CPU的架构,其约束等的每个细节。

实际上有图灵机的例子。 具体地说,将RNA翻译成蛋白质的核糖体实现了一个图灵机。

首先,一些背景:

  1. RNA由定义遗传字母表字母的一串核苷酸(“碱基”)组成。
  2. RNA字母表中有4个碱基 – A,C,G,U.
  3. 基地是定向的:按照惯例,这些结束被称为五元和三元(5',3')
  4. RNA串中的碱基可以在“反平行互补对”中吸引另一个RNA串上的碱基,其中A粘在U上,C粘在G上。
  5. 这些碱基以3个为一组形成“密码子”(单词)。
  6. 有64个可能的密码组合(4 ^ 3)。
  7. 每个密码子可以匹配一个“反密码子”。 例如AUG < – > UAC
  8. 有特殊的载体分子(“tRNA”)具有特定的反密码子并与特定的氨基酸(蛋白质)连接。

核糖体的操作很简单:

  1. 转录起始于“起始密码子”,其定义“读框”
  2. 转录总是以5'→3'的方向进行
  3. 阅读框下的密码子与含有特定氨基酸的特定tRNA匹配
  4. 起始密码子总是编码氨基酸甲硫氨酸。
  5. 新的氨基酸附着在生长中的蛋白质上
  6. 然后框架将3个碱基前进到下一个密码子,并且蛋白质不断延伸
  7. 在遇到“终止”密码子时,终止翻译,不连接氨基酸,核糖体从mRNA解离。

正如你所看到的,这是一个非常简单的图灵机,执行最复杂的操作 – 自然本身!

图灵机是理论上的机器,可以用来推理计算机的限制。 简而言之,它是一个无限记忆的想象中的计算机。

我们关心图灵机,因为它们帮助我们发现真正的计算机(如IBM PC)不可能完成的事情。 如果图灵机不可能执行特定的计算(如决定暂停问题 ),那么IBM PC不可能执行相同的计算。

为什么devise飞机的人会关心赖特兄弟,或者让“固定翼”飞机飞起来的科学背后的科学呢?

Alan Turing被誉为现代计算之父。 图灵机是所有现代计算机的先驱。

可计算性理论是我在大学里最难的一门课,但是我很高兴拿到了。 这让我想起了我从未想过的事情,或者以我从未想到的方式来思考事情,那些事情都是好事。

图灵机是一个可以计算的抽象机器。

维基百科:

图灵机是基本的抽象符号操作设备,尽pipe它们很简单,但它可以适用于模拟任何计算机algorithm的逻辑。 他们在1936年由艾伦·图灵(Alan Turing)描述。 图灵机并不是一个实用的计算技术,而是一个关于机械计算极限的思想实验。 因此,他们并没有真正build造。 研究他们的抽象属性,对计算机科学和复杂性理论有很多见解。

能够模拟任何其他图灵机的图灵机被称为通用图灵机(UTM,或简称为通用机器)。 Alonzo教授介绍了一个更具math导向性的定义,它具有类似的“通用”性质,他的lambda演算工作与Turing的交互作用是一个forms化的计算理论,称为Church-Turing论文。 论文指出,图灵机确实捕捉了逻辑和math中有效方法的非正式概念,并为algorithm或“机械过程”提供了精确的定义。

图灵机是一种抽象机器,它可以按照一定的逻辑对一系列数据进行操作,并可以在操作时改变自己的状态以及数据。

这是构成algorithm,stored procedures和一般计算的基础的概念。 它提供了很好的洞察力和抽象,如果你正在处理algorithm,状态,数据等

为了大多数,思考的食物。

除了维基百科条目之外,您可能还想阅读Charles Petzold所着的The Annotated Turing一书。 它的副标题是“通过阿兰·图灵的可计算性和图灵机的历史性论文导览”,它包含了完整的论文,分成了大量有关该主题的话题,包括历史观点。

图灵机等同于一个algorithm。 当它接受一个string时会停止,当它不接受string时拒绝或进入一个无限循环。

磁带作为一个内存,转换规则的作用是“如果其他条件”