Donald Knuth

Donald Knuth

Donald Knuth at a reception for the Open Content Alliance, October 25, 2005
Born Donald Ervin Knuth
(1938-01-10) January 10, 1938
Milwaukee, Wisconsin, US
Other names 高德纳[1][2][3]
Nationality American
Fields Mathematics
Computer science
Institutions Stanford University
Alma mater Case Institute of Technology (B.S.; M.S., 1960)
California Institute of Technology (PhD, 1963)
Thesis Finite Semifields and Projective Planes (1963)
Doctoral advisor Marshall Hall, Jr.[4]
Doctoral students
Known for The Art of Computer Programming
TeX, METAFONT
Knuth–Morris–Pratt algorithm
Knuth–Bendix completion algorithm
MMIX
Robinson–Schensted–Knuth correspondence
Notable awards
Website
cs.stanford.edu/~uno

Donald Ervin Knuth (/kəˈnθ/[3] kə-NOOTH; born January 10, 1938) is an American computer scientist, mathematician, and professor emeritus at Stanford University.[7]

He is the author of the multi-volume work The Art of Computer Programming.[8] Knuth has been called the "father of the analysis of algorithms".[9] He contributed to the development of the rigorous analysis of the computational complexity of algorithms and systematized formal mathematical techniques for it. In the process he also popularized the asymptotic notation. In addition to fundamental contributions in several branches of theoretical computer science, Knuth is the creator of the TeX computer typesetting system, the related METAFONT font definition language and rendering system, and the Computer Modern family of typefaces.

As a writer and scholar,[10] Knuth created the WEB and CWEB computer programming systems designed to encourage and facilitate literate programming, and designed the MIX/MMIX instruction set architectures. As a member of the academic and scientific community, Knuth is strongly opposed to the policy of granting software patents.[11] He has expressed his disagreement directly to both the United States Patent and Trademark Office and European Patent Organization.[12]

Early life

Knuth was born in Milwaukee, Wisconsin, where his father owned a small printing business and taught bookkeeping at Milwaukee Lutheran High School, where Donald enrolled, earning achievement awards. He applied his intelligence in unconventional ways, winning a contest when he was in eighth grade by finding over 4,500 words that could be formed from the letters in "Ziegler's Giant Bar"; the judges had only about 2,500 words on their master list. This won him a television set for his school and enough candy bars for his entire school.[13]

Education

Knuth had a difficult time choosing physics over music as his major at Case Institute of Technology (now part of Case Western Reserve University). He also joined Beta Nu Chapter of the Theta Chi fraternity. While studying physics at the Case Institute of Technology, Knuth was introduced to the IBM 650, one of the early mainframes. After reading the computer's manual, Knuth decided to rewrite the assembly and compiler code for the machine used in his school, because he believed he could do it better.[14] In 1958, Knuth constructed a program based on the value of each player that could help his school basketball team win the league. This was so novel a proposition at the time that it got picked up and published by Newsweek and also covered by Walter Cronkite on the CBS Evening News.[14] Knuth was one of the founding editors of the Engineering and Science Review, which won a national award as best technical magazine in 1959.[15] He then switched from physics to mathematics, and in 1960 he received his bachelor of science degree, simultaneously being given a master of science degree by a special award of the faculty who considered his work exceptionally outstanding.[14][16]

In 1963, he earned a PhD in mathematics (his advisor was Marshall Hall)[4] from the California Institute of Technology.[17]

Early work

After receiving his PhD, Knuth joined Caltech's faculty as an associate professor.

He accepted a commission to write a book on computer programming language compilers. While working on this project, Knuth decided that he could not adequately treat the topic without first developing a fundamental theory of computer programming, which became The Art of Computer Programming. He originally planned to publish this as a single book. As Knuth developed his outline for the book, he concluded that he required six volumes, and then seven, to thoroughly cover the subject. He published the first volume in 1968.

Just before publishing the first volume of The Art of Computer Programming, Knuth left Caltech to accept employment with the Institute for Defense Analyses' Communications Research Division, then situated on the Princeton University campus, which was performing mathematical research in cryptography to support the National Security Agency.

