(。・∀・)ノ゙嗨,欢迎阅读计算机科学速成课!
前几集我们聊了基础,比如函数,算法和数据结构,今天,我们来看一位对计算机理论贡献巨大的人,计算机科学之父,长得不怎么像本尼的阿兰·图灵。阿兰·马蒂森·图灵于1921年出生在伦敦,从小就表现出惊人数学和科学能力,他对计算机科学的建树始于1935年,当时他是剑桥国王学院的硕士生,他开始解决德国数学家大卫·希尔伯特提出的问题,叫Entscheidungsproblem(德语),即"可判定性问题"。
是否存在一种算法,输入正式逻辑语句输出准确的"是"或"否"答案?,如果这样的算法存在,可以回答比如"是否有一个数大于所有数",不没有我们知道答案,但有很多其他数学问题,我们想知道答案。所以如果这种算法存在我们想知道,美国数学家阿隆佐·丘奇于1935年首先提出解决方法,开发了一个叫"Lambda算子"的数学表达系统。证明了这样的算法不存在,虽然"Lambda算子"能表示任何计算,但它使用的数学技巧难以理解和使用,同时在大西洋另一边,阿兰·图灵想出了自己的办法来解决"可判定性问题",提出了一种假想的计算机,现在叫"图灵机"
图灵机提供了简单又强大的数学计算模型,虽然用的数学不一样,但图灵机的计算能力和Lambda算子一样,同时因为图灵机更简单,所以在新兴的计算机领域更受欢迎。因为它如此简单,我现在就给你解释,图灵机是一台理论计算设备,还有一个状态变量,