计算机文化基础系列常识-图灵奖获奖者介绍连载(十四)
历届图灵奖获奖者

阿迪·萨莫尔(Adi Shamir),2002年图灵奖获得者、以色列魏兹 曼科学研究所教授、美国外籍科学院院士、现代密码学奠基人之一。
Adi Shamir早年在以色列魏茨曼科学研究所获得硕士、博士学位, 1977至1980年在美国麻省理工学院学习后返回以色列,发表了许多文章, 获得了多项奖励,如美国计算机学院 Kannelakis奖、以色列数学协会 Erdos奖、IEEE W.r奖、UAP科学奖、梵蒂冈PUIS XI金奖以及 IEEE Koji Kobayashi计算机与通信奖等等。
大卫·帕特森(David Patterson),1947年11月16日出生于美国伊 利诺伊州,2017年图灵奖得主,美国国家科学院院士,美国国家工程院院 士,美国艺术与科学院院士,ACM Fellow,IEEE Fellow,美国科学促进 会会士。
大卫·帕特森于1969年获得加州大学洛杉矶分校数学专业学士学位; 1970年获得加州大学洛杉矶分校计算机科学专业硕士学位;1976年获得加 州大学洛杉矶分校计算机科学专业博士学位;1977年受聘为加州大学伯克 利分校助理教授;1990年当选为IEEE Fellow;1993年当选为美国国家工 程院院士;1994年当选为ACM Fellow;2006年当选为美国国家科学院院 士和美国艺术与科学院院士;2007年当选为美国科学促进会会士;2016年 受聘为谷歌杰出工程师;2017年获得ACM图灵奖。
图灵奖获得者

历届图灵奖获得者名单1966 A. J. Perlis --- PhD, MIT; Prof, Yale (was Prof at CMU) (deceased) 因在新一代编程技术和编译架构方面的贡献而获奖.1967 Maurice V. Wilkes --- PhD, Cambridge; Prof, Cambridge因设计出第一台程序实现完全内存的计算机而获奖.1968 Richard W. Hamming --- PhD, UIUC; Prof, Naval Postgraduate School(was at Bell) (deceased)因在计数方法、自动编码系统、检测及纠正错码方面的贡献被授予图灵奖. 1969 Marvin Minsky --- PhD, Princeton, Prof, MIT因对人工智能的贡献被授予图灵奖.1970 J.H. Wilkinson --- BS, Cambridge; staff, National Physical Laboratory, London 因在利用数值分析方法来促进高速数字计算机的应用方面的研究而获奖. 1971 John McCarthy --- PhD, Princeton; Prof, Stanford因对人工智能的贡献被授予图灵奖.1972 Edsger W. Dijkstra --- PhD, U Amsterdam; Prof, UT Austin因在编程语言方面的出众表现而获奖.1973 Charles W. Bachman --- staff, Honeywell因在数据库方面的杰出贡献而获奖.1974 Donald E. Knuth --- PhD, Caltech; Prof, Stanford因设计和完成TEX(一种创新的具有很高排版质量的文档制作工具)而被授予该奖.1975 Allen Newell --- PhD, Stanford; Prof, CMU (deceased)and Herbert A. Simon --- PhD, Chicago; Prof, CMU (deceased) 因在人工智能、人类识别心理和表处理的基础研究而获奖.1976 Michael O. Rabin --- PhD, Princeton; Prof, Harvardand Dana S. Scott --- PhD, Princeton; Prof, CMU因他们的论文"有限自动机与它们的决策问题"中所提出的非决定性机器这一很有价值的概念而获奖.1977 John Backus --- BS, Columbia; staff, IBM因对可用的高级编程系统设计有深远和重大的影响而获奖.1978 Robert W. Floyd --- BS, Chicago; Prof, Stanford因其在软件编程的算法方面的影响,并开创了包括剖析理论、编程语言的语义、自动程序检验、自动程序合成和算法分析在内的多项计算机子学科而被授予该奖.1979 Kenneth E. Iverson因对程序设计语言理论、互动式系统及APL的贡献被授予该奖.1980 C. Anthony R. Hoare --- Prof, Oxford(now at Microsoft)因对程序设计语言的定义和设计所做的贡献而获奖.1981 Edgar F. Codd --- PhD, Michigan; staff, IBM因在数椐库管理系统的理论和实践方面的贡献而获奖.1981年在美国工作的Edmund Clarke和Allen Emerson以及在法国的Sifakis 分别提出了模型检测(Model Checking)的最初概念,并且他们开发了一套用于判断硬件和软件设计的理论模型是否满足规范的方法,此外,当系统检测失败时,还能利用它确定代码中问题存在的位置。
图灵奖简介