Knuth then left this position to join the Stanford University faculty.

Writings

The Art of Computer Programming (TAOCP)

Computer science was then taking its first hesitant steps. "It was a totally new field," Knuth recalls, "with no real identity. And the standard of available publications was not that high. A lot of the papers coming out were quite simply wrong. [...] So one of my motivations was to put straight a story that had been very badly told."

After producing the third volume of his series in 1976, he expressed such frustration with the nascent state of the then newly developed electronic publishing tools (especially those that provided input to phototypesetters) that he took time out to work on typesetting and created the TeX and METAFONT tools.

As of 2013, the first three volumes and part one of volume four of his series have been published.[18] Concrete Mathematics: A Foundation for Computer Science 2nd ed., which originated with an expansion of the mathematical preliminaries section of Volume 1 of TAoCP, has also been published.

Other works

He is also the author of Surreal Numbers,[19] a mathematical novelette on John Conway's set theory construction of an alternate system of numbers. Instead of simply explaining the subject, the book seeks to show the development of the mathematics. Knuth wanted the book to prepare students for doing original, creative research.

In 1995, Knuth wrote the foreword to the book A=B by Marko Petkovsek, Herbert Wilf and Doron Zeilberger.[20] Knuth is also an occasional contributor of language puzzles to Word Ways: The Journal of Recreational Linguistics.

Religious beliefs and work

In addition to his writings on computer science, Knuth, a Lutheran,[21] is also the author of 3:16 Bible Texts Illuminated,[22] in which he examines the Bible by a process of systematic sampling, namely an analysis of chapter 3, verse 16 of each book. Each verse is accompanied by a rendering in calligraphic art, contributed by a group of calligraphers under the leadership of Hermann Zapf.

Subsequently he was invited to give a set of lectures on his 3:16  project, resulting in another book, Things a Computer Scientist Rarely Talks About, where he published the lectures "God and Computer Science".

Health concerns

In 2006, Knuth was diagnosed with prostate cancer. He underwent surgery in December that year and started "a little bit of radiation therapy... as a precaution but the prognosis looks pretty good", as he reported in his video autobiography.[23]

Computer musings

Knuth gives informal lectures a few times a year at Stanford University, which he called Computer Musings. He is a visiting professor at the Oxford University Department of Computer Science in the United Kingdom and an Honorary Fellow of Magdalen College.[24][25]

Humor

"Nested parens"—Donald Knuth and Jacob Appelbaum and Donald Knuth

Knuth used to pay a finder's fee of $2.56 for any typographical errors or mistakes discovered in his books, because "256 pennies is one hexadecimal dollar", and $0.32 for "valuable suggestions". According to an article in the Massachusetts Institute of Technology's Technology Review, these Knuth reward checks are "among computerdom's most prized trophies". Knuth had to stop sending real checks in 2008 due to bank fraud, and instead now gives each error finder a "certificate of deposit" from a publicly listed balance in his fictitious "Bank of San Serriffe".[26]

He once warned a correspondent, "Beware of bugs in the above code; I have only proved it correct, not tried it."[27]

Knuth published his first "scientific" article in a school magazine in 1957 under the title "Potrzebie System of Weights and Measures." In it, he defined the fundamental unit of length as the thickness of Mad No. 26, and named the fundamental unit of force "whatmeworry." Mad published the article in issue No. 33 (June 1957).[28]

To demonstrate the concept, Knuth intentionally referred "Circular definition" and "Definition, circular" to each other in the index of The Art of Computer Programming, Volume 1.

At the TUG 2010 Conference, Knuth announced an XML-based successor to TeX, titled "iTeX" (pronounced [iː˨˩˦tɛks˧˥], with a bell ringing), which would support features such as arbitrarily scaled irrational units, 3D printing, animation, and stereophonic sound.[29][30][31]

Awards and honors

In 1971, Knuth was the recipient of the first ACM Grace Murray Hopper Award. He has received various other awards including the Turing Award, the National Medal of Science, the John von Neumann Medal, and the Kyoto Prize.

