Things a Computer Scientist Rarely Talks About, by Donald E. Knuth

August 27, 2002

Although many of us may be unfamiliar with the name Donald Knuth, not so computer scientists and programmers. According to the Online hacker Jargon file (Jargon File 4.2.3), "Knuth" is "mythically, the reference that answers all questions about data structures or algorithms. A safe answer when you do not know: 'I think you can find that in Knuth.'" "Knuth" in this context refers to a monumental three-volume work titled The Art of Computer Programming.

When Knuth became annoyed with the quality of typesetting for that series, he invented typesetting language TEX, which is still used around the world by scientists to set their articles and books. Knuth thought he could complete this typesetting system during a sabbatical; instead, it took eight years. But, as the Jargon file rightly observes, "Many grand hackish projects have started as a bit of toolsmithing on the way to something else; Knuth's diversion was simply on a grander scale than most."

At the other extreme, Knuth wrote a novelette in a week that illustrates the mathematician John Horton Conway's new way of constructing numbers. Knuth called Conway's invention "surreal numbers," and the name has stuck. A champion of "elegant" and "literate" programming, Knuth marries the sensibilities of an artist with the precision of a mathematician; he is one of computer science's most influential scholars. No wonder that when this Lutheran Christian agreed to give six lectures in the MIT series "God and Computers," the MIT student newspaper published an article titled "Computer God talks about God." These lectures have now been lightly edited into a book that includes a brief introduction by Anne Foerst, MIT research scientist and convener of the lecture series, and the record of a brief panel discussion involving Knuth and several computer science luminaries (Guy L. Steele Jr. and Mitch Kapor, among others).

Five of Knuth's six lectures deal mainly with Knuth's 3:16 Bible Texts Illuminated (1991). In this book Knuth employed the statistical technique of stratified sampling to get a sense of the Bible as a whole by examining the 16th verse of the third chapter of each biblical book. Of the Bible's 66 books, seven were dropped because they are too short to have a 3:16. Knuth read what multiple commentaries and theological works had to say about each of the 59 verses of his sample and distilled his findings into masterful three-page summaries. With the assistance of Hermann Zapf, one of the 20th century's greatest typographers, Knuth illustrated each 3:16 verse with a stunning piece of calligraphy by a world-renowned calligrapher. I commend this book to Bible study conveners, lovers of fine typography and appreciators of concise, stimulating commentary.

In his sixth lecture, "God and Computer Science," Knuth sketches some possible lessons about God as creator and sustainer of the universe drawn from what computer scientists have learned about processes and "how to deal with large quantities of nonuniform data in dynamic ways." Knuth illustrates, for example, how finite numbers can be so large that to say that God's abilities are finite is "not a realistic limitation at all." On the basis of Büchi's theorem about "weak second-order mathematics," Knuth concludes that "God can know much more than enough, and can be plenty powerful enough, to do anything relevant to the universe, without being strictly all-knowing or all-powerful. Finiteness is not a limitation in practice."

Knuth uses surreal numbers, Conway's famous Game of Life and Arthur Peacocke's discussion of quantum mechanics to suggest that determinism may be compatible with free will as we understand it. Against those who say that chance and necessity cannot produce purpose, he replies that the purposeful use of randomness is often the most effective way to solve computation problems; perhaps, he suggests, God is also using the most effective strategy. His work on "attribute grammars," he claims, "shows that top-down and bottom-up causality can coexist quite nicely." While Knuth does not recommend "that theologians undertake a deep study of computational complexity (unless, of course, they really enjoy it)," lecture six suggests that the "unnatural" science of computers could open up new ways of thinking about old theological problems.

If you are a fan of 3:16 and want to know more about the statistical techniques Knuth employed, his aesthetic considerations, how he translated the 59 verses without knowing Hebrew or Greek, or what he learned in the process of this project--or if you simply want merely to spend time with a remarkable, playful intellect--you'll enjoy this book. If you want to know how computer science might help theological reflection, lecture six can launch you on your way to further, challenging study.