美文网首页
区块链-图灵完备

区块链-图灵完备

作者: 北山学者 | 来源:发表于2018-02-02 16:51 被阅读0次
图灵完备,图灵完全性通常指具有无限存储能力的通用物理机器或编程语言。

图灵完备意味着你的语言可以做到能够用图灵机能做到的所有事情,可以解决所有的可计算问题。
图灵不完备也不是没有意义, 有些场景我们需要限制语言本身. 如限制循环和递归, 可以保证该语言能写的程序一定是终止的。

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

图灵不完备,应该是不允许或限制循环。可以保证,每段程序都不会死循环,都有运行完的时候。

  • 以下是Stackoverflow回答:
    以下是一个简短的解释。
    一个图灵完备系统意味着在这个系统中写程序能够找到解决方法(尽管不保证运行时和内存)。
    因此,如果有人说,我的新东西是图灵完备的,意思是在原则上(尽管不是经常在实践上)它能够用来解决任何计算性的问题。
    有时,它是一个笑话,有人在vi上写了一个图灵模拟器,因此可以说vi是有史以来唯一需要的计算引擎。

  • 以下是维基百科解释:
    可图灵指在可计算性理论中,编程语言或任意其他的逻辑系统如具有等用于通用图灵机的计算能力。换言之,此系统可与通用图灵机互相模拟。这个词源于引入图灵机概念的数学家艾伦·图灵(Alan Turing)。
    虽然图灵机会受到存储能力的物理限制,图灵完全性通常指具有无限存储能力的通用物理机器或编程语言。简单来说,一切可计算的问题都能计算,这样的虚拟机或者编程语言就叫图灵完备的。

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

a、顺便一提,图灵机是我们已知能实现的最强的计算模型。最近媒体经常报道的量子计算机仍然是图灵机,只是特定算法快一些。
b、顺便二提,根据Kleene正规型定理,任意偏递归函数都可以由原始递归函数经过一次极小化得来,所以写程序的时候如果发现两层以上的无限循环要格外小心,很可能逻辑是错的。

参考
1、什么是“图灵完备”?
2、以太坊“图灵完备”是什么意思?
3、什么是图灵完备?

相关文章

网友评论

      本文标题:区块链-图灵完备

      本文链接:https://www.haomeiwen.com/subject/vpeezxtx.html