15–414/614 Bug Catching: Automated Program Verification

Lecture Slides and Reading

# Date Lecture Additional Readings and Notes
1 08/27 Introduction to Coq [Notes] [Install Coq8.4] [Installation help on Linux]
2 08/29 Scoping, Rational numbers, Lists
3 08/31 Propositional Logic and
Natural Deduction
Optional Lecture
4 09/05 Omega tactic and
Propositional tautologies
5 09/07 Propositional Natural Deduction in Coq Optional Lecture
6 09/10 Basics Download Coq Files
Class Notes
7 09/12 Basics contd.
8 09/14 Predicate Logic and Natural Deduction
Coq Examples
Optional Lecture
9 09/17 Classical Logic, Induction (from “Basics”)
10 09/19 Lists Class Notes
11 09/24 Lists contd.
12 09/26 Polymorphism Class Notes
13 10/01 Higher-order Functions Class Notes
14 10/03 More higher-order functions
15 10/08 Classical Propositional Logic,
Truth Tables
16 10/10 Discussion on Midterm 1
17 10/15 Guest Lecture by Prof. Frank Pfenning
on Intuitionistic Logic
18 10/17 Normal Forms, Resolution, DP, DPLL DP on Wikipedia
Original DPLL paper
19 10/22 GRASP SAT Solver
20 10/24 GRASP contd. GRASP Paper
zCHAFF Paper
21 10/29 Introduction to Model Checking
22 10/31 Temporal Logics - LTL, CTL, CTL*
23 11/05 Symbolic Model Checking with BDDs Paper by Randy Bryant
24 11/07 Symbolic Model Checking with SAT
25 11/12 Spin Model Checker - Part 1
26 11/14 Spin Model Checker - Part 2 Spin Examples
27 11/19 C Bounded Model Checker (CBMC) CBMC Examples
28 11/26 SMV Model Checker - 1
29 11/28 SMV Model Checker - 2 SMV Examples