SQL语言的出现是现代数据 库发展中的里程碑事件。如 今SQL已经深入世界上千百 万用户的日常使用中,带来 了巨大的技术进步和市场价 值。它风靡于整个IT业。
2002年 10月 18日 2002 年 10 月 18 日 , 由微软亚洲研究院和国家自 然科学基金委员会联合举办的第四届“ 然科学基金委员会联合举办的第四届 “ 二十一 世纪的计算” 世纪的计算 ” 大型国际学术研讨会在北京大学 百年纪念堂举行。 本次大会主题为“ 百年纪念堂举行 。 本次大会主题为 “ 高信度计 三位“ 图灵奖” 获得者、 算 ” 。 三位 “ 图灵奖 ” 获得者 、 国际知名计算 机专家及微软高级技术官员在大会上做了主题 报告, 报告 , 并与来自北京地区主要科研院校的两千 三百多名研究人员和计算机系师生就计算科学 的未来进行了深入交流和探讨。 的未来进行了深入交流和探讨 。 参加本次大会 的三位“ 图灵奖” 获得者有: Gray博士 博士、 的三位 “ 图灵奖 ” 获得者有 : Jim Gray 博士 、 姚期智( Yao)博士和 博士和Manuel Blum博士 博士。 姚期智 ( Andrew Yao) 博士和 Manuel Blum 博士 。 姚期智博士是全球获此殊荣的首位华裔科学家。 姚期智博士是全球获此殊荣的首位华裔科学家 。
关系elation是数学中的一个基本概念由集合中的任意元素所组成的若干有序偶对orderedpair表示用以反映客观事物间所存在的一定关系如数之间的大小关系一个组织中的成员之间的领导被领导关系商品流通中的购销关系产品零部件之间的装配关系等等
图灵奖简介
“图灵奖”最早设立于1966年, 是美国计算机协会在计算机技 术方面所授予的最高奖项,被 誉为“计算机界的诺贝尔奖”, 主要授予那些在计算机技术领 域做出突出贡献、对计算机产 业发展有长远和重要影响的个 人。迄今为止(2003)已有36位 科学家获此殊荣。
图灵奖

图灵奖(A.M. Turing Award,又译“杜林奖”),由美国计算机协会(ACM)于1966年设立,又叫“A.M. 图灵奖”,专门奖励那些对计算机事业作出重要贡献的个人。
其名称取自计算机科学的先驱、英国科学家阿兰·麦席森·图灵。
由于图灵奖对获奖条件要求极高,评奖程序又是极严,一般每年只奖励一名计算机科学家,只有极少数年度有两名合作者或在同一方向作出贡献的科学家共享此奖。
因此它是计算机界最负盛名、最崇高的一个奖项,有“计算机界的诺贝尔奖”之称。
目前图灵奖由英特尔公司以及Google公司赞助,奖金为250,000美元。
第一个:艾伦·佩利(Alan J.Perlis),(1922-1990)毕业于麻省理工学院,博士。
ALCOL语言和计算机科学的“催生者”,由于在ALGOL语言的定义和扩充上所作出的重大贡献,以及在创始计算机科学教育,使计算机科学成为一门独立的学科上所发挥的巨大作用而成为首届图灵奖当之无愧的获得者。
佩利1973年当选为美国艺术和科学院院士,1976年当选为美国工程院院士。
除了获得图灵奖外,他还在1984年获得AFIPS的教育奖,曾被普渡大学、滑铁卢大学等多所大学授予名誉博士学位。
1966年成为首届图灵奖的获得者,其图灵奖演讲稿为:“The Synthesis of Algorithmic Systems”(算法系统的合成)。
第二个:莫里斯·文森特·威尔克斯爵士,FREng,FRS(Sir Maurice Vincent Wilkes,1913年6月23日-),英国计算机科学家。
设计和制造了世界上第一台存储程序式电子计算机EDSAC,在“工程和软件等计算机领域都有许多开创性成果”。
1956年,他当选为皇家学会院士;英国计算机学会的创始人之一,并担任第一任主席(1957年-1960年);1977年和1980年先后当选为美国工程院和美国科学院外籍院士;是国际信息处理联盟(IFIP)的主要发起人之一。
关于图灵奖

