
Donald Knuth turns 80, seeks problem-solvers for The Art of Computer Programming - MilnerRoute
https://developers.slashdot.org/story/18/01/21/1853236/donald-knuth-turns-80-seeks-problem-solvers-for-taocp
======
andrewjrangel
I am sure this is controversial, but how many people have actually read these
books? It's unfortunate because they are held in high regard, but the impact
seems reduced for what it could be. I definitely could be wrong. I would love
to at least peruse through them, but they seems to be hard to find as a full
set at a decent price.

~~~
tptacek
I don't "read" "them", but I dive into sections haphazardly and read them for
pleasure; they're invariably rewarding. Like a textbook, you can (and probably
should) build a syllabus out of parts of the books, rather than plowing
through them in a straight line.

~~~
tzs
You almost certainly already know this, but this is a good place to mention it
for those who might not: when reading these books for pleasure or personal
interest, as opposed to just trying to get an answer to "I need to do X...what
should I do?", don't overlook earlier editions.

These books are not like too many textbooks today, where new editions are
largely minor tweaks and maybe some changed exercises in order to make it
harder for students to get by with used copies from prior years.

With Knuth, a new edition means there have been many very significant changes.
Whole new algorithms are added, and older ones are dropped.

For example, the section on arbitrary precision integer multiplication in
Volume II underwent major changes from 1st to 2nd edition, and even bigger
changes from 2nd to 3rd edition.

If you just need to implement arbitrary precision multiplication, 3rd edition
is for you. But if arbitrary precision multiplication is something that is
interesting enough to you that you are actually studying it for fun, you'll
probably want all three editions of Volume II.

~~~
wglb
Additionally, the difficulty points on some problems changed as new proofs
were discovered. In particular, Fermat's last theorem went from M50 (math
required, Research problem) to HM45 (Higher math required, more than a team
project but less than a Research problem).

Additionally, somewhere along the way, the marvelous tape sorting fold out
pages have dissappeared from the Sorting and Searching volume.

~~~
PhantomGremlin
It's been 40 years or so since I read TAOCP in any depth. But you seem pretty
familiar with it, so I'll ask you the following, maybe you remember:

I think it was somewhere in Volumes 1, 2 or 3 (but maybe an entirely different
book not even by Knuth) where one of the exercises says something like:

19\. M50 _...solve this quite complex problem ..._. For the instructor who
assigns all odd numbered exercises.

A little bit of humor in an otherwise quite dry set of books.

~~~
wglb
I am familiar with some sections of it.

I don't remember that particular one, but there are odd bits of humor
throughout his work. "MIX is the world's first polyunsaturated computer."

Browsing through it again, I see a reference in section 1.2.8 about Fibonacci
numbers, problem 37 references a paper by R. E. Gaskell and M. J. Whinihan. I
worked with Mike Whinihan in a previous lifetime. He got his PhD in economics
at U of Chicago in just three years, to the dismay of his classmates. He wrote
that paper "Fibonacci Nim" when he was in High School. And looking at the
beginning of Chapter 2 "Information Structures" he mentions structures in
"algebraic language like FORTRAN, C, or Java" (third edition). In the first
edition, neither C nor Java had yet been invented.

------
Lxr
> I fear that the most probable hypothesis is that nobody has been
> sufficiently motivated to check these things out carefully as yet.

For some motivation, you might still get a check from Knuth if you find an
error.
[https://en.wikipedia.org/wiki/Knuth_reward_check](https://en.wikipedia.org/wiki/Knuth_reward_check)

~~~
jimhefferon
It is not a real check. It is for putting on your wall.

~~~
jimktrains2
Well, that's because our banking system is terrible and because showing off a
knuth check is worth more than cashing it, people shared pictures of said
checks which allowed check fraud.

~~~
Waterluvian
Don't people cash cheques by taking photos of them? Or is that a Canadian
thing? (Ie. Can't you do both?)

~~~
Redoubts
Yes

------
utopcell
For people that complain that TAOCP is too expensive: All volumes can be
freely read on Safari books, which is free if you are an ACM member.

~~~
wodenokoto
50 usd for a hard cover text book isn't exactly expensive

[https://www.amazon.com/Art-Computer-Programming-Vol-
Fundamen...](https://www.amazon.com/Art-Computer-Programming-Vol-
Fundamental/dp/0201896834/ref=pd_sim_14_5?_encoding=UTF8&pd_rd_i=0201896834&pd_rd_r=48VDSXZWRGFPJFX7ARX8&pd_rd_w=aW0lg&pd_rd_wg=aM220&psc=1&refRID=48VDSXZWRGFPJFX7ARX8)

~~~
utopcell
Agreed.

------
mathgenius
Is volume 4, fasicle 6 available for download, or do we need to buy the book
itself?

I'm very interested in SAT solvers, as this has deep connections to
statistical mechanics and condensed matter physics.

~~~
svat
It is independently available as a paperback, but also the "pre-fascicle"
(draft version) is available for download: [http://www-cs-
faculty.stanford.edu/~knuth/fasc6a.ps.gz](http://www-cs-
faculty.stanford.edu/~knuth/fasc6a.ps.gz) or click on 6A at
[http://www.cs.utsa.edu/~wagner/knuth/](http://www.cs.utsa.edu/~wagner/knuth/)
specifically:
[http://www.cs.utsa.edu/~wagner/knuth/fasc6a2015.09.23.pdf](http://www.cs.utsa.edu/~wagner/knuth/fasc6a2015.09.23.pdf)

His programs (SAT solvers) are also available on his site at
[https://cs.stanford.edu/~knuth/programs.html](https://cs.stanford.edu/~knuth/programs.html)
(They are in CWEB and you'll have to use cweave and ctangle to read and run
those programs respectively; if you just want to read I've typeset them here:
[https://github.com/shreevatsa/knuth-literate-
programs/tree/1...](https://github.com/shreevatsa/knuth-literate-
programs/tree/1b86fdc/programs))

Knuth has also given a couple of talks about satisfiability around the time he
wrote the book:

\-
[https://www.pathlms.com/siam/courses/3028/sections/4140/vide...](https://www.pathlms.com/siam/courses/3028/sections/4140/video_presentations/31340)
(July 2016, at SIAM Annual Meeting)

\-
[https://www.youtube.com/watch?v=g4lhrVPDUG0](https://www.youtube.com/watch?v=g4lhrVPDUG0)
(December 2016, at Brown University)

Look at
[https://cs.stanford.edu/~knuth/news16.html#lectures](https://cs.stanford.edu/~knuth/news16.html#lectures)
for slides and handouts from these talks.

~~~
lifepillar
I attended one of his talks (but not the ones you mention), during which he
described how he was approaching the topic. He said he was reading the most
important papers on sat problems in chronological order, and implementing each
of the algorithms he found along the way. At the time of the talk, he was
half-way through the ‘80s, IIRC.

A lesson in commitment and perseverance for me. And a very funny talk as well
(Knuth likes jokes!)

