CPS 230: Discrete Mathematics

Spring Semester, 2023

Basic Information

Instructor: Kamesh Munagala

Teaching Associate: Alex Chao [ac590 at cs.duke.edu]

Lectures: Tu/Th 10:15 - 11:30am in Bio Sci 111

  • Though attendance is not mandatory, please make an effort to attend lectures.

  • The lectures will be recorded on Panopto and posted on Sakai. We will also post slides for the lectures.

  • Please see Schedule for details.

Recitation: Mondays. Please check your section on DukeHub for details. A version with only problems will be posted before Monday, and an updated version with solutions will be posted by EOD Monday. Attending recitations is mandatory.

Synopsis

The goal of this course is to make you familiar with math needed for Computer Science in general, and algorithm design in particular. You will become proficient in thinking up and writing formal mathematical proofs required for algorithm correctness and analysis; reasoning about graphs, sets, numbers, boolean logic, and probability; and counting techniques that are needed for algorithm analysis.


Though the material will be motivated by algorithms and pseudocode, the course will not have a programming component.

Textbook

We expect you to read the relevant chapter from [LLM] in conjunction with attending the lecture.

[LLM] Mathematics for Computer Science by Eric Lehman, Tom Leighton, and Albert Meyer. (Print version)

The following books are not required, but cover similar material in a more accessible fashion.

[JS] T. Jenkyns and B. Stephenson. Fundamentals of Discrete Mathematics for Computer Science