计算机的发展史10509411吴小萌软件学院从1966年颁发图灵奖至今,已有近40个年头,共计有40多名科学家获此殊荣,其中美国学者最多,此外还有英国、瑞士、荷兰、以色列、挪威等国少数学者,也包含一名美籍华人。
图灵奖颁发的历史,实际上是计算机科学技术发展史的缩影。
所以,我从这个特殊的角度来简述计算机的发展史。
阿兰〃麦席森〃图灵,6月23日生于英国伦敦。
是英国著名的数学家和逻辑学家,被称为计算机科学之父、人工智能之父,是计算机逻辑的奠基者,提出了“图灵机”和“图灵测试”等重要概念。
图灵去世后的12年,即1966年,美国的计算机协会ACM (Association for Computing Machinery) 确定设立图灵奖。
图灵奖对获奖条件要求极高,评奖程序极严,一般每年只奖励一名计算机科学家,只有极少数年度有两名合作者或在同一方向作出贡献的科学家共享此荣。
它是计算机界最负盛名、最崇高的一个奖项,有“计算机界的诺贝尔奖”之称。
若干图灵奖获得者(1966--2001)的重大贡献1.世界上第一台存储程序式计算机EDSAC的研制者1967年(第二届)的图灵奖授予了英国皇家科学院院士、计算技术的先驱莫里斯〃威尔克斯(Maurice Vincent Wilkes),以表彰他在设计与制造世界上第一台存储程序式计算机EDSAC以及其他许多方面的杰出贡献。
威尔克斯1913年生于英国中西部的达德利,距著名的工业重镇伯明翰仅20公里。
威尔克斯在中学时代,对数学、物理和无线电非常爱好。
1931年他进入剑桥的圣约翰学院,1934年以优秀成绩毕业。
之后他进入剑桥著名的卡文迪什实验室工作。
这个实验室有“诺贝尔奖的摇篮”的美称。
威尔克斯在这里完成了“关于甚长无线电波在电离层中的传播特性”的研究,并以此为题完成了博士论文,于1938年10月取得剑桥大学博士学位,而他的硕士学位是在当年年初才获得的。
威尔克斯博士毕业后,战争阴云已布满欧洲上空。
917469-大学计算机基础-图灵奖获得者

