SCHEDULE CAN CHANGE!
Date |
Topic |
Reading |
Lecture
Notes |
Homework |
Jan 6 |
Introduction |
|
||
Jan 9 |
Dataflow Analysis: four classical dataflow problems |
Ch. 9.1 and 9.2
from Dragon Book |
HW1
(Dataflow) |
|
Jan 13 |
Dataflow frameworks: lattices and transfer
functions |
9.3 from Dragon Book |
|
|
Jan 17 |
Worklist algorithm, MFP and MOP dataflow solutions |
9.3 from Dragon Book |
|
|
Jan 23 |
Non-distributive analysis:
constant propagation and points-to analysis |
|||
Jan 27 |
Program analysis in practice: Soot program analysis
framework, analysis scope and approximation, HW2 |
HW1 due HW2 (Class analysis of Java with Soot) |
||
Jan 30 |
Class analysis, CHA and RTA |
|||
Feb 3 |
Class analysis,
cont.: RTA and XTA |
Quiz 2 |
|
|
Feb 6 |
Class analysis, concl.: XTA, 0-CFA and PTA |
HW2 due, HW3
(Class analysis with Soot) |
||
Feb 10 |
Interprocedural analysis: MORP, realizeable
paths, classical results |
Ch. 12.1 and 12.2
from the Dragon Book |
||
Feb 13 |
Context sensitivity: k-CFA and summary-based |
Quiz 3 |
||
Feb 18 (Tue) |
Abstract Interpretation: Semantics,
notion of abstraction, abstraction relation |
HW3 due, |
||
Feb 20 |
Concretization and
abstraction functions, Galois connections |
|||
Feb 24 |
Galois connections and transformers |
|||
Feb 27 |
Types and Type-based
Analysis: Lambda calculus
review |
Ch. 5 and 6 from Pierce |
Quiz 4 |
HW4 due, |
Mar 10 |
Interpreters and
Haskell |
|||
Mar 13 |
Simply typed
lambda calculus, |
Ch. 8 and 9 from
Pierce |
||
Mar 17 |
Progress and preservation; Introduction to simple
type inference |
HW5 due |
||
Mar 20 |
Simple type inference: let and letrec;
goal and intuition |
Ch. 22 and 23 from Pierce |
Quiz 5 |
|
Mar 24 |
Simple type
inference: equality constraints unification, substitution |
|||
Mar 27 |
Hindley Milner |
|||
Mar 31 |
Axiomatic Semantics |
Optional HW7 (Z3) |
||
Apr 3 |
Verification condition generation and symbolic execution |
Quiz 6 |
||
Apr 7 |
HW6 due, HW7 due, |
|||
Apr 10 |
Take-home final |
|||
Apr 14 |
||||
Apr 17 |
||||
Apr 22 |
Take-home final due and CI paper critique due |