Helping Donald Knuth (SS 2017)
Important Dates
- Beginning of March: First meeting
- 01.05.2017: Exercise accepted (requires abstract)
- 02.07.2017: Final version and slides
- 10.-14.07.2017: Talks, 30 min/talk
- 28.07.2017: Final version (including comments from audience) to be sent to Knuth
Contents
In this seminar we are going to check several exercises by Professor
Knuth. Donald E. Knuth (

Volume 6, Fascicle 4 has recently been published as preliminary paperback. The book is about Satisfiability and contains many exercises along with their solutions. On his website Professor Knuth issues the following request:
I worked particularly hard while preparing some of those exercises, attempting to improve on expositions that I found in the literature; and in several noteworthy cases, nobody has yet pointed out any errors. It would be nice to believe that I actually got the details right in my first attempt. But that seems unlikely, because I had hundreds of chances to make mistakes. So I fear that the most probable hypothesis is that nobody has been sufficiently motivated to check these things out carefully as yet. I still cling to a belief that these details are extremely instructive, and I'm uncomfortable with the prospect of printing a hardcopy edition with so many exercises unvetted. Thus I would like to enter here a plea for some readers to tell me explicitly, ``Dear Don, I have read exercise N and its answer very carefully, and I believe that it is 100% correct,'' where N is one of the following exercises in Volume 4 Fascicle 6:
6: Establish a (previously unpublished) lower bound on van der Waerden numbers W(3,k)
57: Find a 6-gate way to match a certain 20-variable Boolean function at 32 given points
68: Encode the Life transition function in a small number of clauses
74: Prove that finite mobile flipflops in Life have many forbidden configurations
165: Devise an algorithm to compute the largest positive autarky of given clauses
177: Enumerate independent sets of flower snark edges
204: Construct difficult 3SAT instances with N variables and at most (4/3)N clauses
212: Prove that partial latin square construction is NP-complete
215: Analyze a simple backtrack algorithm on random 3SAT instances
237: Establish the pigeonhole principle efficiently using extended resolution
245: Prove that Tseytin's unsatisfiable graph-parity clauses make CDCL solvers take exponential time
246: But those clauses can be refuted efficiently with (clairvoyant) extended resolution
257: Find an efficient way to remove redundant literals from learned clauses
283: Find a linear certificate of unsatisfiability for the flower snark clauses
304: Analyze the exact running time of random-walk algorithms on a particular 2SAT problem
306-308: Study the reluctant doubling strategy of Luby, Sinclair, and Zuckerman
318: Find the best possible Local Lemma for d-regular dependency graphs with equal weights
322: Show that random-walk methods cannot always find solutions of locally feasible problems using independent random variables
335: Express the Möbius series of a cocomparability graph as a determinant
339: Relate generating functions for traces to generating functions for pyramids
347: Find the best possible Local Lemma for a given chordal graph with arbitrary weights
356: Prove the Clique Local Lemma
363: Study the stable partial assignments of a satisfiability problem
374: Design efficient data structures for the preprocessing of SAT clauses
386: Prove that certain CDCL solvers will efficiently refute any clauses that have a short certificate of unsatisfiability
399: Compare preclusion clauses to support clauses for constraint satisfaction problems
409: Find optimum makespans for certain open shop scheduling problems
428: Show that Boolean functions don't always have forcing representations of polynomial size
442-444: Study the UC and PC hierarchy of progressively harder sets of clauses
518: Reduce 3SAT to testing the permanent of a {-1,0,1,2} matrix for zero
Please don't be alarmed by the highly technical nature of these examples; more than 100 of the other exercises are completely non-scary, indeed quite elementary. But of course I do want to go into high-level details also, for the benefit of advanced readers; and those darker corners of my books are naturally the most difficult to get right. Hence this plea for help. Remember that you don't have to work the exercise first. You're allowed to peek at the answer; in fact, you're even encouraged to do so. Please send success reports to the usual address for bug reports (taocp@cs.stanford.edu), if you have time to provide this extra help. Thanks in advance!
Material
TAOCP Volume 6, Fascicle 4 can be found in the computer science library. An earlier draft can be found in the archive of Knuth's website.Rules
In order to help Don Knuth, each participant is required to select at
least one of the above exercises. She then proceeds to write a short
proposal outlining the background, question and answer to be presented.
These proposals are reviewed by the staff and may be rejected, accepted
or accepted subject to conditions. The process will be visualized on
this website by signs attached to the topics meaning



Finally, the seminar itself will be held in compact form. During the event, each student presents his topic, the posed question and its answer and proposes a verdict concerning Professor Knuth's version. The other participants then vote whether or not to follow this advice. Opposers will demand clarification from supporters until the audience comes to an unanimous verdict. In this case, randomly selected students will be asked to substantiate their opinion. Thus, by preparation and discussion, everyone should in the end be convinced that the group may give a reasonable statement about the quality of the exercises in question.