Abstract
Symmetry reduction techniques exploit symmetries that occur during the execution of a system, in order to minimize its state space for efficient verification of temporal logic properties. This paper presents a framework for concisely defining and evaluating two symmetry reductions currently used in software model checking, involving heap objects and, respectively, processes. An on-the-fly state space exploration algorithm combining both techniques is also presented. Second, the relation between symmetry and partial order reductions is investigated, showing how one’s strengths can be used to compensate for the other’s weaknesses. The symmetry reductions presented here were implemented in the dSPIN model checking tool. We performed a number of experiments that show significant progress in reducing the cost of finite state software verification.
This work was supported in part by NSF under grant CCR-9703094, by the U.S. Army Research Laboratory and the U.S. Army Research Office under agreement number DAAD190110564, and from the Formal Verification of Integrated Modular Avionics Software cooperative agreement, NCC-1-399, sponsored by Honeywell Technology Center and NASA Langley Research Center.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
R. Bayer and M. Schkolnick: Concurrency of Operations on B-Trees. Acta Informatica, Vol. 9 (1977) 1–21
Dragan Bosnacki: Enhancing State Space Reduction Techniques for Model Checking. PhD Thesis, Technical University of Eindhoven (2001)
Edmund M. Clarke, Somesh Jha, Reinhard Enders and Thomas Filkorn: Exploiting Symmetry In Temporal Logic Model Checking. Formal Methods in System Design, Vol.9, No. 1/2 (1996) 77–104
Edmund M. Clarke, Orna Grumberg and Doron Peled: Model Checking. MIT Press (2001)
Constantin Courcoubetis, Moshe Y. Vardi, Pierre Wolper and Mihalis Yannakakis: Memory-Efficient Algorithms for the Verification of Temporal Properties. Formal Methods in System Design, Vol. 1, No 2/3 (1992) 275–288
Dennis Dams, Dragan Bosnacki and Leszek Holenderski: A Heuristic for Symmetry Reductions with Scalarsets. Proc. Formal Methods Europe (2001) 518–533
E. Emerson, S. Jha and D. Peled: Combining Partial Order and Symmetry Reductions. Proc. Tools and Algorithms for Construction and Analysis of Systems, Lecture Notes in Computer Science, Vol. 1217 (1997) 19–34
E. Emerson and A. P. Sistla: Symmetry and Model Checking. Formal Methods in System Design, Vol.9, No. 1/2(1996) 105–131
R. Gerth, R. Kuiper, D. Peled and W. Penczek: A Partial Order Approach to Branching Time Logic Model Checking. Proc. 3rd Israel Symposium on Theory on Computing and Systems (1995) 130–139
P. Godefroid: Partial-Order Methods for the Verification of Concurrent Systems. Lecture Notes in Computer Science Vol. 1032 (1996)
P. Godefroid: Exploiting Symmetry when Model-Checking Software. Proc. Formal Methods for Protocol Engineering and Distributed Systems (FORTE/PSTV) (1999) 257–275
M. Hennessy and R. Milner: Algebraic Laws for Nondeterminism and Concurrency. Journal of the ACM Vol. 32 (1985) 137–161
G. J. Holzmann: The SPIN Model Checker. IEEE Trans. on Software Engineering Vol. 23 (1997) 279–295
G. J. Holzmann and D. Peled: An Improvement in Formal Verification. Formal Description Techniques, Chapman & Hall, (1994) 197–211
G. Holzmann, D. Peled and M. Yannakakis: On Nested Depth First Search. Proc. 2nd SPIN Workshop (1996)
R. Iosif: Symmetric Model Checking for Object-Based Programs. Technical Report KSU CIS TR 2001-5 (2001)
R. Iosif and R. Sisto: dSPIN: A Dynamic Extension of SPIN. Proc. 6th SPIN Workshop, Lecture Notes in Computer Science Vol. 1680 (1999) 261–276
R. Iosif and R. Sisto: Using Garbage Collection in Model Checking. Proc. 7th SPIN Workshop, Lecture Notes in Computer Science Vol. 1885 (2000) 20–33
R. Iosif: Exploiting Heap Symmetries in Explicit-State Model Checking of Software. Proc. 16th IEEE Conference on Automated Software Engineering (2001) 254–261
C. Ip and D. Dill: Better Verification Through Symmetry. Formal Methods in System Design, Vol.9, No. 1/2 (1996) 41–75
F. Lerda and W. Visser: Addressing Dynamic Issues of Program Model Checking. Proc. 8th SPIN Workshop, Lecture Notes in Computer Science Vol. 2057 (2001) 80–102
D. Peled: All from One, One from All: on Model Checking using representatives. Proc. 5th Conference on Computer Aided Verification, Lecture Notes in Computer Science Vol. 697 (1993) 409–423
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2002 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Iosif, R. (2002). Symmetry Reduction Criteria for Software Model Checking. In: Bošnački, D., Leue, S. (eds) Model Checking Software. SPIN 2002. Lecture Notes in Computer Science, vol 2318. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-46017-9_5
Download citation
DOI: https://doi.org/10.1007/3-540-46017-9_5
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-43477-1
Online ISBN: 978-3-540-46017-6
eBook Packages: Springer Book Archive