Donald Knuth Christmas lecture 2019

Donald Knuth does one of these lighthearted lectures every year, and this one was perhaps more fun and interesting than before: Pi and the Art of Computer Programming. A reminder: Knuth is like the grand master of algorithms, and I have all of his books on my shelves behind me, and used them when I wrote my own book on algorithms.

Yeah, we all know π to one degree or another. I even wrote a program to generate the first 1000 digits of π, which was then even briefly seen in a cartoon called Bee & PuppyCat. 3.14159265… and on and on for ever.

In this year’s lecture, Knuth not only reveals that Volume 4 Fascicle 5 of his magnum opus The Art of Computer Programming is about to hit the shelves (on January 9, in fact, and mine is now ordered), but also how many times he has referred to π within his books, usually as “random” data of some form. Interesting, some I’d already seen but others were new to me. And he revealed something new to me: in March 2019, someone at Google calculated 31,415,926,535,897 digits of π, the new world record. (It took 170 terabytes of data and 121 days on 25 cloud-based virtual machines to calculate them.)

He then went on a grand discussion of themes discussed in Fascicle 5, especially regarding devising puzzles such as Sudoku and how to solve them programmatically (it’s call the Dancing Links algorithm). And then weaves in yet more references to π with Sudoku, Kakuro, and the like. Brilliant! Well worth watching.

Pi-the first few digits

Loading similar posts...   Loading links to posts on similar topics...

No Responses

Feel free to add a comment...

Leave a response

Note: some MarkDown is allowed, but HTML is not. Expand to show what's available.

  •  Emphasize with italics: surround word with underscores _emphasis_
  •  Emphasize strongly: surround word with double-asterisks **strong**
  •  Link: surround text with square brackets, url with parentheses [text](url)
  •  Inline code: surround text with backticks `IEnumerable`
  •  Unordered list: start each line with an asterisk, space * an item
  •  Ordered list: start each line with a digit, period, space 1. an item
  •  Insert code block: start each line with four spaces
  •  Insert blockquote: start each line with right-angle-bracket, space > Now is the time...
Preview of response