Discrete Mathematics: An Open Introduction is a free, open source textbook appropriate for a first or second year undergraduate course for math majors, especially those who will go on to teach. Since Spring 2013, the book has been used as the primary textbook or a supplemental resource at more than 75 colleges and universities around the world (see the partial adoptions list). The text is endorsed by the American Institute of Mathematics' Open Textbook Initiative and is well reviewed on the Open Textbook Library.
This 3rd edition brings many improvements, including nearly 100 new exercises, a new section on trees in the graph theory chapter, and improved exposition throughout. Previous editions will continue to be available indefinitely. A few times a year, the text is updated with a new "printing" to correct errors. See the errata list for more information.
New for Fall 2019: Online homework sets are available through Edfinity or as WeBWorK sets from the author. Additional exercises have been added since Spring 2020.
Please contact the author with feedback and suggestions, or if you are decide to use the book in a course you are teaching.
The entire book is available for free as an interactive online ebook. This should work well on all screen sizes, including smart phones. Hints and solutions to examples and exercises are hidden but easily revealed by clicking on their links. Some exercises also allow you to enter and check your work, so you can try multiple times without spoiling the answer.
For offline use, a free pdf version, suitable for reading on a tablet or computer, is available for download. This should be searchable and easy to navigate using embedded links. Hints and solutions (when available) can be accessed by clicking on the exercise number, and clicking on the number of the hint or solution will bring you back to the exercise.
If you prefer a physical copy, an inexpensive print version of the text is available on Amazon. This should be cheaper than printing the entire book and binding it yourself. Page numbers match the pdf version.
The source files for this book are available on GitHub.
If you are using the book in a class you are teaching, instructor resources are available by request. Just contact the author. You can also request WeBWorK homework sets if you have access to a WeBWorK server (otherwise, consider using the reasonably priced Edfinity).
The text began as a set of lecture notes for the discrete mathematics course at the University of Northern Colorado. This course serves both as an introduction to topics in discrete math and as the "introduction to proofs" course for math majors. The course is usually taught with a large amount of student inquiry, and this text is written to help facilitate this.
Four main topics are covered: counting, sequences, logic, and graph theory. Along the way, proofs are introduced, including proofs by contradiction, proofs by induction, and combinatorial proofs. An introductory chapter covering mathematical statements, sets, and functions helps students gain familiarity with the language of mathematics, and two additional topics (generating functions and number theory) are also included.
While the book began as a set of lecture notes, it now contains a number of features that should support its use as a primary textbook:
Oscar Levin is an associate professor at the University of Northern Colorado. He has taught mathematics at the college level for over 10 years and received multiple teaching awards. He received his Ph.D. in mathematical logic from the University of Connecticut in 2009.
Discrete Mathematics: An Open Introduction by Oscar Levin is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License. You are free to download, use, print, and even sell this work as you wish to. You can also modify the text as much as you like (create a custom edition for your students, for example), as long as you attribute the parts of the text you use to the author.
If you are interested in using parts of the book combined with another text with a similar but different license (GFDL, for example), please reach out to get permission to modify the license.