CS 201: Mathematics for Computer Science


Course description:

The aim of this course is to learn discrete mathematics . Discrete mathematics is the study of mathematical structures which are discrete (elements have distinct, separate values as opposed to continuous structures). It is very difficult to find a branch in computer science which does not use discrete mathematics.

We will be covering four main topics: proofs, combinaotrics, graph theory and probability. The emphasis will be to learn different concepts and techniques used to prove theorems in computer science. The course will be full of puzzles and examples.

CS 201: Notes

Course notes:

Topic Link
Introduction to discrete mathematics Introduction
Proofs and techniques for proofs Proofs
Counting, Recurrence and Pigeonhole principle Counting
Number Theory, Modular arithmetic Number Theory
Graphs, paths, cycles, adjacency matrix. Graphs
Coloring, matching and planarity Graph Properties
Discrete probability, conditional probability Probability
Random variables, expectations. Random variables
Probability application Probabilistic methods
Quadratic residues and non-residues Quadractic reciprocity

CS 201: References

Discrete Mathematics


Number Theory