Book
Concrete Mathematics
📖 Overview
Concrete Mathematics combines continuous and discrete mathematics to provide foundational knowledge for computer science and algorithm analysis. The text originated from Donald Knuth's Stanford University course in 1970 and expands on concepts from his series The Art of Computer Programming.
The book covers fundamental mathematical concepts including recurrence relations, generating functions, discrete probability, and asymptotic analysis. Mathematical graffiti - notes from Stanford students who first reviewed the text - appear in the margins, adding context and insights to the core material.
Graham, Knuth, and Patashnik present mathematical concepts with precise notation, introducing widely-adopted conventions like the Iverson bracket and floor/ceiling functions. The book serves as both a standalone text and a companion to more advanced computer science studies.
The work stands as a bridge between pure mathematical theory and practical computer science applications, demonstrating how rigorous mathematical foundations enable the analysis and development of efficient algorithms.
👀 Reviews
Readers consistently note this is a demanding textbook requiring strong mathematical maturity. The detailed margin notes from students add clarity and occasional humor.
Liked:
- Clear explanations of generating functions and recurrence relations
- Problems range from straightforward to challenging
- Student annotations help decode complex concepts
- Precise mathematical language without excessive formality
Disliked:
- Too advanced for beginners in discrete math
- Dense notation can be overwhelming
- Some sections assume significant prior knowledge
- Price is high for students
A common criticism is that the book's difficulty level fluctuates dramatically between sections. One reader noted: "The first chapter lulls you into thinking this will be approachable, then chapter 2 hits like a brick wall."
Ratings:
Goodreads: 4.24/5 (1,047 ratings)
Amazon: 4.4/5 (116 ratings)
Mathematics Stack Exchange users frequently recommend it for advanced undergraduates, but warn it's not suitable as a first discrete math text.
📚 Similar books
Mathematics for Computer Science by Eric Lehman, F Thomson Leighton, Albert R Meyer
This MIT text develops the mathematical tools needed for reasoning about algorithms through foundational concepts like proof techniques, recurrences, and probability theory.
A Course in Combinatorics by J.H. van Lint, R.M. Wilson The text presents discrete mathematics topics through problem-solving and emphasizes connections between combinatorial structures and computer science applications.
generatingfunctionology by Herbert S. Wilf The book provides a thorough treatment of generating functions and their applications in solving recurrence relations and counting problems.
Analytic Combinatorics by Philippe Flajolet, Robert Sedgewick This text connects discrete mathematics to continuous analysis through generating functions and complex analysis to analyze algorithms and data structures.
An Introduction to the Analysis of Algorithms by Robert Sedgewick, Philippe Flajolet The book builds mathematical foundations for analyzing algorithm performance through discrete mathematics, probability theory, and asymptotic methods.
A Course in Combinatorics by J.H. van Lint, R.M. Wilson The text presents discrete mathematics topics through problem-solving and emphasizes connections between combinatorial structures and computer science applications.
generatingfunctionology by Herbert S. Wilf The book provides a thorough treatment of generating functions and their applications in solving recurrence relations and counting problems.
Analytic Combinatorics by Philippe Flajolet, Robert Sedgewick This text connects discrete mathematics to continuous analysis through generating functions and complex analysis to analyze algorithms and data structures.
An Introduction to the Analysis of Algorithms by Robert Sedgewick, Philippe Flajolet The book builds mathematical foundations for analyzing algorithm performance through discrete mathematics, probability theory, and asymptotic methods.
🤔 Interesting facts
🔷 The margin notes called "mathematical graffiti" were actual comments from students who took the original Stanford course, adding a unique interactive element to the textbook.
🔷 Donald Knuth offered a monetary reward ($2.56) to the first person who found each technical, typographical, or historical error in the book—a tradition he maintains for all his publications.
🔷 The word "concrete" in the title is a portmanteau of "continuous" and "discrete" mathematics, reflecting the book's innovative approach to bridging these traditionally separate branches.
🔷 The book uses Graham's number as an example—a number so large that if each digit were written in the smallest physically possible way, the text would still be too large to fit in the observable universe.
🔷 The original Stanford course that inspired the book was titled "Concrete Mathematics," and was created in 1970 specifically to teach mathematical prerequisites for the study of computer algorithms.