关于“图灵完备”的一些简单科普

九九重阳一到,这一年又过了大半,2018还剩不到100天,你的小计划、大目标完成了多少,英语单词书是不是还停留在“Abandon”这一页。

不要焦虑,因为区块链的饭局才进行到一半、路走到一半、电影还没有进入高潮,这都是最美的时候,就像夏天一样,最茂盛,最热烈,所以,也最值得热爱。

  希望大家一直处在热爱里!

大家都知道SERO是:【全球首个使用零知识证明支持加密图灵完备智能合约分布式平台】

那今天就来跟大家聊聊其中的图灵完备

第一个问题:图灵是谁?

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

关于“图灵完备”的一些简单科普_第1张图片

在计算机的世界中,图灵声名赫赫,是大神级的存在。

他被誉为“计算机之父”。计算机界的最高奖“图灵奖”就以他的名字命名。

1999年《时代》周刊将图灵评为“二十世纪最重要的一百人”之一。因为,今天我们每个人都工作在一台“图灵机”上。

图灵更为传奇的故事发生在第二次世界大战。

他成功破译了纳粹德国复杂严密的密码系统,让希特勒的战争部署赤裸裸暴露在盟军面前。

可以说,他用自己的天才,改变了整个英国、乃至全人类的命运走向。

第二个问题:图灵完备是什么意思?

图灵完备性(Turing Completeness)是针对一套数据操作规则而言的概念。数据操作规则可以以是一门编程语言,也可以是计算机里具体实现了的指令集,当这套规则可以实现图灵模型里的全部功能时,就称它具有图灵完备性。直白一点点说,图灵完备性就是我给你一工具箱的东西,包括无限内存、if/else控制流、while循环。。。那么你现在图灵完备了吗?

第三个问题:图灵完备vs图灵不完备?

图灵完备意味着你的语言可以做到“能够用图灵机能做到的”所有事情,可以解决所有的可计算问题。图灵不完备也不是没有意义, 有些场景我们需要限制语言本身. 如限制循环和递归, 可以保证该语言能写的程序一定是终止的。理解一下,就是说图灵完备的语言,有循环执行语句,判断分支语句等。理论上能解决任何算法。但有可能进入死循环而程序崩溃。图灵不完备,应该是不允许或限制循环。可以保证,每段程序都不会死循环,都有运行完的时候。

第四个问题:什么是图灵完备的“智能合约”?

比特币的脚本系统是图灵不完备的,而一些Token的智能合约系统是图灵完备的。

现实世界的需求是极其庞杂的,为了满足未来将区块链技术应用于更多场景的可能需要,比特币脚本语言是远远不够的。这也是为什么以以太坊为代表的区块链技术,都宣称自己所采用的“智能合约”语言是图灵完备的主要原因。

所以以太坊朝着这个目标在前进,也正是由于这个平台的强大,目前基于以太坊开发的区块链应用越来越多。为什么呢?通过上面的介绍就知道,以太坊的“智能合约”语言是图灵完备的,而图灵完备的编程语言可以实现所有以前一个编程语言在单机上实现的功能,也即能尽最大限度满足现实应用场景的开发。

SERO和以太坊同样实现了图灵完备的智能合约,而不一样的在于SERO在基于以太坊的现有功能上增添了信息隐私保护功能,这一块是目以太坊做不到的。关于SERO是如何做到隐私保护咱们下节课再聊!

从上我们有理由相信,SERO的技术团队为区块链行业打开了另一个风口,那就是支持加密图灵完备智能合约分布式平台。为DAPP开发者创造了一个技术实现的天堂。

(文章内容部分参考网友们的文献)

你可能感兴趣的:(关于“图灵完备”的一些简单科普)