Vector Symmetry Reduction

Symmetry reduction is an effective state-space reduction technique for model checking, and works by restricting search to equivalence class representatives with respect to a group of symmetries for a model. A major problem with symmetry reduction techniques is the time taken to compute the representative of a state, which can be prohibitive. In efficient implementations of symmetry reduction, a symmetry is applied to a state as a sequence of operations which swap component identities. We show that vector processing technology, common to modern computers, can be used to implement a vectorised swap operation, which can be incorporated into the representative computation algorithm to accelerate symmetry reduction. Via a worked example, we present details of this vector symmetry reduction method. We have implemented our techniques in the TopSpin symmetry reduction package for the Spin model checker, and present experimental results showing the speedups obtained via vectorisation for two case-studies running on a PowerPC vector processor.

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

[2]  Alastair F. Donaldson,et al.  Exact and Approximate Strategies for Symmetry Reduction in Model Checking , 2006, FM.

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

[4]  Shin Nakajima,et al.  The SPIN Model Checker : Primer and Reference Manual , 2004 .

[5]  Bjarne Stroustrup,et al.  The C++ Programming Language, Second Edition , 1991 .

[6]  Murali Rangarajan,et al.  Analysis of Distributed Spin Applied to Industrial-Scale Models , 2004, SPIN.

[7]  I. Herstein,et al.  Topics in algebra , 1964 .

[8]  Alan Bundy,et al.  Constructing Induction Rules for Deductive Synthesis Proofs , 2006, CLASE.

[9]  A. Prasad Sistla,et al.  Symmetry Reductions in Model Checking , 1998, CAV.

[10]  Alastair F. Donaldson,et al.  Extending Symmetry Reduction Techniques to a Realistic Model of Computation , 2007, Electron. Notes Theor. Comput. Sci..

[11]  Alastair F. Donaldson,et al.  A Computational Group Theoretic Symmetry Reduction Package for the Spin Model Checker , 2006, AMAST.

[12]  Thomas Wahl,et al.  Dynamic Symmetry Reduction , 2005, TACAS.

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

[14]  A. Prasad Sistla,et al.  SMC: a symmetry-based model checker for verification of safety and liveness properties , 2000, TSEM.

[15]  Dragan Bosnacki,et al.  Symmetric Spin , 2000, SPIN.

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

[17]  Muffy Calder,et al.  Symmetry in temporal logic model checking , 2006, CSUR.

[18]  Thomas Wahl,et al.  On Combining Symmetry Reduction and Symbolic Representation for Efficient Model Checking , 2003, CHARME.

[19]  Stephan Merz,et al.  Model Checking , 2000 .

[20]  Brian W. Kernighan,et al.  The C Programming Language , 1978 .

[21]  Bjarne Stroustrup,et al.  C++ Programming Language , 1986, IEEE Softw..

[22]  H. Peter Hofstee,et al.  Power efficient processor architecture and the cell processor , 2005, 11th International Symposium on High-Performance Computer Architecture.

[23]  Alastair F. Donaldson,et al.  Automatic Symmetry Detection for Model Checking Using Computational Group Theory , 2005, FM.

[24]  A. Prasad Sistla Symmetry Reductions in Model-Checking , 2003, VMCAI.

[25]  Somesh Jha,et al.  Exploiting Symmetry In Temporal Logic Model Checking , 1993, CAV.

[26]  Muffy Calder,et al.  Generalising Feature Interactions in Email , 2003, FIW.