Partial Order Reduction and Symmetry with Multiple Representatives

Symmetry reduction is one of the most successful techniques to cope with the state explosion problem in model-checking. One of the central issues in symmetry reduction is the problem of finding unique (canonical) representatives of equivalence classes of symmetric states. This problem is equivalent to the graph isomorphism problem, for which no polynomial algorithm is known. On the other hand finding multiple (non-canonical) representatives is much easier because it usually boils down to sorting algorithms. As a consequence, with multiple representatives one can significantly improve the verification times. In this paper we show that symmetry reduction with multiple representatives can be combined with partial order reduction, another efficient state space reduction technique. To this end we introduce a new weaker notion of independence which requires confluence only up to bisimulation.

[1]  Doron A. Peled Combining Partial Order Reductions with On-the-fly Model-Checking , 1994, CAV.

[2]  Wojciech Penczek,et al.  A partial order approach to branching time logic model checking , 1995, Proceedings Third Israel Symposium on the Theory of Computing and Systems.

[3]  Radu Iosif,et al.  Symmetry Reduction Criteria for Software Model Checking , 2002, SPIN.

[4]  A. Prasad Sistla,et al.  On-the-Fly Model Checking Under Fairness That Exploits Symmetry , 1997, CAV.

[5]  Edmund M. Clarke,et al.  Model Checking , 1999, Handbook of Automated Reasoning.

[6]  Antti Valmari A stubborn attack on state explosion , 1992, Formal Methods Syst. Des..

[7]  Somesh Jha,et al.  Exploiting symmetry in temporal logic model checking , 1993, Formal Methods Syst. Des..

[8]  A. Prasad Sistla,et al.  Symmetry and model checking , 1996, Formal Methods Syst. Des..

[9]  E. Allen Emerson,et al.  From Asymmetry to Full Symmetry: New Techniques for Symmetry Reduction in Model Checking , 1999, CHARME.

[10]  E. Allen Emerson,et al.  Temporal and Modal Logic , 1991, Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics.

[11]  Patrice Godefroid,et al.  Exploiting Symmetry when Model-Checking Software , 1999, FORTE.

[12]  A. Prasad Sistla,et al.  Utilizing Symmetry when Model Checking under Fairness Assumptions: An Automata-theoretic Approach , 1995, CAV.

[13]  Dragan Bosnacki,et al.  The Design of a Multicore Extension of the SPIN Model Checker , 2007, IEEE Transactions on Software Engineering.

[14]  Gerard J. Holzmann,et al.  An improvement in formal verification , 1994, FORTE.

[15]  David L. Dill,et al.  Better verification through symmetry , 1996, Formal Methods Syst. Des..

[16]  Grzegorz Rozenberg Advances in Petri Nets 1990 , 1989, Lecture Notes in Computer Science.

[17]  Gerard J. Holzmann,et al.  Coverage Preserving Reduction Strategies for Reachability Analysis , 1992, PSTV.

[18]  Robert K. Brayton,et al.  Partial-Order Reduction in Symbolic State Space Exploration , 1997, CAV.

[19]  Dragan Bosnacki,et al.  Partial-order reduction for general state exploring algorithms , 2006, International Journal on Software Tools for Technology Transfer.

[20]  Gerard J. Holzmann,et al.  The SPIN Model Checker - primer and reference manual , 2003 .

[21]  Dragan Bosnacki,et al.  Symmetric Spin , 2002, International Journal on Software Tools for Technology Transfer.

[22]  Antti Valmari,et al.  The State Explosion Problem , 1996, Petri Nets.

[23]  Somesh Jha,et al.  Combining Partial Order and Symmetry Reductions , 1997, TACAS.

[24]  Pierre Wolper,et al.  Partial-order methods for model checking: from linear time to branching time , 1996, Proceedings 11th Annual IEEE Symposium on Logic in Computer Science.

[25]  Antti Valmari,et al.  Stubborn sets for reduced state space generation , 1991, Applications and Theory of Petri Nets.

[26]  Patrice Godefroid,et al.  Partial-Order Methods for the Verification of Concurrent Systems , 1996, Lecture Notes in Computer Science.