Unfoldings - A Partial-Order Approach to Model Checking

In this book the authors introduce unfoldings, an approach to model checking which alleviates the state explosion problem by means of concurrency theory. They offer an introduction to the basics of the method and detail an unfolding-based algorithm for model checking concurrent systems against properties specified as formulas of linear temporal logic (LTL). The book will be of value to researchers and graduate students engaged in automatic verification and concurrency theory.

[1]  Denis Poitrenaud,et al.  Designing a LTL Model-Checker Based on Unfolding Graphs , 2000, ICATPN.

[2]  Thomas Chatain,et al.  Symbolic Diagnosis of Partially Observable Concurrent Systems , 2004, FORTE.

[3]  Amir Pnueli,et al.  The temporal logic of programs , 1977, 18th Annual Symposium on Foundations of Computer Science (sfcs 1977).

[4]  Ilkka Niemelä,et al.  Smodels - An Implementation of the Stable Model and Well-Founded Semantics for Normal LP , 1997, LPNMR.

[5]  Pierre Wolper,et al.  Memory-efficient algorithms for the verification of temporal properties , 1990, Formal Methods Syst. Des..

[6]  Bernd Grahlmann,et al.  The PEP Tool , 1997, CAV.

[7]  Colin Stirling,et al.  Local Model Checking for Infinite State Spaces , 1992, Theor. Comput. Sci..

[8]  Parosh Aziz Abdulla,et al.  Algorithmic Analysis of Programs with Well Quasi-ordered Domains , 2000, Inf. Comput..

[9]  Wojciech Penczek,et al.  Stuttering-Insensitive Automata for On-the-fly Detection of Livelock Properties , 2002, Electron. Notes Theor. Comput. Sci..

[10]  Patricia Bouyer,et al.  Timed Unfoldings for Networks of Timed Automata , 2006, ATVA.

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

[12]  Kim Guldstrand Larsen,et al.  CONCUR 2001 - Concurrency Theory, 12th International Conference, Aalborg, Denmark, August 20-25, 2001, Proceedings , 2001 .

[13]  Glynn Winskel,et al.  Event structures : Lecture notes for the Advanced Course on Petri Nets , 1986 .

[14]  Johan Lilius,et al.  A causal semantics for time Petri nets , 2000, Theor. Comput. Sci..

[15]  Maciej Koutny,et al.  Semantics of Inhibitor Nets , 1995, Inf. Comput..

[16]  Stephan Melzer,et al.  Deadlock Checking Using Net Unfoldings , 1997, CAV.

[17]  Joost Engelfriet,et al.  Branching processes of Petri nets , 1991, Acta Informatica.

[18]  Glynn Winskel,et al.  An introduction to event structures , 1988, REX Workshop.

[19]  Leslie Lamport,et al.  What Good is Temporal Logic? , 1983, IFIP Congress.

[20]  Victor Khomenko,et al.  Parallel LTL-X Model Checking of High-Level Petri Nets Based on Unfoldings , 2004, CAV.

[21]  Grzegorz Rozenberg,et al.  Transition Systems, Event Structures and Unfoldings , 1991 .

[22]  Robert E. Tarjan,et al.  Depth-First Search and Linear Graph Algorithms , 1972, SIAM J. Comput..

[23]  Maciej Koutny,et al.  Branching Processes of High-Level Petri Nets , 2003, TACAS.

[24]  Lubos Brim,et al.  Tutorial: Parallel Model Checking , 2007, SPIN.

[25]  Antti Valmari,et al.  On-the-Fly Verification with Stubborn Sets , 1993, CAV.

[26]  Raymond R. Devillers,et al.  Sequential and Concurrent Behaviour in Petri Net Theory , 1987, Theor. Comput. Sci..

[27]  Frank Wallner,et al.  Model Checking LTL Using Net Unforldings , 1998, CAV.

[28]  Wenhui Zhang,et al.  Automated Technology for Verification and Analysis, 4th International Symposium, ATVA 2006, Beijing, China, October 23-26, 2006 , 2006, ATVA.

[29]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[30]  D. Holdstock Past, present--and future? , 2005, Medicine, conflict, and survival.

[31]  Keijo Heljanko DEADLOCK AND REACHABILITY CHECKING WITH FINITE COMPLETE PREFIXES , 1999 .

[32]  Maciej Koutny,et al.  Detecting state coding conflicts in STG unfoldings using SAT , 2003, Third International Conference on Application of Concurrency to System Design, 2003. Proceedings..

[33]  Maciej Koutny,et al.  Parallelisation of the Petri Net Unfolding Algorithm , 2002, TACAS.

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

[35]  Viktor Schuppan,et al.  Liveness Checking as Safety Checking , 2002, FMICS.

