The calendar below provides information on the course's lecture (L) and exam (E) sessions.
Course calendar.| SES # | TOPICS | KEY DATES | 
|---|
| L1 | Non-adaptive weighing |  | 
| L2 | Sorting |  | 
| L3 | Finding the median |  | 
| L4 | Non-adaptive sorting: Batcher's algorithm | Problem set 1 due | 
| L5 | Shannon source coding: coding for efficiency |  | 
| L6 | Huffman and Hu-Tucker algorithms; finding efficient compression |  | 
| L7 | Theory of probability | Problem set 2 due | 
| L8 | Coding for error correction: the Shannon bound |  | 
| L9 | Matrix hamming codes | Problem set 3 due | 
| L10 | Polynomial codes |  | 
| L11 | BCH codes: constructing them and finding the syndrome of a message | Problem set 4 due | 
| L12 | Correcting errors in BCH codes |  | 
| L13 | Properties and generalizations of our BCH codes | Problem set 5 due | 
| E1 | Exam 1 |  | 
| L14 | Coding for secrecy |  | 
| L15 | Secret coding 2 |  | 
| L16 | Factoring numbers |  | 
| L17 | Quadratic sieve and elliptic curves | First draft of short paper due | 
| L18 | Some graph theory | Problem set 6 due | 
| L19 | Planarity and coloring; matching problems |  | 
| L20 | Counting trees | Problem set 7 due | 
| L21 | Symmetries |  | 
| L22 | Counting patterns; generating functions | Problem set 8 due | 
| L23 | The finite Fourier transform |  | 
| L24 | FFT and multiplication of numbers | Problem set 9 due | 
| E2 | Exam 2 |  | 
| L25 | Sequential choice |  | 
| L26-27 | Linear programming | Final draft of short paper due | 
| L28 | Duality in linear programming | Problem set 10 due | 
| L29 | Matching |  | 
| L30 | Strassen's fast multiplication of matrices, algorithm and spreadsheet matrix multiplications | Term paper due |