Anything on the schedule more than 24 hours in advance is subject to change.
| Week | Day | Description | Readings | Slides | Due |
|---|---|---|---|---|---|
| 1 | 1/14 | intro to theorem proving | LF Preface, demo | PPT, PDF | |
| 1 | 1/16 | programming and proving in Coq | LF Basics | PPT, PDF | |
| 2 | 1/21 | basics, continued | ” | ||
| 2 | 1/23 | proof by induction | LF Induction | Homework 1 | |
| 3 | 1/28 | induction, continued | ” | ||
| 3 | 1/30 | data structures in Coq | LF Lists | ||
| 4 | 2/4 | proof tactics | LF Tactics | ||
| 4 | 2/6 | tactics, continued | ” | Homework 2 | |
| 5 | 2/11 | propositional and predicate logic | LF Logic | ||
| 5 | 2/13 | logic, continued | ” | Homework 3 | |
| 6 | 2/18 | intro to Iris | Iris basics | PPT, PDF | |
| 6 | 2/20 | Iris, continued | pure | Homework 4 | |
| 7 | 2/25 | HeapLang, specs | lang, specifications (modified) | ||
| 7 | 2/27 | specs, continued | ” | ||
| 8 | 3/4 | Iris list proofs | linked_lists | PPT, PDF | |
| 8 | 3/6 | list proofs, continued | ” | Homework 5 | |
| 9 | 3/11 | invariants | invariants (modified) | initial project proposal | |
| 9 | 3/13 | invariants, continued | ” | ||
| 10 | 3/18 | concurrency | structured_conc | Homework 6 | |
| 10 | 3/20 | concurrency, continued | ” | revised project proposal | |
| 11 | 4/1 | concurrency, continued | ” | ||
| 11 | 4/3 | concurrency: locks | spin_lock | Homework 7 | |
| 12 | 4/8 | concurrency: ghost state | counter | ||
| 12 | 4/10 | project workshop | Homework 8 due 4/11 | ||
| 13 | 4/15 | ghost state, continued | project status report due 4/14 | ||
| 13 | 4/17 | ghost state, continued | |||
| 14 | 4/22 | ghost state, continued | |||
| 14 | 4/24 | real languages | Iris Project | PPT, PDF | Homework 9 due 4/25 |
| 15 | 4/29 | project workshop | |||
| 15 | 5/1 | review/the big picture | PPT, PDF | project due 5/2 |