State-space caching revisited |
| |
Authors: | Patrice Godefroid Gerard J. Holzmann Didier Pirottin |
| |
Affiliation: | (1) Institut Montefiore B28, Université de Liège, 4000 Liège Sart-Tilman, Belgium;(2) AT&T Bell Laboratories, 600 Mountain Avenue, 07974 Murray Hill, NJ, USA;(3) Present address: AT&T Bell Laboratories, 1000 E. Warrenville Road, P.O. Box 3013, 60566-7013 Naperville, IL, USA |
| |
Abstract: | State-space caching is a verification technique for finite-state concurrent systems. It performs an exhaustive exploration of the state space of the system being checked while storing only all states of just one execution sequence plus as many other previously visited states as available memory allows. So far, this technique has been of little practical significance: it allows one to reduce memory usage by only twoo to three times, before an unacceptable blow-up of the run-time overhead sets in. The explosion of the run-time requirements is due to redundant multiple explorations of unstored parts of the state space. Indeed, almost all states in the state space of concurrent systems are typically reached several times during the search.In this paper, we present a method to tackle the main cause of this prohibitive state matching: the exploration of all possible interleavings of concurrent executions of the system which all lead to the same state. Then, we show that, in many cases, with this method, most reachable states are visited only once during state-space exploration. This enables one not to store most of the states that have already been visited without incurring too much redundant explorations of parts of the state space, and makes therefore state-space caching a much more attractive verification method. As an example, we were able to competely explore a state space of 250,000 states while storing simultaneously no more than 500 states and with only a three-fold increas of the run-time requirements. |
| |
Keywords: | Verification concurency state explosion model-checking caching |
本文献已被 SpringerLink 等数据库收录! |
|