MOVES Seminar 8. September 2006

Model Checking Dynamic Lists

 

Stefan Rieger

 

Abstract

 

The incorrect use of pointers is one of the most common source of
software errors. The introduction of concurrency aggravates this
problem. Verifying the correctness of concurrent pointer manipulating
programs is therefore of high significance. In this presentation I will
present a framework for automatically proving the correctness of
concurrent programs manipulating lists that make use of dynamic memory
allocation. The properties to be proven are formulated as extended LTL
formulae. Due to the application of heap abstraction techniques we can
reduce the problem to standard LTL model checking that can be solved
efficiently.