M221 Advanced Compilers and Static Analysis

Course info

Spring semester, Thu 2-5pm, classroom B

Instructor: Yannis Smaragdakis

Piazza signup link


The course will cover topics in static program analysis. We will be using logic-based specifications, in the Datalog language, to express static analyses over an intermediate language. Our platform of experimentation will be an IR for Ethereum smart contracts. This is a critical modern domain that greatly benefits from static analysis.

The course is a seminar and requires active participation. The last hour of every meeting will be hands-on coding and support on the currently active assignment. You will need to bring a laptop (or pair productively with someone who brings one).



Submission by email, by midnight of the deadline.

Slides, notes


Tools, resources