|   Princeton University | COS 516 / ELE 516 | Fall 2016 | 
The schedule may change during the semester. Please check it frequently.
| Week/Dates | Lectures | Readings | Homework | |
|---|---|---|---|---|
| Week 0: Sept 14 | Introduction, Course overview | |||
| Week 1: Sept 19, 21 | Review of logic, Program verification | [BM Ch 1, 2], [R1], [BM Ch 4-6] | HW1 posted | |
| Week 2: Sept 26, 28 | SAT solvers, SMT solvers | [R2], [BM Ch 3], [R3], [R4] | HW2 posted | |
| Week 3: Oct 3, 5 | SMT solvers, Temporal logic, Model checking | [R5] | ||
| Week 4: Oct 10, 12 | Model checking: BDD-based, SAT-based | [R6], [R7] | HW3 posted | |
| Week 5: Oct 17, 19 | Software model checking: CEGAR, Interpolant-based | [R8] | ||
| Week 6: Oct 24 Midterm Exam: Oct 26 | Software model checking, Review for Midterm | HW4 posted, Project Outline due | ||
| Fall Break | ||||
| Week 7: Nov 7, 9 | Incremental inductive verification (IC3) | [R9] | ||
| Week 8: Nov 14, 16 | Automatic invariant generation | [BM Ch 12] | ||
| Week 9: Nov 21 Nov 24: Thanksgiving | Symbolic execution and test generation | [R10] | Project Interim Report due | |
| Week 10: Nov 28, 30 | Program synthesis | [R11] | HW5 posted | |
| Week 11: Dec 5, 7 | Concurrent program verification, Network verification | |||
| Week 12: Dec 12, 14 | Student Project Presentations | |||
| NO Final Exam | Project Report due on Dean's Date: January 17, 2017. | 
 
[BM Chapters 1-6, 12]
The Calculus of Computation: Decision Procedures with Applications to Verification 
by Aaron R. Bradley and Zohar Manna 
Electronic version
Chris Newcombe, Tim Rath, Fan Zhang, Bogdan Munteanu, Marc Brooker, Michael Deardeuff: How Amazon web services uses formal methods. Communications of the ACM 58(4): 66-73 (2015)