| Exploiting predicate structure for efficient reachability detection |
| Full text |
Pdf
(405 KB)
|
| Source
|
Automated Software Engineering
archive
Proceedings of the 20th IEEE/ACM international Conference on Automated software engineering
table of contents
Long Beach, CA, USA
SESSION: Validation and verification I
table of contents
Pages: 4 - 13
Year of Publication: 2005
ISBN:1-59593-993-4
|
|
Authors
|
|
| Sponsors |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 6, Downloads (12 Months): 24, Citation Count: 0
|
|
|
ABSTRACT
Partial order (p.o.) reduction techniques are a popular and effective approach for tackling state space explosion in the verification of concurrent systems. These techniques generate a reduced search space that could be exponentially smaller than the complete state space. Their major drawback is that the amount of reduction achieved is highly sensitive to the properties being verified. For the same program, different properties could result in very different amounts of reduction achieved.We present a new approach which combines the benefits of p.o. reduction with the added advantage that the size of the constructed state space is completely independent of the properties being verified. As in p.o. reduction, we use the notion of persistent sets to construct a representative interleaving for each maximal trace of the program. However, we retain concurrency information by assigning vector timestamps to the events in each interleaving. Our approach hinges upon the use of efficient algorithms that parse the encoded concurrency information in the representative interleaving to determine whether a safety violation exists in any interleaving of the corresponding trace. We show that, for some types of predicates, reachability detection can be performed in time that is polynomial in the length of the interleaving. Typically, these predicates exhibit certain characteristics that can be exploited by the detection algorithm.We implemented our algorithms in the popular model checker SPIN, and present experimental results that demonstrate the effectiveness of our techniques. For example, we verified a distributed dining philosophers protocol in 0.03 seconds, using 1.253 MB of memory. SPIN, using traditional p.o. reduction techniques, took 759.71 seconds and 439.116 MB of memory.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
1
|
|
| |
2
|
|
 |
3
|
|
| |
4
|
B. Davey and H. Priestly. Introduction to Lattices and Order. Cambridge University Press, Cambridge, 1990.
|
| |
5
|
D. Dolev, M. Klawe, and M. Rodeh. An O(n log n)unidirectional distributed algorithm for extrema finding in a circle. Journal of Algorithms, 3:245--260, 1982.
|
| |
6
|
|
| |
7
|
|
| |
8
|
F. Mattern. Virtual time and global states of distributed systems. In Proc. of the International Workshop on Distribute Algorithms, pages 215--226, 1989.
|
| |
9
|
|
| |
10
|
|
| |
11
|
Patrice Godefroid , J. van Leeuwen , J. Hartmanis , G. Goos , Pierre Wolper, Partial-Order Methods for the Verification of Concurrent Systems: An Approach to the State-Explosion Problem, Springer-Verlag New York, Inc., Secaucus, NJ, 1996
|
| |
12
|
G. J. Holzmann. The SPINModel Checker: Primer and Reference Manual. Addison-Wesley, Sept. 2003.
|
| |
13
|
|
| |
14
|
|
 |
15
|
|
| |
16
|
|
| |
17
|
|
| |
18
|
|
| |
19
|
|
| |
20
|
|
 |
21
|
|
| |
22
|
|
| |
23
|
|
| |
24
|
A. Valmari. Stubborn Sets for Reduced State Space Generation, volume 483 of Lecture Notes in Computer Science. Springer-Verlag, Berlin, Germany, 1990.
|
|