Concrete Mathematics: A Foundation for Computer Science (2nd Edition)

Concrete Mathematics: A Foundation for Computer Science (2nd Edition)

2nd Edition
672
English
0201558025
9780201558029
28 Feb

This book introduces the mathematics that supports advanced computer programming and the analysis of algorithms. The primary aim of its well-known authors is to provide a solid and relevant base of mathematical skills - the skills needed to solve complex problems, to evaluate horrendous sums, and to discover subtle patterns in data. It is an indispensable text and reference not only for computer scientists - the authors themselves rely heavily on it! - but for serious users of mathematics in virtually every discipline.

Concrete Mathematics is a blending of CONtinuous and disCRETE mathematics. "More concretely," the authors explain, "it is the controlled manipulation of mathematical formulas, using a collection of techniques for solving problems." The subject matter is primarily an expansion of the Mathematical Preliminaries section in Knuth's classic Art of Computer Programming, but the style of presentation is more leisurely, and individual topics are covered more deeply. Several new topics have been added, and the most significant ideas have been traced to their historical roots. The book includes more than 500 exercises, divided into six categories. Complete answers are provided for all exercises, except research problems, making the book particularly valuable for self-study.

Major topics include:

  • Sums
  • Recurrences
  • Integer functions
  • Elementary number theory
  • Binomial coefficients
  • Generating functions
  • Discrete probability
  • Asymptotic methods

This second edition includes important new material about mechanical summation. In response to the widespread use of the first edition as a reference book, the bibliography and index have also been expanded, and additional nontrivial improvements can be found on almost every page. Readers will appreciate the informal style of Concrete Mathematics. Particularly enjoyable are the marginal graffiti contributed by students who have taken courses based on this material. The authors want to convey not only the importance of the techniques presented, but some of the fun in learning and using them.

Reviews (81)

Don't buy the Kindle version

The kindle version is borderline unusable. Should have known better that to buy the kindle version a math book where layout actually matters. Still, I'm surprised by how poor the quality is. I can understand layout not being quite right, but I'm shocked by the number of typos, missing characters, extra characters that appear to be format characters, missing line breaks, and apparently there's an issue formatting double and single quotes where the opening quote is usually a backslash \. If you're going to publish a kindle version of your book. Have enough respect for your readers to make it "readable".

A Path to Redemption for a CS State Schooler

I originally bought this book as a source of remedial study following the end of my US state school CS undergrad experience (I completed a BS Computer Science in 2013, > 3.5 GPA), and as preparation for V1 & V4 of TAOCP. I use the word remedial here in the sense that I felt that I was missing a critical foundation in the mathematical analysis and derivation of algorithms, even after the course-work of that degree. I've done 3 chapters of it in full, and I will mention a number of things that other reviews haven't talked about. Due to the horrendous time commitment of this book, I strongly suspect this is because those reviewers haven't actually worked through it, and have instead chosen to skim and allow Knuth fanboyism, along with the desire for mutual association, to cloud their opinions. I'm revoking a star simply to balance those reviews out, and so that graduates in similar situations have an actual informed critical opinion of this book to find among the reviews. Take-Aways (As of Ch 3): There are many aspects of summations, integer functions, and proofing that: I never saw covered in my CS degree, are unforgettable, and can be immediately applied to most algorithm research. Those alone make this book worth every penny. Further, the problems posed by this book are more than just repeated mechanics, as I have seen in books like those mentioned below. Each problem is carefully chosen, thorough, and exposes multiple aspects of each topic. They really do weed out many faults that I wasn't really exposed to- as a small example: the importance of ensuring validity of n-1 and n-2 hypothesis & base cases during an induction proof. The Bad: Students educated through a contemporary CS track at most American uni's, I believe, (e.g. Rosen Discrete Math, Cormen Algorithms) will find this book both terrifyingly terse and frustratingly paced. In many cases, examples are given without derivation. In many cases, important points are made without obvious connection to previous topics. This is not without a solution however, and getting through this book is often an acquired technique of paper noting things as-you-go, as well as a learned hyper-literacy. The terseness is also a double-edged sword, as sometimes I found it useful as an extra opportunity to practice the taught methods to see if I could come to the same result. Further, the reader should be prepared to go back and review propositional logic & university calculus theorems (atleast FTC, definite vs indefinite integrals). For example, the description of sum by parts in the section on finite calculus assumes _much_ from the reader, and being able to use university calc. as a point of reference to get through that is helpful. A lot of exercises are tersely explained in both problem and solution. Further, many solutions are totally left-field (having little to do with material in the book). This isn't necessarily bad, as even taking the wrong path to a solution is very educational. However, at some point the reader has to make a judgment as to how long to commit to a certain problem. Many terse problems & left-field solutions instill the wrong judgment: quitting too early. Conclusion: Attention to detail & extra work is necessary to overcome the terseness of this particular beast, but it's worth it. I recommend this book for developers confronted with algorithm optimization problems, as a well as for a different take on parts of discrete math, and definitely for students coming out of a US state school CS program, the last which this book complements very well. Having worked through some of V1 TAOCP, I would also say that the book is effective in expanding upon its math underpinnings (V1 at-least), and incidentally, does give one confidence to tackle Knuth's other works.

