02242 Program Analysis


Program analysis comprises efficient and automatic techniques that can be used to ensure the proper functioning of programs, to guard against programming and security errors, and to optimise the performance of programs.


The lectures cover key concepts and techniques from program analysis and the mandatory assignment supports applying the techniques to a small project. The oral exam will cover both the key concepts and techniques and the implementation performed in the mandatory assignment.


A set of slides [slides] guide us through the lectures and the mandatory assignment. It is up to students to choose between the preferred approach based on program graphs (as described in [PAaA]) or the alternative approach based on flow graphs (as described in [PPA])


It is recommended that you try to read the textbook material before coming to class, that you ask questions to the slides during class, and that you read the textbook material in detail after class and to the Try It Out exercises as well as some of the ordinary exercises.


Course Material:

[slides] will be made available on DTU's intranet.

[PAaA] F. Nielson, H. Riis Nielson: Program Analysis - an Appetizer, book manuscript, 2020. The online systems at http://www.formalmethods.dk support this material.


Supplementary Material:

[PPA] F. Nielson, H. Riis Nielson, C. Hankin: Principles of Program Analysis, Springer, 2005, ISBN 3-540-65410-0, can be bought in the DTU book store.


The course will be taught by Flemming Nielson on Monday afternoons in the Autumn term and further information is available on DTU's intranet.