02242: Program Analysis

Fall 2025

Christian Gram Kalhauge

Table of Contents

  1. Practical Information
  2. The Course
  3. Project

Practical Information (§1)

  • We are Christian (mail), the teacher, and Oskar, Peter, and Emil, who are the TA's.

  • We meet 13-17 on Mondays in 358-060A

  • The course description is available here.

  • If you need help outside of class, you can ask a question on Teams or send Christian an email.

  • All feedback is appreciated, either by mail or via the anonymous feedback system.

The Course (§2)

Feedback (§2.1)

  • send suggestions to chrg@dtu.dk

  • or use the Google Form

  • please.

Teaching Philosophy (§2.2)

You only learn from your mistakes.

Didactic Contract (§2.3)

  • Programming skills are expected and required to do well in this course.

  • Class and assignments are not mandatory.

  • However, you should expect you to use 14 hours a week.

  • I'll try not to bore you.

The Challenge (§2.4)

  • Predict if a program can be made to exhibit a behavior.

  • Check out the README.

Questions (§2.5)

  • 2-4 questions every week.

  • answered in your feedback groups.

  • consider sharing a Google Docs or an Overleaf document

  • part of the exam

Groups (§2.6)

  • Feedback Groups: groups 16 ~ 8 random students per group

  • Project Group: 4 - 6 students

Lecture Structure (§2.7)

  • 13:00 Peer-feedback

  • 13:20 Communal Feedback

  • 13:30 Lecture

  • 15:00 Lab-work

In the beginning of class we sit in our feedback groups.

Schedule (§2.8)

NoDateTopic
0109-01Introduction
0209-08Syntactic Analysis
0309-15Semantics
0409-22Dynamic Analysis
0509-29Lab-day
0610-06Bounded Static Analysis
10-13Autumn holiday
0810-20Lab-day & Proposal Due
0710-27Unbounded Static Analysis
0911-03Concolic Execution (OLD)
1011-10Context Sensitive Analysis (OLD)
1111-17How to write a good paper (OLD)
1211-24Lab-day
1312-01Q/A & How to-do a good presentation & Paper Due
12-10Exam
12-11Exam
12-12Exam

Project (§3)

Proceedings (§3.1)

Checkout the proceedings from last year on learn!