This second edition has been extended with substantial new material, and has been revised and updated throughout. It offers three new chapters on expander graphs and eigenvalues, the polynomial method and error-correcting codes. Most of the remaining chapters also include new material, such as the Kruskal—Katona theorem on shadows, the Lovász—Stein theorem on coverings, large cliques in dense graphs without induced 4-cycles, a new lower bounds argument for monotone formulas, Dvir's solution of the finite field Kakeya conjecture, Moser's algorithmic version of the Lovász Local Lemma, Schöning's algorithm for 3-SAT, the Szemerédi—Trotter theorem on the number of point-line incidences, surprising applications of expander graphs in extremal number theory, and some other new results.
The author is a professor at the Goethe Universität Frankfurt and he is also a member of the Vilnius University Institute of Mathematics and Informatics. His main fields of research are theoretical computer science and discrete mathematics, in particular complexity.