- Graph Theory
- Number Theory
- Cryptography
- Probability
- Mathematical Induction
- Proof Theory
- Discrete Mathematics
- Mathematical Logic
- Random Variable
- Probability Interpretations
- Combinatorics
- Modular Exponentiation
Introduction to Discrete Mathematics for Computer Science Specialization
Learn the language of Computer Science. Learn the math that defines computer science, and practice applying it through mathematical proofs and Python code
Offered By
Skills you will gain
About this Specialization
Applied Learning Project
We’ll implement together an efficient program for a problem needed by delivery companies all over the world millions times per day — the travelling salesman problem. The goal in this problem is to visit all the given places as quickly as possible. How to find an optimal solution to this problem quickly? We still don’t have provably efficient algorithms for this difficult computational problem and this is the essence of the P versus NP problem, the most important open question in Computer Science. Still, we’ll implement several efficient solutions for real world instances of the travelling salesman problem. While designing these solutions, we will rely heavily on the material learned in the courses of the specialization: proof techniques, combinatorics, probability, graph theory. We’ll see several examples of using discrete mathematics ideas to get more and more efficient solutions.
Could your company benefit from training employees on in-demand skills?
Try Coursera for BusinessCould your company benefit from training employees on in-demand skills?
Try Coursera for BusinessHow the Specialization Works
Take Courses
A Coursera Specialization is a series of courses that helps you master a skill. To begin, enroll in the Specialization directly, or review its courses and choose the one you'd like to start with. When you subscribe to a course that is part of a Specialization, you’re automatically subscribed to the full Specialization. It’s okay to complete just one course — you can pause your learning or end your subscription at any time. Visit your learner dashboard to track your course enrollments and your progress.
Hands-on Project
Every Specialization includes a hands-on project. You'll need to successfully finish the project(s) to complete the Specialization and earn your certificate. If the Specialization includes a separate course for the hands-on project, you'll need to finish each of the other courses before you can start it.
Earn a Certificate
When you finish every course and complete the hands-on project, you'll earn a Certificate that you can share with prospective employers and your professional network.

Offered by

Frequently Asked Questions
What is the refund policy?
Can I just enroll in a single course?
Is financial aid available?
Can I take the course for free?
Is this course really 100% online? Do I need to attend any classes in person?
How long does it take to complete the Specialization?
What background knowledge is necessary?
Do I need to take the courses in a specific order?
Will I earn university credit for completing the Specialization?
More questions? Visit the Learner Help Center.