Static Analysis — 689 (Fall 2008) |
Course description:
Title: CPSC 689-603 — Special Topics in Static Analysis Class schedule: Tuesday and Thursday, 03:55pm - 05:10pm Room: Academic Building 227 Web pages: http://courses.cs.tamu.edu/gdr/2008.fall/ Instructor: Dr. Gabriel Dos Reis Contact: gdr at cs.tamu.edu Office hours: By appointment (410C) Prerequisite: Graduate Standing
Goals:
Static Analysis is the science of answering questions about the behaviour of a computer program without executing it. This course introduces students to the field of sound, principled program analysis and semantics-based program transformations. Both theoretical aspects and practical applications to programs written in C++, Java, etc. will be covered.
Topics covered include
- Program Transformation
- Model Checking
- Abstract Interpretation
- Security Analysis of the JVM
- Applications in Computational Sciences
- Type And Effect Systems
Why Static Analysis?
Correctness and reliability of programs are in many areas crucial for the feasibility of major projects and in many cases life critical. We can't send a repairman to fix a bug in a deep space probe and we can't afford to have thieves penetrate our bank accounts or anyone unauthorized access the control software of our power grid. We really don't want the software that runs our cars and planes to fail. Testing is essential, static type checking can help, but for critical programs a far more thorough, systematic, and demonstrably complete analysis is needed. Static analysis is a set of key technologies for producing affordable dependable systems.