[36]  Alexandre Yakovlev,et al.  Unfolding and Finite Prefix for Nets with Read Arcs , 1998, CONCUR.

[37]  Antti Valmari,et al.  Checking for CFFD-Preorder with Tester Processes , 2000, TACAS.

[38]  Jaco Geldenhuys,et al.  More efficient on-the-fly LTL verification with Tarjan's algorithm , 2005, Theor. Comput. Sci..

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

[40]  César Fernández,et al.  Non-sequential Processes , 1986, Advances in Petri Nets.

[41]  Christos H. Papadimitriou,et al.  Computational complexity , 1993 .

[42]  C. Petri Kommunikation mit Automaten , 1962 .

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

[44]  Thomas Chatain,et al.  Time Supervision of Concurrent Systems Using Symbolic Unfoldings of Time Petri Nets , 2005, FORMATS.

[45]  Walter Vogler,et al.  An Improvement of McMillan's Unfolding Algorithm , 2002, Formal Methods Syst. Des..

[46]  Ed Brinksma,et al.  A Complete Finite Prefix for Process Algebra , 1999, CAV.

[47]  Denis Poitrenaud,et al.  Unfolding of Products of Symmetrical Petri Nets , 2001, ICATPN.

[48]  Javier Esparza,et al.  A New Unfolding Approach to LTL Model Checking , 2000, ICALP.

[49]  Paolo Baldan,et al.  Distributed Unfolding of Petri Nets , 2006, FoSSaCS.

[50]  Burkhard Graves Computing Reachability Properties Hidden in Finite Net Unfoldings , 1997, FSTTCS.

[51]  Graham Higman,et al.  Ordering by Divisibility in Abstract Algebras , 1952 .

[52]  Grzegorz Rozenberg,et al.  Behavioural notions for elementary net systems , 1989, Distributed Computing.

[53]  Keijo Heljanko,et al.  Model Checking with Finite Complete Prefixes Is PSPACE-Complete , 2000, CONCUR.

[54]  Claus Schröter Halbordnungs- und Reduktionstechniken für die automatische Verifikation von verteilten Systemen , 2006 .

[55]  Patrik Haslum,et al.  Directed Unfolding of Petri Nets , 2008, Trans. Petri Nets Other Model. Concurr..

[56]  Paul Gastin,et al.  Fast LTL to Büchi Automata Translation , 2001, CAV.

[57]  Javier Esparza,et al.  Model Checking of Persistent Petri Nets , 1991, CSL.

[58]  Hongyang Qu,et al.  The Implementation of Mazurkiewicz Traces in POEM , 2006, ATVA.

[59]  Javier Esparza,et al.  The Model-Checking Kit , 2003, ICATPN.

[60]  Albert Benveniste,et al.  Distributed Monitoring of Concurrent and Asynchronous Systems , 2003, CONCUR.

[61]  Rajeev Alur,et al.  A Theory of Timed Automata , 1994, Theor. Comput. Sci..

[62]  Javier Esparza Model Checking Using Net Unfoldings , 1994, Sci. Comput. Program..

[63]  Hans Fleischhack,et al.  Computing a Finite Prefix of a Time Petri Net , 2002, ICATPN.

[64]  Glynn Winskel,et al.  Petri Nets, Event Structures and Domains , 1979, Semantics of Concurrent Computation.

[65]  Javier Esparza,et al.  An Unfolding Algorithm for Synchronous Products of Transition Systems , 1999, CONCUR.

[66]  Pierre Wolper,et al.  An Automata-Theoretic Approach to Automatic Program Verification (Preliminary Report) , 1986, LICS.

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

[68]  Wolfgang Reisig,et al.  The Non-sequential Behavior of Petri Nets , 1983, Inf. Control..

[69]  Parosh Aziz Abdulla,et al.  Unfoldings of Unbounded Petri Nets , 2000, CAV.

[70]  Volker Diekert,et al.  The Book of Traces , 1995 .

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

[72]  Roberto Bruni,et al.  Pre-nets, Read Arcs and Unfolding: A Functorial Presentation , 2002, WADT.

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

[74]  Kenneth L. McMillan,et al.  Trace Theoretic Verification of Asynchronous Circuits Using Unfoldings , 1995, CAV.

[75]  Keijo Heljanko Using Logic Programs with Stable Model Semantics to Solve Deadlock and Reachability Problems for 1-Safe Petri Nets , 1999, Fundam. Informaticae.

[76]  Keijo Heljanko,et al.  Combining symbolic and partial order methods for model checking 1-safe Petri nets , 2002 .

[77]  Thomas Chatain,et al.  On the well-foundedness of adequate orders used for construction of complete unfolding prefixes , 2007, Inf. Process. Lett..

[78]  André Arnold,et al.  Finite transition systems - semantics of communicating systems , 1994, Prentice Hall international series in computer science.

