Lecture 1 | Introduction |
Lecture 2 | Propositional Logic |
Lecture 3 | Predicate Logic |
Lecture 4 | Basic Proof Techniques |
Lecture 5 | Mathematical Induction, Quiz |
Lecture 6 | Strong induction, well-ordering principle, method of invariants |
Lecture 7 | More examples on invariants, introductions to sets, operations on sets |
Lecture 8 | Russell's paradox, Halting Problem, Quiz |
Lecture 9 | Countability, Pigeonhole principle |
Lecture 10 | Pigeonhole Principle, GCD |
Lecture 11 | GCD, Modular arithmetic |
Lecture 12 | Multipicative inverse, checksum, Quiz |
Lectures 13,14,15,16 | Fermat's Lemma, Chinese Remainder Theorem, Cryptography, Primality Testing |
Lecture 17 | Basic Counting Techniques, Quiz |
Lecture 18 | More Counting Techniques |
Lecture 19 | Counting by Inclusion Exclusion |
Lecture 20 | Counting by recurrence relations |
Lecture 21 | Generating Functions |
Lecture 22 | Fields, coding theory |
Lecture 23 | Coding theory, Berlekamp-Welch algortihm |
Lectures 24-25 | Graphs, Eulerian Graphs, Trees, Quiz |