Skip to content
Main menu
  • Main page
  • Discover
  • Unexpected connections
  • Topics
  • Random article
  • Search
Your library
  • Saved articles
  • Recent discoveries
  • Rabbit-hole trails
Topic areas
  • Computer Science
  • Mathematics
  • Physics
  • Engineering
  • Biology
  • Economics
  • Curiosities
WikiholeDeeper into Wikipedia
EnglishEN
  • Saved
  • History

  • Article text and media come live from Wikipedia via the official MediaWiki API and are available under the Creative Commons Attribution-ShareAlike 4.0 License; additional terms may apply. Each article links to its source and revision.
  • WikiHole is an independent project and is not affiliated with the Wikimedia Foundation.
  • How ranking works
  • All topics
  • Reading history
  • Random article
  • MediaWiki API

Vaughan Pratt

  • Article
  • Rabbit hole
  • Read
  • View history
Tools
Actions
  • Read
  • View history
General
  • Recent changes
  • Related articles
  • Random discovery
This article
Reading time
4 min
Topic
Computer Science
Quality
Start-class
Views
211 in 14 days
Last edited
6 Nov 2026
Print/export
  • Printable version
In other projects
  • Wikidata item
From Wikipedia, the free encyclopedia
Rabbit hole:
  1. Vaughan Pratt
Vaughan Pratt
Australian computer scientist (born 1944)
BornVaughan Ronald Pratt
(1944-04-12) April 12, 1944
Melbourne, Australia
EducationStanford University (1972)
University of Sydney (1970)
Known forKnuth–Morris–Pratt algorithm
Pratt certificate
Pratt parser
FieldsComputer science
WorkplacesStanford University
MIT
Academic advisorsDonald Knuth
Doctoral students
Parham Aarabi
David Harel
David Magerman
Anna Patterson
Websiteboole.stanford.edu/pratt.html

Vaughan Pratt (born 12 April 1944) is a Professor Emeritus at Stanford University, who was an early pioneer in the field of computer science. Since 1969, Pratt has made several contributions to foundational areas such as search algorithms, sorting algorithms, and primality testing. More recently, his research has focused on formal modeling of concurrent systems and Chu spaces.

Loading the rest of the article…

Recent changes

Rabbit hole

Where Vaughan Pratt leads. Every connection below has a source: a link in this article, a shared Wikipedia category, or CirrusSearch text similarity. Articles already on your trail are left out.

Contents
  • (Top)
  • Career
  • Major contributions
  • References
  • External links
  • Recent changes
  • Rabbit hole
Contents
Contents6 sections
  • (Top)
  • Career
  • Major contributions
  • Tool contributions
  • Other contributions
  • References
  • External links
  • Recent changes
  • Rabbit hole
Categories:
  • 1944 births
  • Living people
  • Australian computer scientists
  • Fellows of the Association for Computing Machinery
  • University of Sydney alumni
  • Stanford University alumni
  • Stanford University Department of Computer Science faculty
  • Massachusetts Institute of Technology faculty
  • Theoretical computer scientists
  • People educated at Knox Grammar School

621 words · 13 references · revision 1384110114 · CC BY-SA 4.0

General
  • Recent changes
  • Related articles
  • Random discovery
This article
Reading time
4 min
Topic
Computer Science
Quality
Start-class
Views
211 in 14 days
Last edited
6 Nov 2026

Key concepts

  • Stanford University2
  • Professor1
  • Search algorithm1
  • Sorting algorithm1
  • Primality testing1
  • Concurrency (computer science)1
  • Chu space1
  • Donald Knuth2
  • Massachusetts Institute of Technology2
  • James H. Morris2

The articles this one links to most, weighted towards the introduction.

Print/export
  • Printable version
In other projects
  • Wikidata item

Career

Raised in Australia and educated at Knox Grammar School, where he was dux in 1961, Pratt attended Sydney University, where he completed his masters thesis in 1970, related to what is now known as natural language processing. He then went to the United States, where he completed a Ph.D. thesis at Stanford University in only 20 months under the supervision of advisor Donald Knuth. His thesis focused on analysis of the Shellsort sorting algorithm and sorting networks.1

Pratt was an assistant professor at MIT (1972 to 1976) and then associate professor (1976 to 1982). In 1974, working in collaboration with Knuth and James H. Morris, Pratt completed and formalized work he had begun in 1970 as a graduate student at Berkeley; the coauthored result was the Knuth–Morris–Pratt pattern matching algorithm. In 1976, he developed the system of dynamic logic, a modal logic of structured behavior.

He went on sabbatical from MIT to Stanford (1980 to 1981), and was appointed a full professor at Stanford in 1981.

Pratt directed the SUN workstation project at Stanford from 1980 to 1982. He contributed in various ways to the founding and early operation of Sun Microsystems, acting in the role of consultant for its first year, then, taking a leave of absence from Stanford for the next two years, becoming director of research, and finally resuming his role as a consultant to Sun and returning to Stanford in 1985.