[79]  Timo Latvala,et al.  Improved On-the-fly Verification with Testers , 2004, Nord. J. Comput..

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

[81]  Barbara König,et al.  Augur - A Tool for the Analysis of Graph Transformation Systems , 2005, Bull. EATCS.

[82]  Maciej Koutny,et al.  Towards an Efficient Algorithm for Unfolding Petri Nets , 2001, CONCUR.

[83]  Pierre Wolper,et al.  Simple on-the-fly automatic verification of linear temporal logic , 1995, PSTV.

[84]  Javier Esparza,et al.  Implementing LTL model checking with net unfoldings , 2001, SPIN '01.

[85]  Maciej Koutny,et al.  Logic Synthesis for Asynchronous Circuits Based on STG Unfoldings and Incremental SAT , 2006, Fundam. Informaticae.

[86]  Kenneth L. McMillan,et al.  Using Unfoldings to Avoid the State Explosion Problem in the Verification of Asynchronous Circuits , 1992, CAV.

[87]  Thomas Chatain,et al.  Complete Finite Prefixes of Symbolic Unfoldings of Safe Time Petri Nets , 2006, ICATPN.

[88]  Javier Esparza,et al.  Verification Using PEP , 1996, AMAST.

[89]  Maciej Koutny,et al.  LP Deadlock Checking Using Partial Order Dependencies , 2000, CONCUR.

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

[91]  Pierre Wolper,et al.  Using partial orders for the efficient verification of deadlock freedom and safety properties , 1991, Formal Methods Syst. Des..

[92]  Denis Lugiez,et al.  Local First Search - A New Paradigm for Partial Order Reductions , 2001, CONCUR.

[93]  Javier Esparza,et al.  Decidability and Complexity of Petri Net Problems - An Introduction , 1996, Petri Nets.

[94]  Wolfgang Reisig,et al.  Lectures on Petri Nets I: Basic Models , 1996, Lecture Notes in Computer Science.

[95]  Thomas Chatain,et al.  Symbolic Unfoldings for Networks of Timed Automata , 2006, ATVA.

[96]  Javier Esparza,et al.  Reachability Analysis Using Net Unfoldings , 2000 .

[97]  David Walker,et al.  Local Model Checking in the Modal mu-Calculus , 1991, Theor. Comput. Sci..

[98]  Javier Esparza,et al.  A Note on On-the-Fly Verification Algorithms , 2005, TACAS.

[99]  Doron A. Peled,et al.  Stutter-Invariant Temporal Properties are Expressible Without the Next-Time Operator , 1997, Inf. Process. Lett..

[100]  Alexandre Yakovlev,et al.  Resolution of Encoding Conflicts by Signal Insertion and Concurrency Reduction Based on STG Unfoldings , 2006, Sixth International Conference on Application of Concurrency to System Design (ACSD'06).

[101]  Maciej Koutny,et al.  Canonical prefixes of Petri net unfoldings , 2002, Acta Informatica.

[102]  Luciano Lavagno,et al.  Logic Synthesis for Asynchronous Controllers and Interfaces , 2002 .

[103]  Jean-Michel Couvreur,et al.  On-the-Fly Verification of Linear Temporal Logic , 1999, World Congress on Formal Methods.

[104]  Victor Khomenko,et al.  Model checking based on prefixes of petri net unfoldings , 2003 .

[105]  Pierre Wolper,et al.  Reasoning About Infinite Computations , 1994, Inf. Comput..

[106]  Eike Best,et al.  Nonsequential Processes , 1988, EATCS Monographs on Theoretical Computer Science.

[107]  Albert Benveniste,et al.  Diagnosis of asynchronous discrete event systems, a net unfolding approach , 2002, Sixth International Workshop on Discrete Event Systems, 2002. Proceedings..

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

[109]  S. Römer Theorie und Praxis der Netzentfaltungen als Basis für die Verifikation nebenläufiger Systeme , 2000 .

[110]  Maciej Koutny,et al.  Process semantics of general inhibitor nets , 2004, Inf. Comput..

[111]  Joost Engelfriet,et al.  Elementary Net Systems , 1996, Applications and Theory of Petri Nets.

[112]  Javier Esparza,et al.  A negative result on depth-first net unfoldings , 2007, International Journal on Software Tools for Technology Transfer.

[113]  B. König,et al.  Verifying Finite-State Graph Grammars: An Unfolding-Based Approach , 2004, CONCUR.

[114]  Mihalis Yannakakis,et al.  On nested depth first search , 1996, The Spin Verification System.

[115]  Yu Lei,et al.  An Approach to Unfolding Asynchronous Communication Protocols , 2005, FM.

[116]  Kenneth L. McMillan,et al.  A technique of state space search based on unfolding , 1995, Formal Methods Syst. Des..