Acknowledgments
A textbook is never the work of its authors alone. It stands on a long tradition of teaching, a community of tool-builders, and the generosity of people who chose to give their work away.
The teachers who came before
This book owes an obvious debt to the discrete mathematics texts that defined the field's pedagogy — Kenneth Rosen's comprehensive Discrete Mathematics and Its Applications, Susanna Epp's careful treatment of proof, and especially the free MIT text Mathematics for Computer Science by Eric Lehman, F. Thomson Leighton, and Albert Meyer, whose CS-first spirit this book tries to honor and extend. Where we have done well, we are standing on their shoulders; where we have fallen short, the fault is ours.
The open-knowledge movement
This book is free because we believe foundational knowledge should be. We are grateful to the projects that make open textbooks possible: Project Jupyter and Jupyter Book, the mdBook team, the MathJax and LaTeX communities, and the maintainers of the Python scientific stack — NumPy, SymPy, NetworkX, and Matplotlib — whose libraries turn abstract mathematics into something you can run and see. The Online Encyclopedia of Integer Sequences (OEIS) deserves special mention as a treasure every student of discrete math should know.
The Creative Commons
By releasing this work under CC BY-SA 4.0, we join a community that believes education improves when it is shared and adapted. We thank everyone who builds in the open.
Students and instructors
To the students who will find the typo we missed, the proof that didn't quite land, the explanation that needed one more example: thank you in advance. This book is meant to be improved, and your feedback is the mechanism. To the instructors who adapt it for their classrooms — change it, remix it, make it yours. That is exactly what the license is for.
Future contributors
Finally, to you — reader, learner, and perhaps future contributor. The work of making hard things clear is never finished. We're glad you're here to carry it forward.
Thank you.