Английская Википедия:Donald Knuth
Шаблон:Short description Шаблон:Use mdy dates Шаблон:Infobox scientist Donald Ervin Knuth (Шаблон:IPAc-en[1] Шаблон:Respell; born January 10, 1938) is an American computer scientist and mathematician. He is a professor emeritus at Stanford University. He is the 1974 recipient of the ACM Turing Award, informally considered the Nobel Prize of computer science.[2] Knuth has been called the "father of the analysis of algorithms".[3]
Knuth is the author of the multi-volume work The Art of Computer Programming. 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, Knuth created the WEB and CWEB computer programming systems designed to encourage and facilitate literate programming, and designed the MIX/MMIX instruction set architectures. He strongly opposes the granting of software patents, and has expressed his opinion to the United States Patent and Trademark Office and European Patent Organisation.
Biography
Early life
Donald Knuth was born in Milwaukee, Wisconsin, to Ervin Henry Knuth and Louise Marie Bohning.[4] He describes his heritage as "Midwestern Lutheran German".Шаблон:R His father owned a small printing business and taught bookkeeping.[5] While a student at Milwaukee Lutheran High School, Knuth thought of ingenious ways to solve problems. For example, in eighth grade, he entered a contest to find the number of words that the letters in "Ziegler's Giant Bar" could be rearranged to create; the judges had identified 2,500 such words. With time gained away from school due to a fake stomach ache Knuth used an unabridged dictionary and determined whether each dictionary entry could be formed using the letters in the phrase. Using this algorithm, he identified over 4,500 words, winning the contest.[6]Шаблон:Rp As prizes, the school received a new television and enough candy bars for all of his schoolmates to eat.[7]
Education
Knuth received a scholarship in physics to the Case Institute of Technology (now part of Case Western Reserve University) in Cleveland, Ohio, enrolling in 1956.[8] He also joined the Beta Nu Chapter of the Theta Chi fraternity. While studying physics at Case, Knuth was introduced to the IBM 650, an early commercial computer. 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.[9]
In 1958, Knuth created a program to help his school's basketball team win its games.[10] He assigned "values" to players in order to gauge their probability of scoring points, a novel approach that Newsweek and CBS Evening News later reported on.[9]
Knuth was one of the founding editors of the Case Institute's Engineering and Science Review, which won a national award as best technical magazine in 1959.[11][12] He then switched from physics to mathematics, and received two degrees from Case in 1960:[8] his Bachelor of Science, and simultaneously a master of science by a special award of the faculty, who considered his work exceptionally outstanding.[2][9]
In 1963, with mathematician Marshall Hall as his adviser,[13] he earned a PhD in mathematics from the California Institute of Technology, with a thesis titled Finite Semifields and Projective Planes.[14]
Early work
In 1963, after receiving his PhD, Knuth joined Caltech's faculty as an assistant professor.[15]
Knuth accepted a commission to write a book on computer programming language compilers. While working on this project, he 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, but as he 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.[16]
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,[17] then situated on the Princeton campus, which was performing mathematical research in cryptography to support the National Security Agency.
In 1967, Knuth attended a Society for Industrial and Applied Mathematics conference and someone asked what he did. At the time, computer science was partitioned into numerical analysis, artificial intelligence, and programming languages. Based on his study and The Art of Computer Programming book, Knuth decided the next time someone asked he would say, "Analysis of algorithms".[18]
In 1969, Knuth left his position at Princeton to join the Stanford University faculty,[19] where he became Fletcher Jones Professor of Computer Science in 1977. He became Professor of The Art of Computer Programming in 1990, and has been emeritus since 1993.[20][21]
Writings
Knuth is a writer, as well as a computer scientist.[15]
The Art of Computer Programming (TAOCP)
In the 1970s, Knuth called computer science "a totally new field 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."[22]
From 1972 to 1973, Knuth spent a year at the University of Oslo among people such as Ole-Johan Dahl. This is where he had originally intended to write the seventh volume in his book series, which was to deal with programming languages. But Knuth had finished only the first two volumes when he came to Oslo, and thus spent the year on the third volume, next to teaching. The third volume came out just after Knuth returned to Stanford in 1973.[23]
By 2011, Volume 4A had been published.[16] Concrete Mathematics: A Foundation for Computer Science 2nd ed., which originated with an expansion of the mathematical preliminaries section of Volume 1 of TAoCP, was published in 1994. In April 2020, Knuth said he anticipated that Volume 4 will have at least parts A through F.[18] Volume 4B was published in October 2022.
Other works
Knuth is also the author of Surreal Numbers,[24] 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 Petkovšek, Herbert Wilf and Doron Zeilberger.[25] He also occasionally contributes language puzzles to Word Ways: The Journal of Recreational Linguistics.[26]
Knuth has delved into recreational mathematics. He contributed articles to the Journal of Recreational Mathematics beginning in the 1960s, and was acknowledged as a major contributor in Joseph Madachy's Mathematics on Vacation.[27]
Knuth also appears in a number of Numberphile[28] and Computerphile videos on YouTube, where he discusses topics from writing Surreal Numbers[29] to why he does not use email.[30]
Works about his religious beliefs
In addition to his writings on computer science, Knuth, a Lutheran,Шаблон:Sfn is also the author of 3:16 Bible Texts Illuminated,[31] 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 led by Hermann Zapf. Knuth was invited to give a set of lectures at MIT on the views on religion and computer science behind his 3:16 project, resulting in another book, Things a Computer Scientist Rarely Talks About, where he published the lectures God and Computer Science.[32]
Opinion on software patents
Knuth strongly opposes granting software patents to trivial solutions that should be obvious, but has expressed more nuanced views for nontrivial solutions such as the interior-point method of linear programming.[33] He has expressed his disagreement directly to both the United States Patent and Trademark Office and European Patent Organisation.[34]
Programming
Digital typesetting
In the 1970s the publishers of TAOCP abandoned Monotype in favor of phototypesetting. Knuth became so frustrated with the inability of the latter system to approach the quality of the previous volumes, which were typeset using the older system, that he took time out to work on digital typesetting and created TeX and Metafont.[35]
Literate programming
While developing TeX, Knuth created a new methodology of programming, which he called literate programming, because he believed that programmers should think of programs as works of literature:
Knuth embodied the idea of literate programming in the WEB system. The same WEB source is used to weave a TeX file, and to tangle a Pascal source file. These in their turn produce a readable description of the program and an executable binary respectively. A later iteration of the system, CWEB, replaces Pascal with C, C++, and Java.[36]
Knuth used WEB to program TeX and METAFONT, and published both programs as books, both originally published the same year: TeX: The Program (1986); and METAFONT: The Program (1986).[37] Around the same time, LaTeX, the now-widely adopted macro package based on TeX, was first developed by Leslie Lamport, who later published its first user manual in 1986.[38]
Personal life
Donald Knuth married Nancy Jill Carter on 24 June 1961, while he was a graduate student at the California Institute of Technology. They have two children: John Martin Knuth and Jennifer Sierra Knuth.[39]
Knuth gives informal lectures a few times a year at Stanford University, which he calls "Computer Musings". He was a visiting professor at the Oxford University Department of Computer Science in the United Kingdom until 2017 and an Honorary Fellow of Magdalen College.[40][41]
Knuth is an organist and a composer. He and his father served as organists for Lutheran congregations. Knuth and his wife have a 16-rank organ in their home.[42] In 2016 he completed a piece for organ, Fantasia Apocalyptica, which he calls a "translation of the Greek text of the Revelation of Saint John the Divine into music". It was premièred in Sweden on January 10, 2018.[43]
Chinese name
Knuth's Chinese name is Gao Dena (Шаблон:Zh).[44][1] He was given this name in 1977 by Frances Yao shortly before making a three-week trip to China.[1][45] In the 1980 Chinese translation of Volume 1 of The Art of Computer Programming (Шаблон:Zh), Knuth explains that he embraced his Chinese name because he wanted to be known by the growing numbers of computer programmers in China at the time. In 1989, his Chinese name was placed atop the Journal of Computer Science and TechnologyШаблон:'s header, which Knuth says "makes me feel close to all Chinese people although I cannot speak your language".[45]
Health concerns
In 2006, Knuth was diagnosed with prostate cancer. He underwent surgery in December that year and said, "a little bit of radiation therapy ... as a precaution but the prognosis looks pretty good" in his video autobiography.[46]
Humor
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 now gives each error finder a "certificate of deposit" from a publicly listed balance in his fictitious "Bank of San Serriffe".[47]
He once warned a correspondent, "Beware of bugs in the above code; I have only proved it correct, not tried it."[1]
Knuth published his first "scientific" article in a school magazine in 1957 under the title "The 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).[48][49]
To demonstrate the concept of recursion, Knuth intentionally referred "Circular definition" and "Definition, circular" to each other in the index of The Art of Computer Programming, Volume 1.
The preface of Concrete Mathematics has the following paragraph:Шаблон:Blockquote
At the TUG 2010 Conference, Knuth announced a satirical XML-based successor to TeX, titled "iTeX" (Шаблон:IPA-all, performed with a bell ringing), which would support features such as arbitrarily scaled irrational units, 3D printing, input from seismographs and heart monitors, animation, and stereophonic sound.[50][51][52]
Awards and honors
In 1971, Knuth received the first ACM Grace Murray Hopper Award.[2] He has received various other awards, including the Turing Award, the National Medal of Science, the John von Neumann Medal, and the Kyoto Prize.[2]
Knuth was elected a Distinguished Fellow of the British Computer Society (DFBCS) in 1980 in recognition of his contributions to the field of computer science.[53]
In 1990 he was awarded the one-of-a-kind academic title 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. He was also elected a member of the National Academy of Engineering in 1981 for organizing vast subject areas of computer science so that they are accessible to all segments of the computing community. 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.[54]
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.[55] He is a member of the Norwegian Academy of Science and Letters.[56] In 2012, he became a fellow of the American Mathematical Society[57] and a member of the American Philosophical Society.[58] Other awards and honors include: Шаблон:Div col
- First ACM Grace Murray Hopper Award, 1971[2]
- Turing Award, 1974[2]
- Lester R. Ford Award, 1975[59] and 1993[60]
- Josiah Willard Gibbs Lecturer, 1978[61][62]
- National Medal of Science, 1979[63]
- Golden Plate Award of the American Academy of Achievement, 1985[64]
- Franklin Medal, 1988[2]
- John von Neumann Medal, 1995[2]
- Harvey Prize from the Technion, 1995[65]
- Kyoto Prize, 1996[2]
- Fellow of the Computer History Museum "for his fundamental early work in the history of computing algorithms, development of the TeX typesetting language, and for major contributions to mathematics and computer science." 1998[66]
- Asteroid 21656 Knuth, named in his honor in May 2001[67][68]
- Katayanagi Prize, 2010[69]
- BBVA Foundation Frontiers of Knowledge Award in the category of Information and Communication Technologies, 2010[70]
- Turing Lecture, 2011
- Stanford University School of Engineering Hero Award, 2011[71]
- Flajolet Lecture Prize, 2014[72]
Publications
A short list of his publications include:[73]
The Art of Computer Programming: Шаблон:Refbegin
- Шаблон:Cite book
- Шаблон:Cite book
- Шаблон:Cite book
- Шаблон:Cite book
- Шаблон:Cite book
- Шаблон:Cite book
- Шаблон:Cite book
- Шаблон:Cite book
- Шаблон:Cite book
- Шаблон:Cite book
- Шаблон:Cite book
- Шаблон:Cite book
- Шаблон:Cite book
Computers and Typesetting (all books are hardcover unless otherwise noted): Шаблон:Refbegin
- Шаблон:Cite book, x+483pp.
- Шаблон:Cite book (softcover).
- Шаблон:Cite book, xviii+600pp.
- Шаблон:Cite book, xii+361pp.
- Шаблон:Cite book (softcover).
- Шаблон:Cite book, xviii+566pp.
- Шаблон:Cite book, xvi+588pp.
- Шаблон:Cite book
Books of collected papers: Шаблон:Refbegin
- Шаблон:Cite book[74]
- Шаблон:Cite book[75]
- Шаблон:Cite book[76]
- Шаблон:Cite book[77]
- Шаблон:Cite book, Шаблон:Isbn (paperback)[78]
- Шаблон:Cite book, Шаблон:Isbn (paperback)[79]
- 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 (cloth), Шаблон:Isbn (paperback)[80]
- 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 (cloth), Шаблон:Isbn (paperback)[81]
- 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 (cloth), Шаблон:Isbn (paperback)[82]
Other books: Шаблон:Refbegin
- Шаблон:Cite book xiv+657 pp.
- Шаблон:Cite book[24]
- Donald E. Knuth, The Stanford GraphBase: A Platform for Combinatorial Computing (New York, ACM Press) 1993. second paperback printing 2009. Шаблон:Isbn
- Donald E. Knuth, 3:16 Bible Texts Illuminated (Madison, Wisconsin: A-R Editions), 1990. Шаблон:Isbn
- Donald E. Knuth, Things a Computer Scientist Rarely Talks About (Center for the Study of Language and Information—CSLI Lecture Notes no 136), 2001. Шаблон:Isbn
- Donald E. Knuth, MMIXware: A RISC Computer for the Third Millennium (Heidelberg: Springer-Verlag— Lecture Notes in Computer Science, no. 1750), 1999. viii+550pp. Шаблон:Isbn
- Donald E. Knuth and Silvio Levy, The CWEB System of Structured Documentation (Reading, Massachusetts: Addison-Wesley), 1993. iv+227pp. Шаблон:Isbn. Third printing 2001 with hypertext support, ii + 237 pp.
- Donald E. Knuth, Tracy L. Larrabee, and Paul M. Roberts, Mathematical Writing (Washington, D.C.: Mathematical Association of America), 1989. ii+115pp Шаблон:Isbn
- Daniel H. Greene and Donald E. Knuth, Mathematics for the Analysis of Algorithms (Boston: Birkhäuser), 1990. viii+132pp. Шаблон:Isbn
- Donald E. Knuth, Шаблон:Lang, 1976. 106pp. Шаблон:Isbn
- Donald E. Knuth, Stable Marriage and Its Relation to Other Combinatorial Problems: An Introduction to the Mathematical Analysis of Algorithms. Шаблон:Isbn
- Donald E. Knuth, Axioms and Hulls (Heidelberg: Springer-Verlag—Lecture Notes in Computer Science, no. 606), 1992. ix+109pp. Шаблон:Isbn
See also
- Asymptotic notation
- Attribute grammar
- CC system
- Dancing Links
- Knuth -yllion
- Knuth–Bendix completion algorithm
- Knuth Prize
- Knuth shuffle
- Knuth's Algorithm X
- Knuth's Simpath algorithm
- Knuth's up-arrow notation
- Knuth–Morris–Pratt algorithm
- Davis–Knuth dragon
- Bender–Knuth involution
- Trabb Pardo–Knuth algorithm
- Fisher–Yates shuffle
- Robinson–Schensted–Knuth correspondence
- Man or boy test
- Plactic monoid
- Quater-imaginary base
- TeX
- Termial
- The Complexity of Songs
- Uniform binary search
- List of pioneers in computer science
- List of science and religion scholars
References
Bibliography
External links
- Donald Knuth's home page at Stanford University.
- Шаблон:Curlie
- Шаблон:Cite interview Knuth discusses software patenting, structured programming, collaboration and his development of TeX.
- Шаблон:MathGenealogy
- Шаблон:MacTutor Biography
- Шаблон:DBLP
- Шаблон:IMSLP
- Шаблон:YouTube
- Biography of Donald Knuth from the Institute for Operations Research and the Management Sciences
- Donald Ervin Knuth – Stanford Lectures (Archive)
- Interview with Donald Knuth by Lex Fridman
- Siobhan Roberts, The Yoda of Silicon Valley. The New York Times, 17 December 2018.
Шаблон:Navboxes Шаблон:Authority control
- ↑ 1,0 1,1 1,2 1,3 Шаблон:Cite web
- ↑ 2,0 2,1 2,2 2,3 2,4 2,5 2,6 2,7 2,8 Шаблон:Cite web
- ↑ Шаблон:Cite journal
- ↑ Шаблон:MacTutor
- ↑ Шаблон:Cite book
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite book
- ↑ 8,0 8,1 Шаблон:Cite web
- ↑ 9,0 9,1 9,2 Шаблон:Cite book
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Ошибка цитирования Неверный тег
<ref>
; для сносокmathgene
не указан текст - ↑ Шаблон:Cite thesis
- ↑ 15,0 15,1 Шаблон:Cite web
- ↑ 16,0 16,1 Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ 18,0 18,1 Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ 24,0 24,1 Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Madachy, Joseph S.,Mathematics on Vacation, Thomas Nelson & Sons Ltd. 1966
- ↑ Шаблон:Cite web
- ↑ Шаблон:CitationШаблон:Cbignore
- ↑ Шаблон:Citation
- ↑ Шаблон:Cite book
- ↑ Шаблон:Cite book
- ↑ Шаблон:Cite journal
- ↑ Шаблон:Cite web to the patent offices in the USA and Europe.
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite book
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite news
- ↑ Шаблон:Cite journal
- ↑ 45,0 45,1 Шаблон:Cite book
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite journal
- ↑ Шаблон:Cite magazine
- ↑ Шаблон:Cite book
- ↑ Шаблон:Cite web
- ↑ Шаблон:Citation
- ↑ Шаблон:Cite journal
- ↑ Шаблон:Cite web
- ↑ Ошибка цитирования Неверный тег
<ref>
; для сносокformemrs
не указан текст - ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite journal
- ↑ Шаблон:Cite journal
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite journal
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Ошибка цитирования Неверный тег
<ref>
; для сносокMPC-object
не указан текст - ↑ Ошибка цитирования Неверный тег
<ref>
; для сносокMPC-Circulars-Archive
не указан текст - ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite news
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite journal
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- ↑ Шаблон:Cite web
- Английская Википедия
- Страницы с неработающими файловыми ссылками
- Donald Knuth
- American computer scientists
- American computer programmers
- Mathematics popularizers
- American people of German descent
- American technology writers
- 1938 births
- Living people
- Combinatorialists
- Free software programmers
- Programming language designers
- Scientists from California
- Writers from California
- Turing Award laureates
- Grace Murray Hopper Award laureates
- National Medal of Science laureates
- 1994 Fellows of the Association for Computing Machinery
- Fellows of the American Mathematical Society
- Fellows of the British Computer Society
- Fellows of the Society for Industrial and Applied Mathematics
- Kyoto laureates in Advanced Technology
- Donegall Lecturers of Mathematics at Trinity College Dublin
- Members of the United States National Academy of Engineering
- Members of the United States National Academy of Sciences
- Foreign Members of the Royal Society
- Foreign Members of the Russian Academy of Sciences
- Members of the French Academy of Sciences
- Members of the Norwegian Academy of Science and Letters
- Members of the Department of Computer Science, University of Oxford
- Stanford University School of Engineering faculty
- Stanford University Department of Computer Science faculty
- California Institute of Technology alumni
- Case Western Reserve University alumni
- Scientists from Milwaukee
- American Lutherans
- American typographers and type designers
- Writers from Palo Alto, California
- 20th-century American mathematicians
- 21st-century American mathematicians
- 20th-century American scientists
- 21st-century American scientists
- Computer science educators
- Mad (magazine) people
- Burroughs Corporation people
- American organists
- American composers
- Academic staff of the University of Oslo
- Recipients of Franklin Medal
- Страницы, где используется шаблон "Навигационная таблица/Телепорт"
- Страницы с телепортом
- Википедия
- Статья из Википедии
- Статья из Английской Википедии
- Страницы с ошибками в примечаниях