Description
Book SynopsisThis textbook is designed for undergraduate students taking a course on the mathematical foundations of computer science. It is written from an exclusively CS perspective rather than for a mixed-discipline audience, helping CS students see the ways that foundational mathematical material is central to the discipline of computer science.
Trade Review'Finally! I've spent years struggling to find a textbook that makes the topic of Discrete Structures relevant to Computer Science students, David Liben-Nowell has put forth a book that will make CS students invested in the material. He not only connects every topic to Computer Science but does so in a clear and entertaining way.' Dan Arena, Vanderbilt University
'Unlike most discrete math texts, here the computer science content and connections are woven extensively throughout, with “forward pointers” that can excite students about numerous computer science areas they will encounter in their future studies. In addition, the book is written TO students, not FOR faculty. It will be a joy to teach with!' Valerie Barr, Mount Holyoke College
'By foregrounding the connections between the fields, this outstanding textbook makes a compelling case for why computer science students should embrace the study of discrete mathematics. This is an approachable yet rigorous book, written with wit and verve, that I look forward to teaching from!' Raghuram Ramanujan, Davidson College
'David Liben-Nowell's Connecting Discrete Mathematics and Computer Science provides students with a beautifully motivated, clearly written, and accessible exploration of the mathematical foundations of computer science. The “Computer Science Connections” sections provide compelling applications of the mathematical content and the frequent “Taking in further” notes provide extra richness that add to the joy of the experience. This is a discrete math book that truly keeps the reader engaged!' Ran Libeskind-Hadas, Founding Chair of Integrated Sciences, Claremont McKenna College
'An inspired approach to the introductory discrete math course, illuminating the aesthetic appeal of the subject together with the profound and inextricable links that connect it to the core ideas of computing.' Jon Kleinberg, Cornell University
Table of Contents1. On the point of this book; 2. Basic data types; 3. Logic; 4. Proofs; 5. Mathematical induction; 6. Analysis of algorithms; 7. Number theory; 8. Relations; 9. Counting; 10. Probability; 11. Graphs and trees; 12. Looking forward.