Vaughan Ronald Pratt (born 1944), a Professor Emeritus at Stanford University, was an early pioneer in the field of computer science. Publishing 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. A pattern of applying models from diverse areas of mathematics such as geometry, linear algebra, abstract algebra, and especially mathematical logic to computer science pervades his work.
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.
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 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.
Pratt became professor emeritus at Stanford in 2000.
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. 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. Along with Blum, Floyd, Rivest, and Tarjan, he described median of medians, the first worst-case optimal selection algorithm.
Pratt built some useful tools. In 1976, he wrote an MIT AI Lab working paper about CGOL, an alternative syntax for MACLISP that he had designed and implemented based on his paradigm for top down operator precedence parsing. His parser is sometimes called a "Pratt parser" and has been used in later systems, such as MACSYMA. Douglas Crockford also used it as the underlying parser for JSLint. Pratt also implemented a TECO-based text editor named "DOC", which was later renamed to "ZED".
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 with the Association for Computing Machinery and is on the Editorial Board of three major mathematics journals. He is also the Chairman and CTO of TIQIT Computers, Inc..