1.图灵奖简介图灵奖最早设立于1966年,是美国计算机协会在计算机技术方面所授予的最高奖项,被喻为计算机界的诺贝尔奖。
它是以英国数学天才Alan Turing先生的名字命名的,Alan Turing先生对早期计算的理论和实践做出了突出的贡献。
图灵奖主要授予在计算机技术领域做出突出贡献的个人。
而这些贡献必须对计算机业有长远而重要的影响。
迄今为止已有34位在计算机领域做出突出贡献的科学家获此殊荣。
1966年,A.J.Perlis因其在新一代编程技术和编译架构方面的贡献成为图灵奖的第一个得主。
每年,美国计算机协会将要求提名人推荐本年度的图灵奖候选人,并附加一份200到500字的文章,说明被提名者为什么应获此奖。
任何人都可成为提名人。
美国计算机协会将组成评选委员会对被提名者进行严格的审核,并最终确定当年的获奖者。
2.历届图灵奖获得者1.1966年图灵奖获得者:艾伦•佩利(A.J.Perlis)PhD,MIT;Prof,Yale(was Prof at CMU)(deceased)——ALCOL语言和计算机科学的“催生者”2.1967年图灵奖获得者:莫里斯•威尔克斯(Maurice V.Wilkes)PhD,Cambridge;Prof,Cambridge——世界上第一台存储程序式计算机EDSAC的研制者3.1968年图灵奖获得者:理查德•哈明(Richard W.Hammin)Prof,Naval Postgraduate School(was at Bell)(deceased)——发明纠错码的大数学家和信息学专家4.1969年图灵奖获得者:马文•明斯基(Marvin Minsky)PhD,Princeton,Prof,MIT——“人工智能之父”和框架理论的创立者5.1970年图灵奖获得者:詹姆斯•威尔金森(J.H.Wilkinson)BS,Cambridge;staff,National Physical Laboratory,London——数值分析专家和研制ACE计算机的功臣6.1971年图灵奖获得者:约翰•麦卡锡(John McCarthy)PhD,Princeton;Prof,Stanford——“人工智能之父”和LISP语言的发明人7.1972年图灵奖获得者:埃德斯加•狄克斯特拉(Edsger W.Dijkstra)PhD,U Amsterdam;Prof,UT Austin——最先察觉“goto有害”的计算机科学大师8.1973年图灵奖获得者:查尔斯•巴赫曼(Charles W.Bachman)staff,Honeywell——“网状数据库之父”9.1974年图灵奖获得者:唐纳德•克努(Donald E.Knuth)PhD,Caltech;Prof,Stanford——经典巨著《计算机程序设计的艺术》的年轻作者10.1975年图灵奖获得者:赫伯特•西蒙和艾伦•纽厄尔Allen Newell---PhD,Stanford;Prof,CMU(deceased)Herbert A.Simon---PhD,Chicago;Prof,CMU(deceased)——人工智能符号主义学派的创始人11.1976年图灵奖获得者:米凯尔•拉宾和达纳•斯科特Michael O.Rabin---PhD,Princeton;Prof,HarvardDana S.Scott---PhD,Princeton;Prof,CMU——非确定性有限状态自动机理论的开创者12.1977年图灵奖获得者:约翰•巴克斯(John Backus)BS,Columbia;staff,IBM——FORTRAN和BNF的发明者13.1978年图灵奖获得者:罗伯特•弗洛伊德(Robert W.Floyd)BS,Chicago;Prof,Stanford——前后断言法的创始人14.1979年图灵奖获得者:肯尼思•艾弗森(Kenneth E.Iverson)——大器晚成的科学家,APL的发明人15.1980年图灵奖获得者:查尔斯•霍尔(C.Anthony R.Hoare)Prof,Oxford(now at Microsoft)——从QUICKSORT、CASE到程序设计语言的公理化16.1981年图灵奖获得者:埃德加•科德(Edgar F.Codd)PhD,Michigan;staff,IBM——“关系数据库之父”17.1982年图灵奖获得者:斯蒂芬•库克(Steven A.Cook)PhD,Harvard;Prof,U Toronto——NP完全性理论的奠基人18.1983年图灵奖获得者:肯尼思•汤普森和丹尼斯•里奇Ken Thompson---MS,Berkeley;staff,Bell-LabsDennis M.Ritchie---PhD,Harvard;staff,Bell-Labs——C和UNIX的发明者19.1984年图灵奖获得者:尼克劳斯•沃思(Niklaus Wirth)PhD,Berkeley;Prof,ETH Zurich——PASCAL之父及结构化程序设计的首创者20.1985年图灵奖获得者:理查德•卡普(Richard M.Karp)PhD,Harvard;Prof,Berkeley——发明“分枝限界法”的三栖学者21.1986年图灵奖获得者:约翰•霍普克洛夫特和罗伯特•陶尔扬John E.Hopcroft---PhD,Stanford;Prof,CornellRobert E.Tarjan---PhD,Stanford;Prof,Princeton——硕果累累的算法设计大师22.1987年图灵奖获得者:约翰•科克(John Cocke)staff,IBM——RISC概念的首创者23.1988年图灵奖获得者:伊万•萨瑟兰(Ivan E.Sutherland)IPhD,MIT;staff,Sun——计算机图形学之父24.1989年图灵奖获得者:威廉•卡亨(William V.Kahan)PhD,U Toronto;Prof,Berkeley——浮点计算的先驱25.1991年图灵奖获得者:罗宾•米尔纳(Robin Milner)Prof,Cambridge(was at U Edinburgh)PhD,MIT;Prof,MIT——标准元语言ML的开发者26.1992年图灵奖获得者:巴特勒•兰普森(Butler Lampson)PhD,Berkeley;staff,Microsoft——从Alto系统的首席科学家到微软的首席技术官27.1993年图灵奖获得者:尤里斯•哈特马尼斯和理查德•斯特恩斯PhD,Caltech;Prof,CornellRichard E.Stearns---PhD,Princeton;Prof,SUNY Albany——计算复杂性理论的主要奠基人28.1994年图灵奖获得者:爱德华•费根鲍姆和劳伊•雷迪Raj Reddy---PhD,Stanford;Prof,CMUEdward Feigenbaum(PhD,CMU;Prof,Stanford)——大型人工智能系统的开拓者29.1995年图灵奖获得者:曼纽尔•布卢姆(Manuel Blum)PhD,MIT;Prof,Berkeley——计算复杂性理论的主要奠基人之一30.1996年图灵奖获得者:阿米尔•伯努利(Amir Pnueli)PhD,Weizmann Institute;Prof,NYU——把时态逻辑引入计算机科学31.1997年图灵奖获得者:道格拉斯•恩格尔巴特(Douglas Engelbart)PhD,Berkeley;staff,SRI——鼠标器的发明人和超文本研究的先驱32.1998年图灵奖获得者:詹姆斯•格雷(James Gray)PhD,Berkeley;staff,Microsoft——数据库技术和“事务处理”专家33.1999年图灵奖获得者:弗雷德里克•布鲁克斯(Frederick P.Brooks,Jr.)PhD,Harvard;Prof,UNC——IBM360系列计算机的总设计师和总指挥34.2000年图灵奖获得者:姚期智(Andrew Chi-Chih Yao)PhD,UIUC;Prof,Princeton(now at清华)——对计算理论做出了诸多“根本性的、意义重大的”贡献图灵奖自创立以来获得该奖项的首位华裔学者35.2001年图灵奖获得者:Ole-Johan DahlKristen Nygaard---Profs,U Oslo——在设计编程语言SIMULA I和SIMULA67时产生的基础性想法是面向对象技术的肇始。
图灵奖

