沃恩·普拉特
沃恩·普拉特 Vaughan Pratt | |
---|---|
出生 | Vaughan Ronald Pratt 1944年4月12日 澳大利亚墨尔本 |
母校 | 雪梨大学 斯坦福大学 |
知名于 | KMP算法 普拉特证明 普拉特解析器 |
网站 | boole |
科学生涯 | |
研究领域 | 计算机科学 |
机构 | 斯坦福大学 麻省理工学院 |
学术指导者 | 高德纳 |
沃恩·普拉特(英语:Vaughan Pratt,1944年4月12日—)是一名澳大利亚计算机科学家,斯坦福大学名誉教授。自1969年以来,普拉特在搜寻算法、排序算法和质数测试等基础领域做出多项贡献。近期他的研究重点是并行系统和楚空间的形式建模。
职业生涯
[编辑]普拉特在澳大利亚长大,曾就读于诺克斯文法学校。1970年,普拉特进入雪梨大学学习,并在那里完成硕士论文,该论文与现在的自然语言处理有关。随后他前往美国,在指导教授高德纳的指导下,仅用20个月就完成斯坦福大学的博士论文。他的论文重点分析希尔排序算法和排序网络[1]。
普拉特曾任麻省理工学院助理教授(1972年—1976年)和副教授(1976年—1982年)。1974年,普拉特与高德纳和詹姆斯·H·莫里斯合作,完成他1970年在加利福尼亚大学柏克莱分校攻读研究生时开始的工作,并使之正规化;合作成果是KMP算法。1976年,他发展了动态逻辑系统,这是一种结构化行为的模态逻辑。
他从麻省理工学院到斯坦福大学休假(1980年—1981年),并于1981年被任命为斯坦福大学全职教授。
1980年至1982年,普拉特在斯坦福大学指导太阳工作站计划。他以各种方式为太阳微系统公司的成立和早期运营做出贡献,在公司成立的第一年担任顾问,随后两年离开斯坦福大学,担任研究主管,最后于1985年重新担任太阳微系统公司顾问并返回斯坦福大学。
他还设计了太阳微系统公司的徽标[2],徽标上有四个交错的“sun”字样;这是一个双向图。
2000年,普拉特成为斯坦福大学荣誉教授。
主要贡献
[编辑]许多著名的算法都以普拉特的名字命名。普拉特证明是对一个数是否为质数的简短证明,它以一种实用的方式证明质数是可以有效验证的,将质数检定问题归入复杂度类NP,并首次有力地证明该问题并非共NP-完备[3]。1970年代初,普拉特与斯坦福大学教授高德纳共同设计了KMP算法,该算法是詹姆斯·H·莫里斯独立设计的,至今仍是已知最高效的通用字串搜寻算法。[4]。他与曼纽尔·布卢姆、罗伯特·弗洛伊德、罗纳德·李维斯特和罗伯特·塔扬一起描述中位数的中位数,这是第一个最坏情况下的最佳选择算法[5]。
打造实用工具
[编辑]普拉特开发了一些有用的工具。1976年,他撰写一篇关于CGOL的麻省理工学院人工智能实验室工作论文,CGOL是他根据自上而下的运算子优先级解析范式设计并实现的MACLISP的替代语法。[6]。他的解析器有时被称为“普拉特解析器”[7],并被用于后来的系统中,如MACSYMA。道格拉斯·克罗克福特也将其用作JSLint的底层解析器[8]。普拉特也实作了一个基于TECO的文字编辑器,名为“DOC”,后来更名为“ZED”[9]。
1999年,普拉特建立了当时世界上最小的网页服务器——只有火柴盒大小[10][11]。
其他贡献
[编辑]普拉特在1995年《字节》杂志的一篇文章中指出,奔腾浮点除错误造成的后果可能比英特尔或IBM当时预测的还要严重[12][13]。
如今的普拉特影响广泛。除了斯坦福大学的教授职位外,他还是至少七个专业组织的成员。他是美国计算机协会会士,也是三大数学期刊的编委。他也是TIQIT电脑公司 (页面存档备份,存于互联网档案馆)的创始人、董事长兼首席执行官,该公司于2010年关闭。
参考资料
[编辑]- ^ Vaughan Ronald Pratt: Shellsort and Sorting Networks. Garland Publishing, Inc., New York & London, 1979, ISBN 0-8240-4406-1
- ^ Designers: Vaughan Pratt. Logobook. [2021-08-07]. (原始内容存档于2020-08-09) (英语).
- ^ Vaughan Pratt. Every prime has a succinct certificate. SIAM Journal on Computing, vol.4, pp.214–220. 1975. Citations (页面存档备份,存于互联网档案馆), Full-text (页面存档备份,存于互联网档案馆) (requires paid login)
- ^ Donald Knuth, James H. Morris, Jr., and Vaughan Pratt. Fast pattern matching in strings. SIAM Journal on Computing, 6(2):323–350. 1977. Citations (页面存档备份,存于互联网档案馆)
- ^ Blum, M.; Floyd, R. W.; Pratt, V. R.; Rivest, R. L.; Tarjan, R. E. Time bounds for selection (PDF). Journal of Computer and System Sciences. August 1973, 7 (4): 448–461 [2024-02-10]. doi:10.1016/S0022-0000(73)80033-9 . (原始内容存档 (PDF)于2019-03-31).
- ^ Pratt, V.R., Top Down Operator Precedence. Proceedings of the ACM Symposium on Principles of Programming Languages. 1973. pp41-51.
- ^ George J. Carrette A simple Pratt-Parser (页面存档备份,存于互联网档案馆) for SIOD. 1990.
- ^ https://github.com/douglascrockford/JSLint/blob/40e3f73127b56f24a12e5cb091a86d9a24130926/fulljslint.js jslint source code line 2224
- ^ Eric Fischer. Emacs and Other Editors (页面存档备份,存于互联网档案馆). alt.folklore.computers. November 15, 2000.
- ^ BBC News.Surfing on a matchbox (页面存档备份,存于互联网档案馆). 1999.
- ^ CNN News. Smallest Web server fits in shirt pocket (页面存档备份,存于互联网档案馆). 1999.
- ^ "How to Bruise an Integer" 互联网档案馆的存档,存档日期2008-10-07., Byte, March 1995.
- ^ "Chain Reaction in Pentiums" (页面存档备份,存于互联网档案馆), Vaughan Pratt, 1994. In wdv-notes334, 22 Jan, 1995. Article is formatted from a newsgroup posting: Vaughan Pratt. "TECHNICAL: Chain reaction in Pentiums (Was: The Flaw: Pentium-Contaminated Data Persists)". Newsgroup: comp.sys.intel. 1994-12-30 [2006-06-03]. Usenet: 3e097i$952@Radon.Stanford.EDU. (原始内容存档于2012-11-04).
外部链接
[编辑]- 沃恩·普拉特在数学谱系计划的资料。
- Faculty home page at Stanford University (页面存档备份,存于互联网档案馆)
- Abstract page (页面存档备份,存于互联网档案馆), with full-text downloads of many of Pratt's publications.
- Douglas Crockford walks through creating a Pratt parser in JavaScript. (页面存档备份,存于互联网档案馆)