He also designed the Sun Microsystems logo,2 which features four interleaved copies of the word "sun"; it is an ambigram.

Pratt became professor emeritus at Stanford in 2000.

Major contributions

A number of well-known algorithms bear Pratt's name. Pratt certificates, short proofs of the primality of a number, demonstrated in a practical way that primality can be efficiently verified, placing the primality testing problem in the complexity class NP and providing the first strong evidence that the problem is not co-NP-complete.3 The Knuth–Morris–Pratt algorithm, which Pratt designed in the early 1970s together with fellow Stanford professor Donald Knuth and independently from Morris, is still the most efficient general string searching algorithm known today.4 Along with Blum, Floyd, Rivest, and Tarjan, he described median of medians, the first worst-case optimal selection algorithm.5

Tool contributions

In 1976, Pratt wrote an AI Lab working paper about , an alternative syntax for that he had designed and implemented based on his paradigm for top-down operator precedence parsing. His parser is sometimes called a "" and has been used in later systems, such as . also used it as the underlying parser for . Pratt also implemented a -based text editor named "DOC", which was later renamed to "ZED".

References

  1. 1Vaughan Ronald Pratt: Shellsort and Sorting Networks. Garland Publishing, Inc., New York & London, 1979, ISBN 0-8240-4406-1
  2. 2"Designers: Vaughan Pratt". Logobook. Archived from the original on 9 August 2020. Retrieved 7 August 2021.
  3. 3Vaughan Pratt. Every prime has a succinct certificate. SIAM Journal on Computing, vol.4, pp.214–220. 1975. Citations, Full-text Archived 26 September 2007 at the Wayback Machine (requires paid login)
  4. 4Donald Knuth, James H. Morris, Jr., and Vaughan Pratt. Fast pattern matching in strings. SIAM Journal on Computing, 6(2):323–350. 1977. Citations
  5. 5Blum, M.; Floyd, R. W.; Pratt, V. R.; Rivest, R. L.; Tarjan, R. E. (August 1973). (PDF). . (4): 448–461. :.

External links

  • Vaughan Pratt at the Mathematics Genealogy Project
  • 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.
MIT
CGOL
MACLISP
6
Pratt parser
7
MACSYMA
Douglas Crockford
JSLint
8
TECO
9

In 1999, Pratt built the world's smallest (at the time) web server—it was the size of a matchbox.1011

Other contributions

Pratt was credited in a 1995 Byte magazine article for proposing that the Pentium FDIV bug might have worse consequences than either Intel or IBM was predicting at the time.1213

Today Pratt has a wide influence. In addition to his Stanford professorship, he holds membership in at least seven professional organizations. He is a fellow of the Association for Computing Machinery and is on the editorial board of three major mathematics journals. He was also the founder, chairman, and CTO of TIQIT Computers, Inc. Archived 2 December 2023 at the Wayback Machine for the ten years prior to when it closed its doors in 2010.

