引言
如果,一台为了微分方程数值解而设计的机器与百货商店里的一台用来开账单的机器的基本逻辑是一致的,那么我将把这看成我所遇到过的最令人惊异的一致。
——霍华德·艾肯,1956年 [1]
现在,让我们回到理论计算机的类比上来……可以证明,我们能够制造出一台那种特殊类型的机器来完成所有这一切工作。事实上,它可以作为任何其他机器的一个模型。这种特殊的机器或可被称为“通用机”。
——阿兰·图灵,1947年 [2]
1945年秋,正当包含了数千根真空管的巨型计算机ENIAC(电子数字积分计算机)在费城的摩尔电子工程学院接近完成之时,一群专家定期会面以对其计划中的继承者EDVAC(电子离散变量自动计算机)进行讨论。时间一周周过去了,会面时的言辞变得愈发激烈起来,专家们也随之分成了两派,即所谓的“工程师”派和“逻辑学家”派。工程师派的领导者约翰·普莱斯伯·埃克特无可厚非地对他在ENIAC上的成就感到骄傲。要让15000根热真空管共同完成任何一项工作,这都被认为是不可能的。然而,通过小心稳妥的设计原理,埃克特出色地完成了任务。不过,一份关于EDVAC的设计报告正在流传,署名者是小组中逻辑学家派的领导者——著名的数学家约翰·冯·诺依曼(这使埃克特颇为恼火),也正是在此时,争论达到了白热化。那份报告毫不在意工程细节,而是提出了今天以冯·诺依曼结构而闻名的逻辑计算机的基本设计。
尽管ENIAC是工程上的极品,但它却是一堆逻辑上的东西。正是冯·诺依曼作为一个逻辑学家的技能——以及他从英国逻辑学家阿兰·图灵那里学到的东西——使他能够理解,计算机实际上是逻辑机器。它的电路体现了几个世纪以来一大批逻辑学家所提出的观点之精华。当前,正当计算机技术以惊人的速度前进时,正当我们羡慕工程师们令人瞩目的成就之时,我们很容易忘记那些逻辑学家,正是他们的思想使得这一切成为可能。本书讲述的就是他们的故事。