Question-guided stubborn set methods for state properties

This paper presents two stubborn set methods for alleviating the state explosion problem when reasoning about state properties. The first method makes it possible to determine whether a state of the system is reachable in which a given state predicate holds. The second method makes it possible to determine if from all reachable states it is possible to reach a state where a given state predicate holds. The novelty of the two methods is that they rely on so-called up sets and down sets rather than the notion of visible transitions which causes earlier methods to give only limited reduction of the state space, especially when considering state predicates referring to many of the state variables of the system. The suggested stubborn set methods have been implemented in the LoLA tool, and we report on some experimental results obtained with this computer tool together with some general guidance for applying the two question-guided stubborn set methods and their different implementations in verification. The two methods are presented in the context of Petri Nets, but are applicable also to other state and action oriented modelling formalisms for which the basic stubborn set theory is applicable.

[1]  Rob J. van Glabbeek,et al.  Branching Time and Abstraction in Bisimulation Semantics (Extended Abstract) , 1989, IFIP Congress.

[2]  Matjaz B. Juric,et al.  Business process execution language for web services , 2004 .

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

[4]  Edmund M. Clarke,et al.  State space reduction using partial order techniques , 1999, International Journal on Software Tools for Technology Transfer.

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

[6]  C. A. R. Hoare,et al.  Communicating Sequential Processes (Reprint) , 1983, Commun. ACM.

[7]  Amir Pnueli The Temporal Semantics of Concurrent Programs , 1981, Theor. Comput. Sci..

[8]  A. Valmari,et al.  Stubborn Sets for Reduced State Space Generation, Proc. 11th Internat. Conf. on Application and Theory of Petri Nets , 1990 .

[9]  Doron A. Peled,et al.  Relaxed Visibility Enhances Partial Order Reduction , 2001, Formal Methods Syst. Des..

[10]  Joseph Sifakis,et al.  Specification and verification of concurrent systems in CESAR , 1982, Symposium on Programming.

[11]  Edmund M. Clarke,et al.  Design and Synthesis of Synchronization Skeletons Using Branching-Time Temporal Logic , 1981, Logic of Programs.

[12]  Johan Lewi,et al.  A Linear Local Model Checking Algorithm for CTL , 1993, CONCUR.

[13]  Lars Michael Kristensen,et al.  Question-guided stubborn set methods for state properties , 2000, Formal Methods Syst. Des..

[14]  Fabio Casati,et al.  Business Process Management: 3rd International Conference, BPM 2005, Nancy, France, September 5-8, 2005, Proceedings (Lecture Notes in Computer Science) , 2005 .

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

[16]  Christian Stahl,et al.  A Petri Net Semantics for BPEL , 2005 .

[17]  Antti Valmari,et al.  Stubborn sets for reduced state generation , 1991 .

[18]  Wolfgang Reisig,et al.  Hazard detection in a GALS wrapper: a case study , 2005, Fifth International Conference on Application of Concurrency to System Design (ACSD'05).

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

[20]  Karsten Schmidt,et al.  Stubborn Sets for Standard Properties , 1999 .

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

[22]  Doron A. Peled,et al.  Combining partial order reductions with on-the-fly model-checking , 1994, Formal Methods Syst. Des..

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

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

[25]  A. Gibbons Algorithmic Graph Theory , 1985 .

[26]  Karsten Schmidt LoLA: a low level analyser , 2000 .

[27]  David L. Dill,et al.  The Murphi Verification System , 1996, CAV.

[28]  Antti Valmari,et al.  Stubborn set methods for process algebras , 1997, Partial Order Methods in Verification.

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

[30]  Patrice Godefroid Using Partial Orders to Improve Automatic Verification Methods , 1990, CAV.

[31]  Michael K. Molloy,et al.  Petri net , 2003 .

[32]  Karsten Wolf,et al.  Transforming BPEL to Petri Nets , 2005, Business Process Management.

[33]  Doron A. Peled,et al.  Ten Years of Partial Order Reduction , 1998, CAV.

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

[35]  Wolfgang Reisig,et al.  Place or Transition Petri Nets , 1996, Petri Nets.

[36]  Gerard J. Holzmann,et al.  The SPIN Model Checker , 2003 .

[37]  Stefan Edelkamp,et al.  Partial Order Reduction in Directed Model Checking , 2002, SPIN.

[38]  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.

[39]  Christer Sjöström,et al.  State-of-the-art report , 1997 .

[40]  Tony Andrews Business Process Execution Language for Web Services Version 1.1 , 2003 .

[41]  Jakob Rehof,et al.  Zing: A Model Checker for Concurrent Software , 2004, CAV.