Exploiting equivalence reduction and the sweep-line method for detecting terminal states

State-space exploration is one of the main approaches to computer-aided verification and analysis of finite-state systems. It is used to reason about a wide range of properties during the design phase of a system, including system deadlocks. Unfortunately, state-space exploration needs to handle huge state spaces for most practical systems. Several state-space reduction methods have been developed to tackle this problem. In this paper, we develop algorithms for combining two of these methods: state equivalence class reduction and the sweep-line. The algorithms allow deadlocks to be detected by recording terminal states of the system on-the-fly during state-space exploration. We derive expressions for the complexity of the algorithms and demonstrate their usefulness with an industrial case study. Our results show that the combined method achieves at least a six-fold reduction of the state space for interesting parameter values compared with either method used in isolation while still proving the desired system property of the terminal states. The runtime performance of the combined method is almost the same as that of the equivalence class method over the chosen parameter range. Moreover, the improvement in space reduction increases with increased parameter values.

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

[2]  Kurt Jensen Condensed state spaces for symmetrical Coloured Petri Nets , 1996, Formal Methods Syst. Des..

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

[4]  Jonathan Billington,et al.  Verification of a Revised WAP Wireless Transaction Protocol , 2002, ICATPN.

[5]  Jens Bæk Jørgensen,et al.  Analysing Bang & Olufsen's BeoLink Audio/Video System Using Coloured Petri Nets , 1997 .

[6]  Jonathan Billington,et al.  A Formal and Executable Specification of the Internet Open Trading Protocol , 2002, EC-Web.

[7]  Gerard J. Holzmann An analysis of bitstate hashing , 1995 .

[8]  Gerard J. Holzmann,et al.  State-space caching revisited , 1995, Formal Methods Syst. Des..

[9]  William Stallings,et al.  Operating Systems: Internals and Design Principles , 1991 .

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

[11]  Gerard J. Holzmann,et al.  Algorithms for Automated Protocol Validation , 1988 .

[12]  Randal E. Bryant,et al.  Graph-Based Algorithms for Boolean Function Manipulation , 1986, IEEE Transactions on Computers.

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

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

[15]  Pierre Wolper,et al.  Reliable Hashing without Collosion Detection , 1993, CAV.

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

[17]  Lars Michael Kristensen,et al.  A Compositional Sweep-Line State Space Exploration Method , 2002, FORTE.

[18]  Lars Michael Kristensen,et al.  A Generalised Sweep-Line Method for Safety Properties , 2002, FME.

[19]  Peter Buchholz,et al.  Efficient Computation and Representation of Large Reachability Sets for Composed Automata , 2002, Discret. Event Dyn. Syst..

[20]  Kimmo Varpaaniemi,et al.  On Combining the Stubborn Set Method with the Sleep Set Method , 1994, Application and Theory of Petri Nets.

[21]  Peter Buchholz,et al.  Hierarchical Reachability Graph Generation for Petri Nets , 2002, Formal Methods Syst. Des..

[22]  Pierre Wolper,et al.  Partial-Order Methods for Temporal Verification , 1993, CONCUR.

[23]  Lars Michael Kristensen,et al.  State Space Methods for Coloured Petri Nets , 2000 .

[24]  David L. Dill,et al.  Improved probabilistic verification by hash compaction , 1995, CHARME.

[25]  Søren Christensen,et al.  Analysing Bang & Olufsen's BeoLink® Audio/Video System Using Coloured Petri Nets , 1997, ICATPN.

[26]  Gerard J. Holzmann Algorithms for automated protocol verification , 1990, AT&T Technical Journal.

[27]  Gerard J. Holzmann,et al.  An improved protocol reachability analysis technique , 1988, Softw. Pract. Exp..

[28]  Kenneth L. McMillan,et al.  Symbolic model checking , 1992 .

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

[30]  Antti Valmari,et al.  A stubborn attack on state explosion , 1990, Formal Methods Syst. Des..

[31]  Steven Gordon Verification of the WAP Transaction Layer using Coloured Petri Nets , 2001 .

[32]  Doron A. Peled,et al.  All from One, One for All: on Model Checking Using Representatives , 1993, CAV.

[33]  Lars Michael Kristensen,et al.  A Sweep-Line Method for State Space Exploration , 2001, TACAS.

[34]  Antti Valmari,et al.  Compositionality in State Space Verification Methods , 1996, Application and Theory of Petri Nets.

[35]  Thierry Jéron,et al.  Bounded-memory Algorithms for Verification On-the-fly , 1991, CAV.

[36]  Robin Milner,et al.  Communication and concurrency , 1989, PHI Series in computer science.

[37]  Thomas Mailund Analysing Infinite-State Systems by Combining Equivalence Reduction and the Sweep-Line Method , 2002, ICATPN.

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

[39]  Gerard J. Holzmann,et al.  Design and validation of computer protocols , 1991 .

[40]  Mikko Tiusanen,et al.  Symbolic, Symmetry, and Stubborn Set Searches , 1994, Application and Theory of Petri Nets.

[41]  Tadao Murata,et al.  Petri nets: Properties, analysis and applications , 1989, Proc. IEEE.

[42]  Andrew S. Tanenbaum,et al.  Computer networks (3rd ed.) , 1996 .