Do not buy the Kindle edition

The Kindle edition is unreadable. Ligatures are missing from the text, turning phrases like "first" into "rst". Mathematical notation is turned into gibberish.

Print version is great. Do NOT buy the kindle version

There are so many font and ligature issues in the kindle version of this book, it is virtually unuseable. But the print version is great. Other reviewers take issue with the lack of examples for some of the more advanced topics, and one reviewer attributes other's favorable reviews to Knuth "fan-boy-ism". I feel Knuth is (deservedly) a legend because of the topics he chooses and the detail in which he covers them--not because he always has the best way of presenting the information to students. Even though his books include exercises, I don't consider any of Knuth's books to be good textbooks and I am glad I never had to take a course where any of his books were used as the main text. I have been writing scientific applications software for over forty years, and Knuth's books have proven to be extremely valuable reference books for me. Compare the topics covered in Knuth's books to other algorithm books like Sedgwick or Cormen, et al. and you will find lots of useful information that is unique to Knuth.

Phenomenal introduction to discrete math & asymptotics

This book is classic Knuth: brilliant, comprehensive, inviting, and playful. Highly, highly recommended. This book is ideal for self-study. Material covered includes the basics of discrete math, plus some extras needed for analysis of algorithms. There is an explicit and polemical slant towards a concrete (Knuth calls it 'Eulerian') approach, but this basically just means the emphasis is on explicit calculation and motivating examples, rather than 'elegant' formality and abstraction. In terms of topics, the book starts with a chapter introducing recurrences, then guides the reader through developing familiarity and calculational skill with sums and sigma notation; floors and ceilings; modular arithmetic and a bit of number theory; binomial coefficients and special functions, finally culminating with generating functions, which provide a general framework for solving recurrences encountered in earlier chapters. There are also a couple of chapters on discrete probability and asymptotics, which round out the stated goal of the book: covering preparatory mathematical material needed for the analysis of algorithms in Knuth's Art of Computer Programming. As with TAOCP, the problem sets are as enjoyable and carefully constructed as the exposition, and the solutions are included in the back of the book (about 500 pages of exposition, and about 100 pages of solutions). These problems could easily keep an interested person busy for a lifetime. They are each graded using Knuth's customary scale, and range from the trivially easy to open research problems.

Beautiful book

This is one of the sexiest books I have ever received. It made me super pumped for the class even though the class was the bane of my existence and made me question my life decisions daily the sleek design of this book helped.

This is a very good collegiate level book

This is a very good collegiate level book, but not so great at explaining concepts to the high school level. I bought it intending to use it for high school discrete math class, but it ended up being a bit too compacted an explanation with a bit of an assumption that most discrete math was already known. Great for what it is, but not so great for being able to teach a high school class.

Classic Reference that's Fun!

This book is an expansion of the Preliminary Mathematics section of Book 1 of TAOCP by Knuth. Unlike TAOCP, the tone is much less dense, very relaxed and actually fun to read. Especially the sometimes tangential and sometimes downright funny graffitis. The book is great for self -study. As with TAOCP, problems are graded. Solutions exist to all problems - except research ones- but trying to solve them yourself will be the best way to use this book. Overall, worth every penny. A classic reference and must have.

This is fun stuff. It's an interesting take on discrete math

This is fun stuff. It's an interesting take on discrete math. In fact, it's really not discrete math; in includes discrete math but also includes other elements. I think this is especially good for the CS people, which is actually the intended audience.

This book is the best thing what could happen to me

This book is the best thing what could happen to me. Last few months I'm reading it constantly, doing exercises and understanding better whole math. Graham, Patashnik and Knuth have done great job. Thank you guys!

Related Books

Comments

Popular posts from this blog

Chemical Guys CWS_101 Maxi-Suds II Super Suds Car Wash Soap and Shampoo, Cherry Scent (1 Gal)

China criticized US Covid-19 reports

or you can spend 100$ on a hooker.