图灵奖简介图灵奖(A.M. Turing Award,又译“杜林奖”),由美国计算机协会(ACM)于1966年设立,又叫“A.M. 图灵奖”,专门奖励那些对计算机事业作出重要贡献的个人。
其名称取自计算机科学的先驱、英国科学家阿兰·麦席森·图灵。
由于图灵奖对获奖条件要求极高,评奖程序又是极严,一般每年只奖励一名计算机科学家,只有极少数年度有两名合作者或在同一方向作出贡献的科学家共享此奖。
因此它是计算机界最负盛名、最崇高的一个奖项,有“计算机界的诺贝尔奖”之称。
每年,美国计算机协会将要求提名人推荐本年度的图灵奖候选人,并附加一份200到500字的文章,说明被提名者为什么应获此奖。
任何人都可成为提名人。
美国计算机协会将组成评选委员会对被提名者进行严格的评审,并最终确定当年的获奖者图灵奖对获奖者的要求极高,评奖程序极严,一般每年只奖励一名计算机科学家,只有极少数年度有两名在同一方向上做出贡献的科学家同时获奖。
因此,尽管“图灵”的奖金数额不算高,但它却是计算机诺贝尔奖”之称。
美国计算机协会1966年图灵奖获得者美国科学家艾伦·佩利(Alan J.Perlis):ALGOL语言和计算机科学的“催生者”。
获奖演说“算法系统的综合”(The Sy nthesis of AlgorithmicSy stem)。
1967年图灵奖获得者英国科学家莫里斯·威尔克斯(Maurice V.Wilkes):世界上第一台存储程序式计算机EDSAC的研制者。
获奖演说“计算机的过去和现在”(ComputerThen and Now)。
1968年图灵奖获得者美国科学家理查德·汉明(RichardW.Hamming):发明了纠错码——汉明码(HammingCode)。
获奖演说“对计算机科学的看法”(On Man‟s View of ComputerScience)。
1969年图灵奖获得者美国科学家马文·明斯基(Marv in L.Minsky):“人工智能之父”,知识的框架理论(Frame Theory)创立者。
三位在数据库领域作出杰出贡献的图灵奖获得者简介