"Time bounds for selection"
Journal of Computer and System Sciences
7
doi
10.1016/S0022-0000(73)80033-9
  • 6Pratt, V.R., Top Down Operator Precedence. Proceedings of the ACM Symposium on Principles of Programming Languages. 1973. pp41-51.
  • 7George J. Carrette A simple Pratt-Parser for SIOD. 1990.
  • 8https://github.com/douglascrockford/JSLint/blob/40e3f73127b56f24a12e5cb091a86d9a24130926/fulljslint.js jslint source code line 2224
  • 9Eric Fischer. Emacs and Other Editors. alt.folklore.computers. November 15, 2000.
  • 10BBC News.Surfing on a matchbox. 1999.
  • 11CNN News. Smallest Web server fits in shirt pocket. 1999.
  • 12"How to Bruise an Integer" Archived 2008-10-07 at the Wayback Machine, Byte, March 1995.
  • 13"Chain Reaction in Pentiums", Vaughan Pratt, 1994. In wdv-notes334, 22 Jan, 1995. Article is formatted from a newsgroup posting: Vaughan Pratt (30 December 1994). ""TECHNICAL: Chain reaction in Pentiums (Was: The Flaw: Pentium-Contaminated Data Persists)"". Newsgroup: comp.sys.intel. Usenet: 3e097i$952@Radon.Stanford.EDU. Retrieved 3 June 2006.
  • Created
    12 Mar 2005
    History
    138 edits
    94 contributors
    1 edit in the last 30 days
    Last edited
    6 Nov 2026

    138 revisions in total · 94 contributors · 0 / −1 bytes across 1 edits by 1 contributor in the last 30 days

    1. 6 Nov 2026, 17:14 UTCXanondilkermuse one date format throughout−1diff
    2. 24 Jan 2026, 04:53 UTCJJMC89 bot IIImMerging :Category:1997 fellows of the Association for Computing Machinery to :Category:Fellows of the Association for Computing Machinery per Wikipedia:Categories for discussion/Log/2026 January 2#Category:Fellows of the Association for Computing Machinery by year−5diff
    3. 5 Nov 2025, 14:50 UTCInternetArchiveBotRescuing 1 sources and tagging 0 as dead.) #IABot (v2.0.9.5+107diff
    4. 2 Nov 2025, 04:46 UTCErpremoved Category:Stanford University School of Engineering faculty; added Category:Stanford University Department of Computer Science faculty using HotCat+9diff
    5. 16 Oct 2025, 22:17 UTCCaleb Stanford§ Useful tool building encyclopedic tone−31diff
    6. 15 Sept 2025, 16:40 UTCGreenC botMove 1 url. Wayback Medic 2.5 per WP:URLREQ#bbc.co.uk misc+1diff
    7. 25 Aug 2025, 20:17 UTCOpalYosutebitoAdding local short description: "Australian computer scientist (born 1944)", overriding Wikidata description "Australian computer scientist"+64diff
    8. 27 Jul 2025, 18:20 UTCInternetArchiveBotRescuing 1 sources and tagging 0 as dead.) #IABot (v2.0.9.5+143diff

    View full revision history

    Created
    12 Mar 2005
    History
    138 edits
    94 contributors
    1 edit in the last 30 days
    Last edited
    6 Nov 2026

    Go deeper: linked from this article

    • Linked from the introduction

      Concurrent computing

      Executing several computations during overlapping time periods

      Concurrent computing is a form of computing in which several computations are executed concurrently—during overlapping time periods, instead of sequentially—with one completing before the next starts.

      15 min readGo deeper
    • Linked from the introduction

      Primality test

      Algorithm for determining whether a number is prime

      A primality test is an algorithm for determining whether an input number is prime. Among other fields of mathematics, it is used for cryptography.

      10 min readGo deeper
    • Linked from the introduction

      Sorting algorithm

      Algorithm that arranges lists in order

      In computer science, a sorting algorithm is an algorithm that puts elements of a list into an order.

      25 min readGo deeper
    • Linked from the introduction

      Chu space

      Generalized topological space

      Chu spaces generalize the notion of topological space by dropping the requirements that the set of open sets be closed under union and finite intersection, that the open sets be extensional, and that the membership predicate (of points in open sets) be two-valued.

      3 min readGo deeper
    • Linked from the introduction

      Search algorithm

      Any algorithm which solves the search problem

      In computer science, a search algorithm is an algorithm designed to solve a search problem.

      4 min readGo deeper
    • Linked from the introduction

      Professor

      Academic title at universities and other educational institutions

      Professor (commonly abbreviated as Prof.) is an academic rank at universities and other post-secondary education and research institutions in most countries.

      10 min readGo deeper

    Adjacent: shared categories and similar text

    • Linked in “Career”

      Ambigram

      Symmetrical calligraphic or typographic visual pun

      An ambigram is a calligraphic composition of glyphs (letters, numbers, symbols or other shapes) that can yield different meanings depending on the orientation of observation.

      49 min readGo deeper
    • Linked in “Major contributions”

      Selection algorithm

      Method for finding kth smallest value

      In computer science, a selection algorithm is an algorithm for finding the kth smallest value in a collection of orderable values, such as numbers.

      17 min readGo deeper
    • Linked in “Major contributions”

      Primality certificate

      Proof that a number is prime

      In mathematics and computer science, a primality certificate or primality proof is a succinct, formal proof that a number is prime.

      10 min readGo deeper
    • Linked in “Major contributions”

      Median of medians

      Fast approximate median algorithm

      In computer science, the median of medians is an approximate median selection algorithm, frequently used to supply a good pivot for an exact selection algorithm, most commonly quickselect, that selects the kth smallest element of an initially unsorted array.

      7 min readGo deeper
    • Linked in “Career”

      Modal logic

      Type of formal logic

      Modal logic is a kind of logic used to represent statements about necessity and possibility.

      23 min readGo deeper
    • Linked in “Career”

      Dux

      Roman title

      Dux (pl.: duces) is Latin for "leader" (from the noun dux, ducis, "leader, general") and later for duke and its variant forms (doge, duce, etc.).

      4 min readGo deeper
    • Linked in “Career”

      Massachusetts Institute of Technology

      Private research university in Cambridge, Massachusetts, United States

      The Massachusetts Institute of Technology (MIT) is a private research university in Cambridge, Massachusetts, United States.

      77 min readGo deeper
    • Linked in “Career”

      University of California, Berkeley

      Public university in Berkeley, California

      The University of California, Berkeley (UC Berkeley, Berkeley, Cal, or California) is a public land-grant research university in Berkeley, California, United States.

      67 min readGo deeper