In recognition of Knuth's contributions to the field of computer science, in 1990 he was awarded the one-of-a-kind academic title of Professor of The Art of Computer Programming, which has since been revised to Professor Emeritus of The Art of Computer Programming.

Knuth was elected to the National Academy of Sciences in 1975. In 1992, he became an associate of the French Academy of Sciences. Also that year, he retired from regular research and teaching at Stanford University in order to finish The Art of Computer Programming. He was elected a Foreign Member of the Royal Society (ForMemRS) in 2003.[6]

Knuth was elected as a Fellow (first class of Fellows) of the Society for Industrial and Applied Mathematics in 2009 for his outstanding contributions to mathematics.[32] He is a member of the Norwegian Academy of Science and Letters.[33] In 2012, he became a fellow of the American Mathematical Society.[34] Other awards and honors include:

Publications

A short list of his publications:[43]

The Art of Computer Programming

  1. (1997), The Art of Computer Programming, 1: Fundamental Algorithms (3rd ed.), Addison-Wesley Professional, ISBN 0-201-89683-4 .
  2. (1997), The Art of Computer Programming, 2: Seminumerical Algorithms (3rd ed.), Addison-Wesley Professional, ISBN 0-201-89684-2 .
  3. (1998), The Art of Computer Programming, 3: Sorting and Searching (2nd ed.), Addison-Wesley Professional, ISBN 0-201-89685-0 .
  4. (2011), The Art of Computer Programming, 4A: Combinatorial Algorithms, Addison-Wesley Professional, ISBN 0-201-03804-8 .
  5. (2005), MMIX—A RISC Computer for the New Millennium, 1, Fascicle 1, ISBN 0-201-85392-2 .
  6. (2008), The Art of Computer Programming, 4, Fascicle 0: Introduction to Combinatorial Algorithms and Boolean Functions, ISBN 0-321-53496-4 .
  7. (2009), The Art of Computer Programming, 4, Fascicle 1: Bitwise Tricks & Techniques; Binary Decision Diagrams, ISBN 0-321-58050-8 .
  8. (2005), The Art of Computer Programming, 4, Fascicle 2: Generating All Tuples and Permutations, ISBN 0-201-85393-0 .
  9. (2005), The Art of Computer Programming, 4, Fascicle 3: Generating All Combinations and Partitions, ISBN 0-201-85394-9 .
  10. (2006), The Art of Computer Programming, 4, Fascicle 4: Generating All Trees—History of Combinatorial Generation, ISBN 0-321-33570-8 .
  11. (2015), The Art of Computer Programming, 4, Fascicle 6: Satisfiability, ISBN 0-134-39760-6 .

Computers and Typesetting

All books are hardcover unless otherwise noted.

  1. (1984), Computers & Typesetting, A, The TeXbook, Reading, MA: Addison-Wesley, ISBN 0-201-13447-0 , x+483pp.
  2. (1984), Computers & Typesetting, A, The TeXbook, Reading, MA: Addison-Wesley, ISBN 0-201-13448-9  (softcover).
  3. (1986), Computers & Typesetting, B, TeX: The Program, Reading, MA: Addison-Wesley, ISBN 0-201-13437-3 , xviii+600pp.
  4. (1986), Computers & Typesetting, C, The METAFONTbook, Reading, MA: Addison-Wesley, ISBN 0-201-13445-4 , xii+361pp.
  5. (1986), Computers & Typesetting, C, The METAFONTbook, Reading, MA: Addison-Wesley, ISBN 0-201-13444-6  (softcover).
  6. (1986), Computers & Typesetting, D, METAFONT: The Program, Reading, MA: Addison-Wesley, ISBN 0-201-13438-1 , xviii+566pp.
  7. (1986), Computers & Typesetting, E, Computer Modern Typefaces, Reading, MA: Addison-Wesley, ISBN 0-201-13446-2 , xvi+588pp.
  8. (2000), Computers & Typesetting, A-E Boxed Set, Reading, MA: Addison-Wesley, ISBN 0-201-73416-8 .