三位在数据库领域作出杰出贡献的图灵奖获得者简介2010-12-08 17:25图灵奖最早设立于1966年,是美国计算机协会在计算机技术方面所授予的最高奖项,被喻为计算机界的诺贝尔奖。
它是以英国数学天才Alan Turing先生的名字命名的,Alan Turing先生对早期计算的理论和实践做出了突出的贡献。
图灵奖主要授予在计算机技术领域做出突出贡献的个人。
而这些贡献必须对计算机技术有长远而重要的影响。
每年,美国计算机协会将要求提名人推荐本年度的图灵奖候选人,并附加一份200到500字的文章,说明被提名者为什么应获此奖。
任何人都可成为提名人。
美国计算机协会将组成评选委员会对被提名者进行严格的审核,并最终确定当年的获奖者。
迄今为止已有3位在数据库领域做出突出贡献的科学家获此殊荣。
查尔斯·巴赫曼20世纪60年代中期以来,数据库技术的形成、发展和日趋成熟,使计算机数据处理技术跃上了一个新台阶,并且极大的推动了计算机的普及与应用。
因此,1973年的图灵奖首次授予在这方面作出杰出贡献的数据库先驱查尔斯·巴赫曼(Charles W.Bachman)。
巴赫曼1924年12月11日生于堪萨斯州的曼哈顿。
1948年在密歇根州立大学取得工学学士学位,1950年在宾夕法尼亚大学取得硕士学位。
20世纪50年代在Dow 化工公司工作,1961-1970年在通用电气公司任程序设计部门经理,1970-1981年在Honeywell公司任总工程师,同时兼任Culllinet软件公司的副总裁和产品经理。
1983年巴赫曼创办了自己的公司Bachman Information System,Inc.。
巴赫曼在数据库方面的主要贡献有两项,第一就是在通用电气公司任程序设计部门经理期间,主持设计与开发了最早的网状数据库管理系统IDS。
IDS于1964年推出以后,成为最受欢迎的数据库产品之一,而且它的设计思想和实现技术被后来的许多数据库产品所仿效。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计算机文化基础系列常识-图灵奖获奖者介绍连载(十四)
罗伯特·弗洛伊德
——前后断言法的创始人历届图灵奖得主基本上都有高学历、高学位,绝大多数有博士头衔。
这是可以理解的,因为创新型人才需要有很好的文化素养,丰富的知识底蕴,因而必须接受良好的教育。
但事情总有例外,1978年图灵奖获得者、斯坦福大学计算机科学系教授罗伯特·弗洛伊德(Robert W.Floyd)就是一位“自学成才的计算机科学家”(a Self-Taught Computer Scientist)。
弗洛伊德1936年6月8日生于纽约。
说他“自学成才”并不是说他没有接受过高等教育,他是芝加哥大学的毕业生,但学的不是数学或电气工程等与计算机密切相关的专业,而是文学,
1953年获得文学士学位。
20世纪50年代初期美国经济不太景气,找工作比较困难,因学习文学而没有任何专门技能的弗洛伊德在就业上遇到很大麻烦,无奈之中到西屋电气公司当了二名计算机操作员,在IBM650机房值夜班。
我们知道,早期的计算机都是以批处理方式工作的,计算机操作员的任务就是把程序员编写好的程序在卡片穿孔机(这是脱机的辅助外部设备)上穿成卡片,然后把卡片叠放在读卡机上输入计算机,以便运行程序。
因此,操作员的工作比较简单,同打字员类似,不需要懂计算机,也不需要懂程序设计。
但弗洛伊德毕竟是一个受过高等教育的人,又是一个有心人,干了一段操作员,很快对计算机产生了兴趣,决心弄懂它,掌握它,于是他借了有关书籍资料在值班空闲时间刻苦学习钻研,有问题就虚心向程序员请教。
白天不值班,他又回母校去听讲有关课程。
这样,他不但在1958年又获得了理科学士学位,而且逐渐从计算机的门外汉变成计算机的行家里手。
1956年他离开西屋电气公司,到芝加哥的装甲研究基金会(Armour Research Foundation),开始还是当操作员,后来就当了程序员。
1962年他被马萨诸塞州的Computer Associates公司聘为分析员。
1965年他应聘成为卡内基—梅隆大学的副教授,3年后转至斯坦福大学,1970年被聘任为教授。
之所以能这样快地步步高升,关键就在于弗洛伊德通过勤奋学习和深入研究,在计算机科学的诸多领域:算法,程序设计语言的逻辑和语义,自动程序综合,自动程序验证,编译器的理论和实现等方面都作出创造性的贡献。
其中包括:1962年,弗洛伊德完成了Algol 60编译器的开发,成功投入使用,这是世界上最早的Algol 60编译器之一,而且弗洛伊德在这个编译器的开发中率先融入了优化的思想,使编译所生成的目标代码占用空间少,运行时间短。
弗洛伊德优化编译的思想对编译器技术的发展产生了深刻的影响。
随后,他又对语法分析进行了系统研究,大家现在熟知的优先文法(precedence grammar),限界上下文文法(bounded context grammar)等都是弗洛伊德在这个时期首先提出来的。
优先文法解决了自底向上的语法分析中的首要任务:如何找到“句柄”,也就是当前需要进行归约的符号串。
弗洛伊德通过对不同的符号定义不同的优先级,解决了这个问题。
限界上下文文法则通过对上下文无关文法G中的两个推导:
*
S→βArβαγ
+
S→δαε
进行比较以确定α是否是δαε的句柄,以及产生方式A→α是否是唯一可进行归约的产生式。
弗洛伊德经过研究,给出其充分必要条件为:β和δ的最后m个符号相同,丁和o/的最初n个终结符相同。
这样一个上下文无关文法G就称为(m,n)限界上下文文法。
在算法方面,弗洛伊德和威廉姆斯(J.Williams)在1964年共同发明了著名的堆排序算法HEAPSORT,这是与英国学者霍尔(C.A.R.Hoare,1980年图灵奖获得者)发明的QUICKSORT齐名的高效排序算法之一。
此外还有直接以弗洛伊德命名的求最短路的算法,这是弗洛伊德利用动态规划(dynamic programming)的原理设计的一个高效算法。
在程序设计方面,计算机科学家非常关心的一个重要问题是如何表达和描述程序的逻辑,如何验证程序的正确性。
1967年,在美国数学会AMS举行的应用数学讨论会上,弗洛伊德发表了那篇引起轰动并产生了深远影响的论文,即“如何确定程序的意义”(Assigning Meanings to Programs)。
这篇论文在程序逻辑研究的历史上,是继麦卡锡(J.McCarthy,1971年图灵奖获得者)在1963年提出用递归函数作为程序的模型这一方法以后最重大的一个进展。
麦卡锡倡导的方法对于一般程序,包括大型软件确实是行之有效的,但它有一个不足,即对于许多以命令方式编写的软件,其中包括赋值语句,条件语句,用While实现循环的语句……对这样的程序用递归定义的函数去证明其正确性就很不方便了。
正是为了解决这个问题,弗洛伊德在上述论文中提出了一种基于流程图的表达程序逻辑的方法。
这个方法的主要特点就是在流程图的每一弧线上放置一个“标记”(tag),也就是一个逻辑断言,并且保证只要当控制经过这个弧线时该断言一定成立。
弗洛伊德的主要贡献在于解决了基于这种标记的形式系统的细节,证明了这种系统的完备性,解决了如何证明程序终结的问题。
弗洛伊德还引入了验证条件的概念,包括流程图的一个组成部分(方框、圆框等)及其人口和出口处的标记。
为了证明带标记的流程图的正确性,只要证明其中每一组成部分的验证条件成立就行了。
弗洛伊德提出的方法被叫做“归纳断言法”(inductive assertion method),或前后断言法(pre·and post-assertion method)。
在框图每个断点i上所加的逻辑断言即标记就叫i点的归纳断言,说明程序执行经过此点时在各输入变量x和各程序变量丁之间应存在的关系,以谓词Pi(x,y)的形式表示。
若程序从断点i经过路段。
到下一断点j的验证条件以Ra(x,y)表示,丁的值在。
上的变化以ha(x,y)表示,则只要能证明下式恒真:(∨x)(∨y)[p i(x,y)∧R a(x,y) P j(x,h a(x,y))]
程序从i到j的部分正确性也就证明了。
虽然用归纳断言法不能证明程序的完全正确性,因为它必须以程序能够终结为前提,但由于弗洛伊德在论文中同时也考虑了如何证明程序终结的问题,因此弗洛伊德的归纳断言法也就有了普遍的意义。
弗洛伊德在同年发表于《ACM学报》(Journal of ACM)10月号上的另一篇论文中,还第一次把“不确定性”概念引入程序。
所谓“不确定性程序”(non deterministic program)就是根据操作规则有多种操作可供选择,而只选其中之一搜索下去的程序。
这对人工智能问题的研究具有十分重要的意义。
此外,弗洛伊德还和伊万斯(R.0.Evans,因设计世界上第一个类比推理程序Analogy而闻名于世的学者。
Analogy是可以判定几何图形是否类似的人工智能程序)一起设计了一种称为产生式语言的特殊的程序设计语言FPL(Floyd-Evans Production Language),用来编写计算机语言的语法分析程序。
之所以称它为产生式语言,是因为用它编写的程序由一系列产生式(或称归约式)组成。
实际上,用FPL编好语法分析程序以后,如果再插入语义子程序,就可以构成一个完整的编译器。
用FPL语言编写的程序简称PP程序,由以下5个部分按自左至右顺序组成:1.标号(可有可无);
2.栈顶符号串;
3.前看符号串(或称窗口符号串);
4.归约符号;
5.语义动作。
执行一个PP程序的方法是:依次检视各PP的第三部分。
若某PP的第三部分和输入的前看符号串一致,则进一步检视此PP的第四部分,若非空,表示要进行归约,此时把它的第二部分和当前实际的栈顶符号串相比。
如果能匹配上,则实行归约,即删去实际的栈顶符号串,用第四部分代替之,然后执行第五部分的动作。
若此PP的第四部分为空,表示当前无归约可做,直接执行第五部分的动作即可。
弗洛伊德是1978年12月4日在华盛顿举行的ACM年会上接受图灵奖的。
他发表了题为“程序设计的风范”(The Paradigms of Programming)的演说。
演说全文刊于Communications of ACM,1979年8月,455-460页,也可见《前20年的ACM图灵奖演说集》(ACM Turing Award Lectures ——The First 20Years:1966—1985,ACM Pr.),131—142页。
弗洛伊德在演说中对结构化程序设计,递归协同例程(recursive coroutine),动态程序设计,基于规则的系统,状态变换机制(state-transition mechanism)等各种不同程序设计风范进行了比较,并介绍了自己在研究
工作中如何根据具体情况应用不同风范的例子,很给人以启示。
时间虽然已过去20多年,他的例子也许有些过时,但他的观点至今仍然是有效的。