| | |
Summary: Onthefly Reachability and Cycle Detection for
Recursive State Machines #
Rajeev Alur 1 , Swarat Chaudhuri 1 , Kousha Etessami 2 , and P. Madhusudan 3
1 University of Pennsylvania, USA
2 University of Edinburgh, UK
3 University of Illinois at UrbanaChampaign, USA
Abstract. Searching the state space of a system using enumerative
and onthefly depthfirst traversal is an established technique for model
checking finitestate systems. In this paper, we propose algorithms for
onthefly exploration of recursive state machines, or equivalently push
down systems, which are suited for modeling the behavior of procedural
programs. We present algorithms for reachability (is a bad state reach
able?) as well as for fair cycle detection (is there a reachable cycle with
progress?). We also report on an implementation of these algorithms to
check safety and liveness properties of recursive boolean programs, and
its performance on existing benchmarks.
1 Introduction
Recursive state machines (RSM) can model control flow in typical sequential im
perative programming languages with recursive procedure calls, and are equiva
lent to pushdown systems [1]. Even though the statespace of an RSM is infinite
|