This course offers a comprehensive introduction to the field of program analysis. It covers some of the major forms of program analysis including Type Checking, Abstract Interpretation and Model Checking. For each of these, the course covers the underlying theories as well as modern techniques and applications.
Learning Resource Types
notes Lecture Notes
assignment Programming Assignments