Deciding structural liveness of Petri nets

Deciding structural liveness of Petri nets

Petr Jančar Dept Comp. Sci., FEI, Techn. Univ. Ostrava (VŠB-TUO),
17. listopadu 15, 70833 Ostrava, Czech Rep.

Place/transition Petri nets are a standard model for a class of distributed systems whose reachability spaces might be infinite. One of well-studied topics is the verification of safety and liveness properties in this model; despite the extensive research effort, some basic problems remain open, which is exemplified by the open complexity status of the reachability problem. The liveness problems are known to be closely related to the reachability problem, and many structural properties of nets that are related to liveness have been studied.

Somewhat surprisingly, the decidability status of the problem if a net is structurally live, i.e. if there is an initial marking for which it is live, has remained open, as also a recent paper (Best and Esparza, 2016) emphasizes. Here we show that the structural liveness problem for Petri nets is decidable.

A crucial ingredient of the proof is the result by Leroux (LiCS 2013) showing that we can compute a finite (Presburger) description of the reachability set for a marked Petri net if this set is semilinear.

1 Introduction

Petri nets are a standard tool for modeling and analysing a class of distributed systems; we can name [reisig2013] as a recent introductory monograph for this area. A natural part of the analysis of such systems is checking the safety and/or liveness properties, where the question of deadlock-freeness is just one example.

The classical version of place/transition Petri nets (exemplified by Fig. 1) is used to model systems with potentially infinite state spaces; here the decidability and/or complexity questions for respective analysis problems are often intricate. E.g., despite several decades of research the complexity status of the basic problem of reachability (can the system get from one given configuration to another?) remains unclear; we know that the problem is -hard due to a classical construction by Lipton (see, e.g., [DBLP:conf/ac/Esparza96]) but the known upper complexity bounds are not primitive recursive (we can refer to [DBLP:conf/lics/LerouxS15] and the references therein for further information).

The liveness of a transition (modelling a system action) is a related problem; its complementary problem asks if for a given initial marking (modelling an initial system configuration) the net enables to reach a marking in which the transition is dead, in the sense that it can be never performed in the future. A marked net , i.e. a net with an initial marking , is live if all its transitions are live.

The close relationship of the problems of reachability and liveness has been clear since the early works by Hack [DBLP:conf/focs/Hack74, DBLP:books/garland/Hack75]. Nevertheless, the situation is different for the problem of structural liveness that asks, given a net , if there is a marking such that is live. Though semidecidability of structural liveness is clear from the above facts, the decidability question has been open so far: see, e.g., the overview [wimmel2008] and in particular the recent paper [DBLP:journals/ipl/BestE16] where this problem (STLP) is discussed in the Concluding Remarks section.

Here we show the decidability of structural liveness, by showing the semidecidability of the complementary problem. The idea is to construct, for a given net , a marked net (partly sketched in Fig. LABEL:fig:decidpslp) that works in two phases (controlled by additional places): in the first phase, an arbitrary marking from the set of markings with at least one dead transition is generated, and then is simulated in the reverse mode from . If is not structurally live, then the projection of the reachability set of to the set of places of is the whole set ; if is structurally live, then there is such that the projection of any marking reachable from differs from .

In the first case (with the whole set ) the reachability set of is surely semilinear, i.e. Presburger definable. Due to a result by Leroux [DBLP:conf/lics/Leroux13], there is an algorithm that finishes with a Presburger description of the reachability set of when it is semilinear (while it can go forever when not). This yields the announced semidecidability.

The construction of the above mentioned (downward closed) set is standard; the crucial ingredient of our proof is the mentioned result by Leroux. Another ingredient is the decidability of reachability; nevertheless it is not clear that the reachability reduces to the structural liveness, and the complexity of the structural liveness problem is left open for future research.

Section 2 provides the necessary formal background, and Section LABEL:sec:SLPdecid shows the decidability result. In Section LABEL:sec:AddRem a few comments are added, and in particular an example of a net is given where the set of live markings is not semilinear.

2 Basic definitions

By we denote the set . For a set , by we denote the set of finite sequences of elements of , and denotes the empty sequence.


A Petri net, or just a net for short, is a tuple where and are two disjoint finite sets of places and transitions, respectively, and is the weighted flow function. A marking of is an element of , a mapping from to , often viewed also as a vector with components.

Figure 1: Example of a net , with marking

Fig. 1 presents a net where , , , etc.; we do not draw an arc from to when , and we assume for the arcs with no depicted numbers. Fig. 1 also depicts a marking by using black tokens, namely , assuming the ordering of places.


Assuming a net , for each we define the following relation on :

Comments 0
Request Comment
You are adding the first comment!
How to quickly get a good reply:
  • Give credit where it’s due by listing out the positive aspects of a paper before getting into which changes should be made.
  • Be specific in your critique, and provide supporting evidence with appropriate references to substantiate general statements.
  • Your comment should inspire ideas to flow and help the author improves the paper.

The better we are at sharing our knowledge with each other, the faster we move forward.
The feedback must be of minimum 40 characters and the title a minimum of 5 characters
Add comment
Loading ...
This is a comment super asjknd jkasnjk adsnkj
The feedback must be of minumum 40 characters
The feedback must be of minumum 40 characters

You are asking your first question!
How to quickly get a good answer:
  • Keep your question short and to the point
  • Check for grammar or spelling errors.
  • Phrase it like a question
Test description