remix logo

Hacker Remix

Discovering errors in Donald Knuth's TAOCP

179 points by glth 22 hours ago | 49 comments

svat 14 hours ago

My Knuth checks amount to a total account balance of 0x$b.40 at his "Bank of San Seriffe" (the equivalent of eleven "errors" and two "suggestions") — mostly accumulated over a short period several years ago.

Previously, I had the impression that Knuth was some magical figure of perfection. What I realized was that the truth was more surprising: he makes the same kinds and the same frequency of errors as anyone else (in fact likely more, because every page is packed with a lot of detail); what sets him apart is that he cares so deeply about getting everything right — he has basically invited a DDoS on his time and attention, where every person in the world is strongly encouraged to write to him with errors on every page that he has ever written over several decades — and he does go back and look at all of them carefully (example: https://retrocomputing.stackexchange.com/questions/18117/whi...); and despite all this he somehow continues to function, producing new pages at a nonzero rate. After some experience with his responses (handwritten with pencil on a printout of the emails sent to him), I came away even more impressed.

zoky 14 hours ago

> he makes the same kinds and the same frequency of errors as anyone else

Putting this here because I don’t know where else to tell this story and I simply have to share:

I flew into Munich a few months ago, and since I have an EU passport I was able to use the shorter self-scan line for EU citizens at passport control. In front of me was an older couple who was having trouble with getting their passports to scan. I noticed they had US passports, so I politely informed the gentleman that he was in the wrong line. He turned around and thanked me, and that’s when I noticed the guy looked exactly like Donald Knuth! Before I could compose myself enough to say anything though, he and his wife had left to find the correct line. Obviously I couldn’t be sure it was him, but I checked Knuth’s public schedule and he was apparently speaking at some conference in Venice about two weeks later, so I’m guessing he decided to come a bit early and enjoy a vacation before the conference.

So yeah, I’m like 99% sure I technically corrected an error by Donald Knuth, but unfortunately I missed out on my reward check. Didn’t even get a selfie with him.

rnewme 11 minutes ago

At risk of sounding negative, I'm glad you didn't get to pester old man with a selfie.

abhgh 8 hours ago

I have mentioned this elsewhere online but I was once attending a talk in the computer history museum for which I had turned up early. An elderly gentleman took his seat right before me - it took me a while to process that it was Knuth (in reality, it was less to do with processing and more with accepting!).

Somewhat recently we spotted him at a Hitchcock movie festival at Palo Alto, which my wife and I were attending.

Random run-ins are surreal :-)

oefrha 4 hours ago

Back when I was at Stanford a decade ago, I spotted him biking to/from Green Library quite a few times. You can probably run into him with some regularity if you make a habit of going to said library, assuming his routine hasn’t changed much ;)

nickdrozd 21 hours ago

Great post. Some general takeaways for people who want Knuth checks:

1. You are unlikely to find errors in the algorithms themselves, especially if they've been officially published. You might find some infelicities, but these are not counted as full errors. For example, the author here found some confusing-but-not-wrong comments about local variables and unused registers. These are counted as "suggestions" (worth 0x20¢) rather than "errors" (worth 0x$1.00).

2. Knuth is pretty generous with credit -- if your suggestion leads him to find an error, you get credit for the error. The author here said that some defined variables went unused. Knuth pointed out that those variables were in fact used in an exercise. However, in looking this up he noticed a variable-related error in that exercise. Author is credited with 0x$1.00!

3. Exercises are more likely to contain errors and infelicities than the main text. And there are an awful lot of exercises.

4. Knuth includes a whole bunch of stuff in his books that is not related to CS. Lots of weird trivia and references. This stuff is more likely to be wrong than the main text. For example, Knuth mentions "icosahedral objects inscribed with Greek letters" and includes a reference to an article in the Bulletin de l’Institut français du Caire. But the author points out that the article is actually in the Bulletin de l’Institut français d’archéologie orientale. Whoops! 0x$1.00 for you!

dalke 20 hours ago

I found an error in a published version of TAOCP, 2nd edition I think, with improvements on Sieve of Eratosthenes. I was so excited, then found it was already listed in the errata.

I later got a check for identifying a minor issue with the early history of superimposed coding. I happen to have copies of the relevant patent case containing examples predating Mooers' randomized superimposed coding.

("Happened to" because I had visited the Mooers archive at the Charles Babbage Institute in Minnesota to research some of the early history of chemical information management. Mooers is one of the "fathers" of information retrieval, and in fact coined the term "information retrieval" at a chemistry conference.)

Tomte 20 hours ago

Don't make assumptions about what parts must have been combed through so much that there is no chance of finding annerror.

I found one and got my cheque on page Arabic one in one of his books. Paragraph one. First sentence. The very first word.

eigenvalue 17 hours ago

Was it the word “the” instead of “a”? Trying to think what else it could even be.

svat 15 hours ago

fc417fc802 4 hours ago

It's amusing that the same two commenters have essentially the same two comments side-by-side in both threads, years apart.

hinkley 17 hours ago

Knuth has the Pablo Picasso’s Dinner Bill “Problem” and so can afford to be generous.