Selected papers

  1. (1992), Literate Programming, Lecture Notes (27), Stanford, CA: Center for the Study of Language and Information—CSLI, ISBN 0-937073-80-6 [44]
  2. (1996), Selected Papers on Computer Science, Lecture Notes (59), Stanford, CA: Center for the Study of Language and Information—CSLI, ISBN 1-881526-91-7 [45]
  3. (1999), Digital Typography, Lecture Notes (78), Stanford, CA: Center for the Study of Language and Information—CSLI, ISBN 1-57586-010-4 [46]
  4. (2000), Selected Papers on Analysis of Algorithms, Lecture Notes (102), Stanford, CA: Center for the Study of Language and Information—CSLI, ISBN 1-57586-212-3 [47]
  5. (2003), Selected Papers on Computer Languages (cloth), Lecture Notes (139), Stanford, CA: Center for the Study of Language and Information—CSLI, ISBN 1-57586-381-2 , ISBN 1-57586-382-0 (paperback)[48]
  6. (2003), Selected Papers on Discrete Mathematics (cloth), Lecture Notes (106), Stanford, CA: Center for the Study of Language and Information—CSLI, ISBN 1-57586-249-2 , ISBN 1-57586-248-4 (paperback)[49]
  7. Donald E. Knuth, Selected Papers on Design of Algorithms (Stanford, California: Center for the Study of Language and Information—CSLI Lecture Notes, no. 191), 2010. ISBN 1-57586-583-1 (cloth), ISBN 1-57586-582-3 (paperback)[50]
  8. Donald E. Knuth, Selected Papers on Fun and Games (Stanford, California: Center for the Study of Language and Information—CSLI Lecture Notes, no. 192), 2011. ISBN 978-1-57586-585-0 (cloth), ISBN 978-1-57586-584-3 (paperback)[51]
  9. Donald E. Knuth, Companion to the Papers of Donald Knuth (Stanford, California: Center for the Study of Language and Information—CSLI Lecture Notes, no. 202), 2011. ISBN 978-1-57586-635-2 (cloth), ISBN 978-1-57586-634-5 (paperback)[52]

Gallery

See also

