UCLA CS 232 Static Program Analysis Spring 2008
- Time and place: Tue, Thu 2:00-3:50pm, 5272 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 Tue Apr 1, Thu Apr 3: Register allocation and SSA form.
- Lectures Tue Apr 8, Wed Apr 10:
An introduction to static analysis of object-oriented programs.
Deutsch-Schiffman, a single global method table,
class hierarchy analysis, rapid type analysis,
equality-based analysis, subset-based analysis in cubic time.
- Lectures Tue Apr 15:
Pointer analysis. Analysis of lambda-calculus.
Flow-insensitive and flow-sensitive analysis.
- Lectures Thu Apr 17, Tue Apr 22:
Context-insensitive and context-sensitive analysis.
Efficient data structures based on binary decision diagrams.
- Lectures Thu Apr 24:
Use of static program analysis for optimization.
Flow-directed method inlining, type-safe method inlining.
- Lectures Tue Apr 29:
Subtransitive flow analysis of typed programs.
- Lectures Thu May 1, Tue May 6:
Flow-type systems.
Relationships between static analysis and type systems.
- Lectures Thu May 8:
Analysis of stack bounds for event-driven software.
- Lectures Tue May 13, Thu May 15:
Logical abstract interpretation.
Guest lecturer:
Sumit Gulwani, Microsoft Research.
Lecture notes:
outline,
ppt,
pdf.
- Lectures Tue May 20, Thu May 22:
Soundness proofs for static analyses.
- Lectures Tue May 27: Impossibility results.
- Lectures Thu May 29: Demo day.
- Lectures Tue Jun 3, Thu Jun 5: Impossibility results.
- Homework.
- Submit homework in one file (use tar+gzip) via email to Jonathan Lee (jkenl at ucla dot edu).
- Homework 1 is due Tue Apr 22 at Noon.
- Homeworks 2+3 are due Tue Apr 29 at Noon.
- Homeworks 4+5 are due Tue May 20 at Noon.
- Homeworks 6+7 are due Tue May 27 at Noon.
- Homework 8 is due Tue Jun 3 at Noon.
- Homework 9 is due Fri Jun 13 at Noon.
- No Midterm! No Final Exam!