Picasso used to dine and dash as it were by drawing a doodle on the back of his check when the bill came due, and often enough the owner would choose to frame the check instead of cash it.

For a long time most of the cost of writing checks to Knuth is the writing of the checks, not the cashing of them. He’s paying for X00 checks at a time and the energy to fill them out. And anyone who had gotten their first check from him would not cash it.

Though these days I can cash a check via a phone app and so I don’t need to forfeit the check to get the money.

fastasucan 17 hours ago

>Though these days I can cash a check via a phone app and so I don’t need to forfeit the check to get the money.

Its incredible that both of these technologies is in active use at the same time.

bombcar 15 hours ago

They’re not “real” checks anymore (unless you insist) because of check fraud issues. Bank of San Serif isn’t a real bank.

hinkley 14 hours ago

My bank knows where I live and if I start cashing fake checks they know where to send the FBI.

Even in the old paper days banks where a little hesitant to let me come into your bank with a check from you and cash it without me also being a customer of that same bank. In theory you could do it, but sometimes if you tried you got the runaround.

bombcar 14 hours ago

You can still wreak havoc with the account and routing numbers if you want to - it gets reversed when noticed which is why people still do it - sometimes it’s not noticed.

zozbot234 16 hours ago

> ... includes a reference to an article in the Bulletin de l’Institut français du Caire. But the author points out that the article is actually in the Bulletin de l’Institut français d’archéologie orientale. Whoops! 0x$1.00 for you!

I do wonder whether this is more likely to be a case where the journal actually changed its name over time (perhaps because the Institut itself did) and then made the older papers available under the new name - which would mean both references are ultimately correct.

skissane 16 hours ago

I don't think so. The article links to an image of the 1930 journal article – https://gallica.bnf.fr/ark:/12148/btv1b53180372w – it doesn't look like it has been republished, it looks like something close to the original publication

I don't completely know what is going on here, but I guess it is something like this: the institute has since 1898 officially been called Institut français d'archéologie orientale, and its journal has always officially been called Bulletin de l'Institut français d'archéologie orientale. However, historically, people would sometimes add du Caire (in Cairo) to the institute's name (to specify its location) – this habit was supported by the history that, prior to 1898, the institute (or its predecessor) was called École française du Caire (French School of Cairo) – and then unofficially abbreviate it from Institut français d'archéologie orientale du Caire to Institut français d'archéologie du Caire or even Institut français du Caire. And since the journal is named for the institution, once people got in the habit of unofficially abbreviating the name of the institution, they applied the same habit to the journal.

So Bulletin de l’Institut français d’archéologie orientale has always been the official name of the journal, but Bulletin de l’Institut français du Caire is a historical unofficial alternative name.

As I said, I'm just speculating, I don't really know. But this seems more plausible to me than the journal or institute changing its name, because I can't find any evidence of any name change since 1898, which was long before the publication of the 1930 article.

jll29 20 hours ago

I've emailed DEK to point out that the first person to break Enigma was not actually Alan M. Turing (as stated in one of the recent pre-fascicles) but the Polish mathematician Marian Rejewski (Turing's contribution was to automate the task, which was important because the rotors/settings were reconfigured by the German Wehrmacht every morning).

Bletchley Park now has a prominent bust of Rejewski that credits his accomplishment. The Polish wisely passed on their knowledge to the British to keep the intel safe, because they expected a German invasion.

On another note, I hope Professor Knuth has a continuity plan in place that ensures that his book series gets completed despite his advanced age (I'm worried about that, but tact prohibited me from asking, of course).

rgmerk 12 hours ago

The book series will never be completed, and wouldn't be if Knuth lives to 120.

And that's perfectly fine.

WillAdams 19 hours ago

Given his quite healthy lifestyle, I believe that we should be okay on that latter front --- I certainly hope so.

irrational 18 hours ago

It's not his lifestyle I'm worried about. There was a healthy youtuber who made videos about wilderness survival who was killed when he was rear ended by a drunk driver while stopped at a red light (the drunk driver, of course, survived). It's all the morons around Knuth I'm worried about.

ks2048 13 hours ago

I hate to be morbid and I wish him a long life, but at age 87, I don’t think drunk drivers are his biggest risk.

jgrahamc 21 hours ago

I have a Knuth cheque from back when he sent out real cheques. Or at least I did; for some reason I decided that cashing it was a good idea and so I have his note back to me and a photocopy of the actual cheque.

tkhattra 16 hours ago

I have one for $7.68 ($2.56*3). Alas, it was for some minor typos and grammatical errors in SPOCS [1], not "real" math errors in TAOCP. Never plan on cashing it in though. And I can't remember where I stashed it, so there's that too... :)

[1] https://www-cs-faculty.stanford.edu/~knuth/cs.html

cinntaile 17 hours ago

lol I'm a bit curious about the thought process that led you to decide you wanted to cash it.

secondcoming 21 hours ago

Aren't the cheques for $2.56?

hinkley 17 hours ago

Why am I just now having this thought?

He should make them $5.12 so it’s a check for 1,000,000,000 cents, instead of 100,000,000.

rdlw 15 hours ago

They're hexadecimal; 100 cents in a dollar.