CS 70 at UC Berkeley

# Discrete Mathematics and Probability Theory

Lecture: TTh 12:30pm-2pm, Zoom

## Professor Satish Rao

satishr (at) cs (dot) berkeley (dot) edu

Office Hours: Monday 3-4++. And by appointment. Also Wednesday, Feb 10, 4-5++. See Piazza @7 for zoom link.

## Professor Shyam Parekh

spparekh (at) berkeley (dot) edu

Office Hours: Tuesday 2-3. And by appointment.

### Week 0 Overview

## Propositional Logic

### Week 1 Overview

## Induction, Stable Matching

### Week 2 Overview

## Graph Theory

### Week 3 Overview

## Modular Arithmetic

### Week 4 Overview

## Public Key Cryptography, Polynomials

### Week 5 Overview

## Error Correcting Codes, Counting

## Notes

There is no textbook for this class. Instead, there is a set of comprehensive lecture notes. Make sure you revisit the notes after every lecture. Each note may be covered in one or more lectures.

Megan says, “When I took the course, I studied the notes until I was able to comfortably reproduce all of the proofs.

See Policies for more information.- Note 0: Sets and Mathematical Notation
- Note 1: Propositional Logic
- Note 2: Proofs
- Note 3: Induction
- Note 4: Stable Matching
- Note 5: Graph Theory
- Note 6: Modular Arithmetic
- Note 7: Modular Arithmetic: FLT, RSA
- Note 8: Polynomials and Secret Sharing
- Note 9: Error Correcting Codes
- Note 10: Counting

## Discussions

Discussions will be held over Zoom. The discussion sections are specifically designed to consolidate the material covered in lectures and in the notes. It is highly recommended that you attend all discussions each week. You should attend the discussion that you signed up for, since attendance for that discussion will be graded. All sections are equivalent: they all cover the same material. See Policies for more information.

- Discussion 0a: Introduction, Logic (solution)
- Discussion 0b: Proofs (solution)
- Discussion 1a: Induction (solution)
- Discussion 1b: Stable Matching (solution)
- Discussion 2a: Graphs I (solution)
- Discussion 2b: Graphs II (solution)
- Discussion 3a: Modular Arithmetic I (solution)
- Discussion 3b: Modular Arithmetic II (solution)
- Discussion 4a: RSA (solution)
- Discussion 4b: Polynomials, Secret Sharing (solution)
- Discussion 5a: Error Correcting Codes (solution)
- Discussion 5b: Counting I

## Homeworks

There will be weekly required homeworks, again designed to consolidate your understanding of the course material. It is highly recommended that you attempt all homeworks. Your lowest two homework scores will be dropped, but this drop should be reserved for emergencies. No additional allowances will be made for late or missed homeworks: please do not contact us about missed homeworks or late submissions. See Policies for more information.

- HW 0: Logistics and Review (Sol)
- HW 1: Proofs and Induction (Sol)
- HW 2: Stable Matching and Graph Theory (Sol)
- HW 3: Graph Theory and Modular Arithmetic (Sol)
- HW 4: Modular Arithmetic and RSA (Sol)
- HW 5: Polynomials and Error Correcting Codes

## (Tentative) Lecture Schedule

- Lecture 1 : Introduction & Logic. Slides: (full) (6up) ( Note 1)
- Lecture 2 : Proofs, maybe induction. Slides: (full) (6up) ( Note 2 Note 3)
- Lecture 2 : Proofs, maybe induction. Slides: (full) (6up) ( Note 2 Note 3)
- Lecture 3 : Induction. Slides: (full) (6up) ( Note 3)
- Lecture 4 : Stable Matching. Slides: (full) (6up) ( Note 4)
- Lecture 5 : Graphs. Slides: (full) (6up) ( Note 5)
- Lecture 6 : Graphs. Slides: (full) (6up) ( Note 5)
- Lecture 7 : Finish Graphs, Modular Arithmetic. Slides: (full) (6up) ( Note 6)
- Lecture 8 : Modular Arithmetic: Extended gcd, CRT, FLT. Slides: (full) (6up) ( Note 6 Note 7)
- Lecture 9 : Cryptography. Slides: (full) (6up) ( Note 7)
- Lecture 10 : Polynomials. Slides: (full) (6up) ( Note 8)
- Lecture 11 : Error Correction. Slides: (full) (6up) ( Note 9)
- Lecture 12 : Counting. (Draft) Slides: (full) (6up) ( Note 10)