Hierarchical Reachability Graph of Bounded Petri Nets for Concurrent-Software Analysis

Petri nets have been proposed as a promising tool for modeling and analyzing concurrent-software systems such as Ada programs and communication protocol software. Among analysis techniques available for Petri nets, the most general approach is to generate all possible states (markings) of the system in a form of a so-called reachability graph. However, this conventional reachability graph approach is inefficient or intractable, even for a bounded Petri net, due to state explosion in many practical applications. To cope with this problem, this paper proposes a method for constructing a hierarchically organized state space called the hierarchical reachability graph (HRG). Using the HRG, we obtain necessary and sufficient conditions for reachability and deadlock, as well as algorithms to test whether a given state or marking is reachable from the initial state and whether there is a deadlock state (a state with no successor states). >

[1]  Michal Young,et al.  Compositional reachability analysis using process algebra , 1991, TAV4.

[2]  Tadao Murata,et al.  Detection of Ada Static Deadlocks Using Petri Net Invariants , 1989, IEEE Trans. Software Eng..

[3]  C. A. R. Hoare,et al.  A Theory of Communicating Sequential Processes , 1984, JACM.

[4]  Jonathan Billington,et al.  Protocol analysis using numerical Petri nets , 1985, Applications and Theory in Petri Nets.

[5]  Tiusanen Mikko,et al.  Graph Models for Static Analysis of Ada Tasking Programs , 1992 .

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

[7]  Rami R. Razouk,et al.  Interactive State-Space Analysis of Concurrent Systems , 1987, IEEE Transactions on Software Engineering.

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

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

[10]  Antti Valmari,et al.  The Weakest Compositional Semantic Equivalence Preserving Nexttime-less Linear temporal Logic , 1992, CONCUR.

[11]  Richard N. Taylor,et al.  A general-purpose algorithm for analyzing concurrent programs , 1983, CACM.

[12]  Robin Milner,et al.  A Calculus of Communicating Systems , 1980, Lecture Notes in Computer Science.

[13]  Toshinori Suzuki,et al.  A Protocol Modeling and Verification Approach Based on a Specification Language and Petri Nets , 1990, IEEE Trans. Software Eng..

[14]  Jan A. Bergstra,et al.  Process Algebra for Synchronous Communication , 1984, Inf. Control..

[15]  Martti Tienari,et al.  An Improved Failures Equivalence for Finite-State Systems with a Reduction Algorithm , 1991, Protocol Specification, Testing and Verification.

[16]  Lori A. Clarke,et al.  Task interaction graphs for concurrency analysis , 1989, ICSE '89.

[17]  Antti Valmari,et al.  Compositional State Space Generation , 1991, Applications and Theory of Petri Nets.

[18]  Michel Diaz,et al.  Modeling and Analysis of Communication and Cooperation Protocols Using Petri Net Based Models , 1982, Comput. Networks.

[19]  Antti Valmari,et al.  Using Truth-Preserving Reductions to Improve the Clarity of Kripke-Models , 1991, CONCUR.

[20]  Maciej Koutny,et al.  Optimal simulations, nets and reachability graphs , 1990, Applications and Theory of Petri Nets.

[21]  Sol M. Shatz,et al.  A petri net framework for automated static analysis of Ada tasking behavior , 1988, J. Syst. Softw..

[22]  Tommaso Bolognesi,et al.  Tableau methods to describe strong bisimilarity on LOTOS processes involving pure interleaving and enabling , 1994, FORTE.

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

[24]  Francesco Tisato,et al.  Modeling the Ada Task System by Petri Nets , 1985, Comput. Lang..