Volume E92.A (2009) Issue 11 Pages 2707-2716
Invariants of Petri nets are fundamental algebraic characteristics of Petri nets, and are used in various situations, such as checking (as necessity of) liveness, boundedness, periodicity and so on. Any given Petri net N has two kinds of invariants: a P-invariant is a |P|-dimensional vector Y with Yt·A = 0 and a T-invariant is a |T|-dimensional vector X with A · X =0 for the place-transition incidence matrix A of N. T-invariants are nonnegative integer vectors, while this is not always the case with P-invariants. This paper deals only with nonnegative integer invariants (invariants that are nonnegative vectors) and shows results common to the two invariants. For simplicity of discussion, only P-invariants are treated. The Fourier-Motzkin method is well-known for computing all minimal support integer invariants. This method, however, has a critical deficiency such that, even if a given Perti net N has any invariant, it is likely that no invariants are obtained because of an overflow in storing intermediate vectors as candidates for invariants. The subject of the paper is to give an overview and results known to us for efficiently computing minimal-support nonnegative integer invariants of a given Petri net by means of the Fourier-Motzkin method. Also included are algorithms for efficiently extracting siphon-traps of a Petri net.