UCLA CS 232 Static Program Analysis Fall 2008
 Time and place: Mon, Wed 2:003:50pm, 5252 Boelter Hall.
 Professor: Jens Palsberg,
4531K Boelter Hall
(palsberg@ucla.edu).

Office hours: after each class until 4:30, in either 4531K BH or in 4810 BH.
 Reading list.
 The discussion website is on
CourseWeb
(go to Computer Science, CS 232, Forum).
 Lectures Mon Sep 29, Wed Oct 1:
An introduction to static analysis of objectoriented programs.
DeutschSchiffman,
a single global method table,
class hierarchy analysis, rapid type analysis,
constraintbased analysis, equalitybased analysis,
subsetbased analysis in cubic time.
 Lectures Mon Oct 6, Wed Oct 8:
Pointer analysis.
Analysis of lambdacalculus.
Register allocation
and
SSA form.
Flowinsensitive and flowsensitive analysis.
 Lectures Mon Oct 13, Wed Oct 15:
Contextinsensitive and contextsensitive analysis.
Efficient data structures based on binary decision diagrams.
 Lectures Mon Oct 27,
Use of static program analysis for optimization.
Flowdirected method inlining, typesafe method inlining.
 Lectures Wed Oct 29:
Subtransitive flow analysis of typed programs.
 Lectures Mon Nov 3, Wed Nov 5:
Flowtype systems.
Relationships between static analysis and type systems.
 Lectures Mon Nov 10:
Analysis of stack bounds for eventdriven software.
 Lectures Wed Nov 12:
Demo day.
 Lectures Mon Nov 17, Wed Nov 19:
The Fixed Point Theorem.
The SchroderBernstein Theorem.
Soundness proofs for static analyses
 Lectures Mon Nov 24:
Impossibility results
 Lectures Mon Dec 1, Wed Dec 3:
Logical abstract interpretation.
Lecture notes:
outline,
ppt,
pdf.
 Homework;
submit one pdf file per homework via
CourseWeb
(go to Computer Science, CS 232, Assignments/Submit).
 Homework 1 is due Thu Oct 16 at Noon.
 Homework 2 is due Thu Oct 23 at Noon.
 Homework 3 is due Thu Oct 30 at Noon.
 Homework 4 is due Wed Nov 12 at 2pm.
 Homework 5 is due Thu Nov 13 at Noon.
 Homework 6 is due Thu Nov 20 at Noon.
 Homework 7 is due Wed Nov 26 at Noon.
 Homework 8 is due Thu Dec 4 at Noon.
 Homework 9 is due Fri Dec 12 at Noon.
 No Midterm! No Final Exam!