Extending Symmetry Reduction by Exploiting System Architecture

Symmetry reduction is a technique to alleviate state explosion in model checking by replacing a model of replicated processes with a bisimilar quotient model. The size of the quotient depends strongly on the set of applicable symmetries, which in many practical cases allows only polynomial reduction. We introduce architectural symmetry , a concept that exploits architectural system features to compensate for a lack of symmetry in the system model. We show that the standard symmetry quotient of an architecturally symmetric and well-architected model preserves arbitrary Boolean combinations and nestings of reachability properties. This quotient can be exponentially smaller than the model, even in cases where traditional symmetry reduction is nearly ineffective. Our technique thus extends the benefits of symmetry reduction to systems that are in fact not symmetric. Finally, we generalize our results to all architecturally symmetric models, including those that are not well-architected. We illustrate our method through examples and experimental data.

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

[2]  Marsha Chechik,et al.  Identification and Counter Abstraction for Full Virtual Symmetry , 2005, CHARME.

[3]  Samuel Williams,et al.  The Landscape of Parallel Computing Research: A View from Berkeley , 2006 .

[4]  Jan van Leeuwen,et al.  Handbook of Theoretical Computer Science, Vol. B: Formal Models and Semantics , 1994 .

[5]  E. Allen Emerson,et al.  Virtual symmetry reduction , 2000, Proceedings Fifteenth Annual IEEE Symposium on Logic in Computer Science (Cat. No.99CB36332).

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

[7]  Rajeev Alur,et al.  A Temporal Logic of Nested Calls and Returns , 2004, TACAS.

[8]  Parosh Aziz Abdulla,et al.  Tools and Algorithms for the Construction and Analysis of Systems , 1996, Lecture Notes in Computer Science.

[9]  George J. Milne,et al.  Correct Hardware Design and Verification Methods , 2003, Lecture Notes in Computer Science.

[10]  Wolfgang Thomas,et al.  Handbook of Theoretical Computer Science, Volume B: Formal Models and Semantics , 1990 .

[11]  Thomas Thurner,et al.  Time-triggered architecture for safety-related distributed real-time systems in transportation systems , 1998, Digest of Papers. Twenty-Eighth Annual International Symposium on Fault-Tolerant Computing (Cat. No.98CB36224).

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

[13]  Amir Pnueli,et al.  Liveness with (0, 1, infty)-Counter Abstraction , 2002, CAV.

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

[15]  A. Prasad Sistla,et al.  Symmetry and Reduced Symmetry in Model Checking , 2001, CAV.

[16]  George Candea,et al.  Improving availability with recursive microreboots: a soft-state system case study , 2004, Perform. Evaluation.

[17]  Robin Milner,et al.  Operational and Algebraic Semantics of Concurrent Processes , 1991, Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics.

[18]  Thomas Wahl,et al.  SVISS: Symbolic Verification of Symmetric Systems , 2008, TACAS.

[19]  Thomas Wahl Adaptive Symmetry Reduction , 2007, CAV.

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

[21]  Amir Pnueli,et al.  Liveness with (0, 1, ∞)-counter abstraction , 2002 .

[22]  Ganesh Gopalakrishnan,et al.  Transaction Based Modeling and Verification of Hardware Protocols , 2007 .