CS 201: Mathematics for Computer Science

### Announcements:

- The list of projects .

### 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

- Discrete Mathematics and its Applications, K H Rosen.
- Discrete Mathematics, N L Biggs.

### Combinatorics

- Combinatorics: Topics, Techniques, Algorithms, Peter Cameron.
- A Course in Combinatorics, J H van Lint and R M Wilson.

### Number Theory

- Discrete Mathematics, N L Biggs.
- Introduction to Theory of Numbers, I Niven and H Zuckerman.
- An Introduction to the Theory of Numbers, G H Hardy and E M Wright.

### Probability

- A first course in Probability, S Ross.
- Elementary Probability, D Stirzaker.
- Understanding Probability, H Tijms.
- The Probabilistic Method, N Alon and J Spencer.

### Others

- Concrete Mathematics: A Foundation for Computer Science, R Graham, D Knuth and O Patashnik.