Discrete Mathematics: An Open Introduction is a free, open source textbook appropriate for a first or second year undergraduate course for math and computer science majors. The book is especially well-suited for courses that incorporate inquiry-based learning. Since Spring 2013, the book has been used as the primary textbook or a supplemental resource at more than 200 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.
Download === https://byltly.com/2yN7wy
This 3rd edition brings many improvements, including nearly 100 new exercises (including many interactive exercises providing instant feedback), 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.
Online homework sets are available through Runestone Academy (free), Edfinity (inexpensive) or as WeBWorK sets from the author (the WeBWorK exercises are available in the Contrib folder of the OPL as well).
Please contact the author with feedback and suggestions, or if you are decide to use the book in a course you are teaching. You can also easily submit feedback about an error or typo by creating a GitHub issue.
The entire book is available for free as an interactive online ebook. This should work well on all screen sizes, including smart phones, and work will with screen readers for visually impaired students. 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. There is also a cheap Kindle version available; it works great on Android tablets; unfortunately it seems the math does not render well on Amazon's e-ink readers.
There are a number of videos instructors have made for classes they taught using the book. Check out the playlists below. If you make videos or know of others, please share them.
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.
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. Originally designed to support future math teachers, the text has a friendly and informal tone, and puts an emphasis on understanding the included concepts, rather than simply memorizing procedures. The book has also been successfully used in courses catering to computer science students, who also benefit from the deeper understanding it promotes.
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.
Oscar Levin is a professor at the University of Northern Colorado. He has taught mathematics and computer science at the college level for over 15 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.
Course Description: This course is an introduction to discrete mathematics for students majoring in computer-related areas. Students will be introduced to concepts and methods that are essential to theoretical computer science. A strong emphasis is placed on mathematical reasoning and proofs. Topics include sets, functions, induction, recursion, combinatorics and graphs. Students must have sufficient mathematics placement exam score.
Prerequisites: ACT Math 23 or MyMathTest 080 or MA 113 Minimum Grade of C or MA 115 Minimum Grade of C.
Learning Objectives:
Learning the mathematical concepts and methods that are essential to theoretical computer science. Objects of study include sets, strings, functions and graphs. Methods include induction and recursion with an introduction to closed form solutions.
CS 20 is far less concerned with teaching students a certain list of material than it is with teaching students the skill and process of solving problems in discrete mathematics. We aim to teach you how to think mathematically: how to reason about mathematical structures and to make arguments that will withstand skepticism. As a CS 20 student, your objective is not to get a certain number of problems right, but to be able to explain why problems have the answers that they do.
So while we have a class by class syllabus -- see the course Schedule page -- we may compress or expand it if certain concepts are not sinking in. If we don't quite cover all the material, you will, by the end of the class, be able to pick up the rest on your own, since you will have mastered the art of reading and reasoning about discrete mathematical structures.
Instead of lectures, CS 20 meets only in problem-solving sessions. We meet 3 times a week, MWF 10-11, in a flat-floored classroom with tables and chairs and a whiteboard for each table. The classroom is Pierce 301--on the top floor of Pierce Hall at the south end. A typical class will proceed as follows:
For you as a student, there should be two takeaways. On the plus side, you won't fall asleep in class, you should have fun, and you should learn a lot. On the minus side, don't even think of taking this course if you tend to sleep instead of going to class!
This course is an introduction to the basic ideas of pre-calculus and calculus for the people who need preparation or review before taking more advanced courses. The exact content depends upon the particular needs of those enrolled and the requirements of degree programs they are pursuing. Topics covered will be selected from the following: algebra, functions, and graphs; slopes and secant lines; derivatives; chain rule; optimization; curve sketching; integration; the exponential and natural logarithm; and probability density functions and integration by parts.
Topics include basic discrete probability, including urn models and random mappings; a brief introduction to information theory; elements of number theory, including the prime number theorem, the Euler phi function, the Euclidean algorithm, and the Chinese remainder theorem; and elements of abstract algebra and finite fields including basic fundamentals of groups, rings, polynomial rings, vector spaces, and finite fields. Carries credit toward the Applied Mathematics degree only when followed by CS 668. Recommended for high-level undergraduate students.
Elementary mathematical techniques important to applied mathematics. Topics covered include review of functions and continuity; ordinary and partial derivatives; integration; ordinary and partial differential equations; infinite series and numerical techniques for solving differential equations; and multiple integration and surface integrals. Applications to problems of applied mathematics are given where feasible.
This course is primarily for students interested in using numerical methods to solve problems in mathematics, science, engineering, and management. Computational projects will be a significant part of this course and it is expected that students already have experience programming in at least one high level language. Standard topics include numerical solutions of ordinary and partial differential equations, techniques in numerical linear algebra, the Fast Fourier Transform, optimization methods, and an introduction to parallel programming. Additional topics will depend on the interests of the instructor and students.
Review of first order and second order constant coefficient differential equations, nonhomogeneous equations; series solutions, Bessel and Legendre functions; boundary value problems, Fourier-Bessel series and separation of variables for partial differential equations; classification of partial differential equations; Laplace transform methods; calculus of variations; introduction to finite-difference methods.
Sample space, events, and probability; basic counting techniques and combinatorial probability; random variables, discrete and continuous; probability mass, probability density, and cumulative distribution functions; expectation and moments; some common distributions; jointly distributed random variables, conditional distributions and independence, bivariate normal, and transformations of variables; and Central Limit Theorem. Some additional topics may include an introduction to confidence intervals and hypothesis testing.
b1e95dc632