

Edmund M. Clarke
Department of Computer Science
Carnegie Mellon University
Abstraction Refinement in Software Model Checking
Abstract
Model checking is an automatic verification technique for state
transisiton systems. It was originally developed for finite state systems
and has been used successfully to verify complex hardware controllers and
communication protocols. The big challenge now is to adapt the method to
the verification of computer software. Because the state spaces involved
can very large or even infinite in this case, abstraction is crucial. I
will discuss recent work by my group on two abstraction techniques,
predicate abstraction and counterexample guided abstraction refinement,
that are used by almost all software model checkers.
Back to Distinguished
Lecture Series
|