References

  1. Reutenauer, Arthur. "A brief history of TeX, volume II". TUGboat: 68–72. ISSN 0896-3207.
  2. Knuth, Donald Ervin (1980). Ji Suan Ji Cheng Xu She Ji Ji Qiao [The Art of Computer Programming]. Translated by Guan, JiWen; Su, Yunlin. Beijing: Defense Industry Publishing Co. I fondly hope that many Chinese computer programmers will learn to recognize my Chinese name Gao Dena, which was given to me by Francis Yao just before I visited your country in 1977. I still have very fond memories of that three-week visit, and I have been glad to see Gao Dena on the masthead of the Journal of Computer Science and Technology since 1989. This name makes me feel close to all Chinese people although I cannot speak your language.
  3. 1 2 Knuth, Donald Ervin. "Frequently Asked Questions". Home page. Stanford University. Retrieved 2010-11-02.
  4. 1 2 3 Donald Knuth at the Mathematics Genealogy Project
  5. 1 2 "Donald Knuth: 1998 Fellow". Computer History Museum. 2015. Retrieved March 30, 2015.
  6. 1 2 "Professor Donald Knuth ForMemRS". London: Royal Society. Archived from the original on 2015-11-17.
  7. Knuth, Donald Ervin, Home page, Stanford University, retrieved 2005-03-16
  8. The Art of Computer Programming, Stanford University.
  9. Karp, Richard M. (February 1986), "Combinatorics, Complexity, and Randomness", Communications of the ACM (New York, NY, USA: ACM) 29 (2): 98–109, doi:10.1145/5657.5658
  10. Knuth, Donald Ervin, Curriculum vitae, Stanford University.
  11. "Professor Donald Knuth's Thinking Against Software Patents" (PDF), Notices (article) (The American Mathematical Society), March 2002.
  12. Knuth, Donald Ervin, Against software patents (PDF) (Letters) to the patent offices in the USA and Europe.
  13. Shasha, Dennis Elliott; Lazere, Cathy A (1998), Out of their minds: the lives and discoveries of 15 great computer scientists, Springer, p. 90, ISBN 978-0-387-98269-4
  14. 1 2 3 Koshy, Thomas (2004), Discrete mathematics with applications, Academic Press, p. 244, ISBN 978-0-12-421180-3, retrieved July 30, 2011
  15. "History of Beta Nu Chapter", The Tachi, CWRU.
  16. A.M. Turing Award; Donald ("Don") Erwin Knuth, ACM, 1974.
  17. Knuth, Donald Ervin (1963), Finite Semifields and Projective Planes (PDF) (PhD dissertation), Caltech.
  18. Knuth, Donald Ervin. "The Art of Computer Programming (TAOCP)". Retrieved May 20, 2012.
  19. Knuth 1974.
  20. Zeilberg, DEK, Rutgers.
  21. Platoni 2006.
  22. Knuth, Donald Ervin (1991), 3:16 : Bible texts illuminated, Madison, WI: A-R Eds, ISBN 978-0-89579-252-5
  23. "Donald Knuth: 85 – Coping with cancer". Web of Stories. April 2006. Retrieved May 2, 2012.
  24. "Professor Donald Knuth". Magdalen College. Retrieved December 6, 2010.
  25. "Notices". Oxford University Gazette. October 30, 2014. Retrieved May 21, 2015.
  26. "Rewriting the Bible in 0s and 1s", Technology Review (Massachusetts Institute of Technology).
  27. Knuth, Donald Ervin. "Frequently Asked Questions". Home page. Stanford University. Retrieved November 2, 2010.
  28. Knuth, Donald Ervin (June 1957), "Potrzebie System of Weights & Measures", Mad Magazine (33).
  29. "Don Knuth", TUG (conference), Zeeba TV, 2010.
  30. Knuth, Donald Ervin, An Earth‐shaking announcement (video) (recording), Zeeba TV.
  31. Knuth, Donald Ervin (2010), "An Earthshaking Announcement" (PDF), TUGboat 31 (2): 121–24, ISSN 0896-3207
  32. Fellows, Siam, 2009.
  33. "Gruppe 1: Matematiske fag" (in Norwegian). Norwegian Academy of Science and Letters. Retrieved October 7, 2010.
  34. List of Fellows of the American Mathematical Society, retrieved 2013-01-27.
  35. Knuth, D. E. (1974). "Computer science and its relation to mathematics". Amer. Math. Monthly 81: 323–343. doi:10.2307/2318994.
  36. Knuth, D. E. (1992). "Two notes on notation". Amer. Math. Monthly 99: 403–422. doi:10.2307/2325085.
  37. Josiah Willard Gibbs Lectures
  38. Knuth, Donald E. (1979). "Mathematical typography". Bull. Amer. Math. Soc. (N.S.) 1 (2): 337–372. doi:10.1090/s0273-0979-1979-14598-1. MR 520078.
  39. Harvey, IL: Technion, 1995.
  40. Katayanagi, CMU.
  41. "Galardonados", Fronteras (in Spanish), ES: FBBVA, 2010.
  42. Myers, Andrew (June 1, 2001). "Stanford's Don Knuth, a pioneering hero of computer programming". Stanford Report. Retrieved June 27, 2011.
  43. Knuth, Donald Ervin, "Books", Home page (list).
  44. Knuth, Donald Ervin, "Literate Programming", Home page.
  45. Knuth, Donald Ervin, "Selected Papers on Computer Science", Home page.
  46. Knuth, Donald Ervin, "Digital Typography", Home page.
  47. Knuth, Donald Ervin, "Selected Papers on Analysis of Algorithms", Home page.
  48. Knuth, Donald Ervin, "Selected Papers on Computer Languages", Home page
  49. Knuth, Donald Ervin, "Selected Papers on Discrete Mathematics", Home page
  50. Knuth, Donald Ervin, "Selected Papers on Design of Algorithms", Home page
  51. Knuth, Donald Ervin, "Selected Papers on Fun and Games", Home page
  52. Knuth, Donald Ervin, "Companion to the Papers of Donald Knuth"]", Home page
  53. Knuth, Donald Ervin, "Surreal numbers", Home page.

Bibliography

External links

This article is issued from Wikipedia - version of the Thursday, December 31, 2015. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.