The General Vector Addition System Reachability Problem by Presburger Inductive Invariants

The reachability problem for Vector Addition Systems (VASs) is a central problem of net theory. The general problem is known decidable by algorithms exclusively based on the classical Kosaraju-Lambert-Mayr-Sacerdote-Tenney decomposition. This decomposition is used in this paper to prove that the Parikh images of languages accepted by VASs are semi-pseudo-linear; a class that extends the semi-linear sets, a.k.a. the sets definable in the Presburger arithmetic. We provide an application of this result; we prove that a final configuration is not reachable from an initial one if and only if there exists a Presburger formula denoting a forward inductive invariant that contains the initial configuration but not the final one. Since we can decide if a Preburger formula denotes an inductive invariant, we deduce that there exist checkable certificates of non-reachability. In particular, there exists a simple algorithm for deciding the general VAS reachability problem based on two semi-algorithms. A first one that tries to prove the reachability by enumerating finite sequences of actions and a second one that tries to prove the non-reachability by enumerating Presburger formulas.


Introduction
Vector Addition Systems (VASs) or equivalently Petri Nets are one of the most popular formal methods for the representation and the analysis of parallel processes [2]. The reachability problem is central since many computational problems (even outside the parallel processes) reduce to the reachability problem. Sacerdote and Tenney provided in [10] a partial proof of decidability of this problem. The proof was completed in 1981 by Mayr [7] and simplified by Kosaraju [5] from [10,7]. Ten years later, Lambert [6] provided a more simplified version based on [5]. This last proof still remains difficult and the upper bound complexity of the corresponding algorithm is just known to be non-primitive recursive. Nowadays, it is an open problem wether an elementary upper complexity bound for this problem exists. In fact, the known general reachability algorithms are exclusively based on the Kosaraju-Lambert-Mayr-Sacerdote-Tenney (KLMST) decomposition.
In this paper, by using the KLMST decomposition we prove that the Parikh images of languages recognized by VASs are semi-pseudo-linear, a class that extends the semi-linear sets, a.k.a. the sets definable in Presburger arithmetic [3]. We provide an application of this result; we prove that a final configuration is not reachable from an initial one if and only if there exists a forward inductive invariant definable in Presburger arithmetic that contains the initial configuration but not the final one. Since we can decide if a Presburger formula denotes a forward inductive invariant, we deduce that there exist checkable certificates of non-reachability. In particular, there exists a simple algorithm for deciding the general VAS reachability problem based on two semi-algorithms. A first one that proves the reachability by enumerating finite sequences of actions denoting a path from the initial configuration to the final one and a second one that proves the non-reachability by enumerating Presburger formulas denoting inductive invariant containing the initial configuration but not the final one.
Outline of the paper : Section 2 introduces the class of Vector Addition Systems (VASs). Section 3 recalls the class of Marked Reachability Graph Sequences (MRGSs) and the KLMST decomposition of languages recognized by VASs into finite unions of languages recognized by perfect MRGSs. Semi-pseudo-linear sets are introduced in Section 4. In Section 5, Parikh images of languages recognized by perfect MRGSs are proved to be pseudo-linear. In Section 6 we introduce the class of Petri sets a subclass of the semi-pseudo-linear sets stable by intersection with every semi-linear set. Reachability sets of VASs from semi-linear sets are proved to be Petri sets in this section. In Section 7 we study approximations of two pseudo-linear sets with an empty intersection. Finally in Section 8 we deduce that if a final configuration is not reachable from an initial one, there exists a forward inductive invariant definable in Presburger arithmetic that contains the initial configuration but not the final one.

Vector Addition Systems
We denote by Q, Q + , Z, N, respectively, the set of rational values, non-negative rational values, the set of integers and the set of non-negative integers. The components of a vector x ∈ Q n are denoted by (x [1], . . . , x[n]). Let x 1 , x 2 , x ∈ Q n and r ∈ Q. The sum x 1 + x 2 and the product rx are naturally defined component wise. Given a function f : E → F where E, F are sets, we denote by f (X) = {f (x) | x ∈ X} for every subset X ⊆ E. This definition naturally defines sets X 1 + X 2 and RX where X 1 , X 2 , X ⊆ Q n and R ⊆ Q. With slight abuse of notation, {x 1 } + X 2 , X 1 + {x 2 }, {r}X and R{x} are simply denoted by x 1 + X 2 , X 1 + x 2 , rX and Rx.
The lattice (N, ≤) is completed with an additional element ⊤ such that k ≤ ⊤ for every k ∈ N ∪ {⊤}. The set N ∪ {⊤} is denoted by N ⊤ . Given a non-decreasing sequence (x i ) i≥0 in (N ⊤ , ≤) we denote by lim i→+∞ (x i ) the least upper bound in N ⊤ . The ⊤ element is interpreted as a "don't care value" by introducing the partial order ¢ over N ⊤ defined by x 1 ¢ x 2 if and only if x 1 = x 2 or x 2 = ⊤. Orders ≤ and ¢ are extended component-wise over N n ⊤ . The set of minimal elements for ≤ of a set X ⊆ N n is denoted by min(X). As (N n , ≤) is a well partially ordered set, the set min(X) is finite and X ⊆ min(X) + N n for every X ⊆ N n .
An alphabet is a non-empty finite set Σ. The set of words over Σ is denoted by Σ * . The empty word is denoted by ǫ. The concatenation of two words σ 1 and σ 2 is simply denoted by σ 1 σ 2 . The concatenation of r ≥ 1 times a word σ is denoted by σ r . By definition σ 0 = ǫ. The number of occurrences of an element a ∈ Σ in a word σ ∈ Σ * is denoted by |σ| a . The Parikh image of a word σ over Σ is the function ||σ|| Σ : Σ → N defined by ||σ|| Σ (a) = |σ| a VAS REACHABILITY PROBLEM 3 for every a ∈ Σ. This function is simply denoted by ||σ|| when Σ is known without every ambiguity. The Parikh image ||L|| of a language L ⊆ Σ * is defined as the set of functions ||σ|| over the words σ ∈ L.
A Vector Addition System (VAS) is a tuple V = (Σ, n, δ) where Σ is an alphabet, n ∈ N is the dimension, and δ : Σ → Z n is a displacement function. In the sequel, such a functions is naturally extended to a function δ : Σ * → Z n satisfying δ(ǫ) = 0 and δ(σ) = k i=1 δ(a i ) for every word σ = a 1 . . . a k of k ≥ 1 elements a i ∈ Σ. A configuration is a vector in N n and an extended configuration is a vector in N n ⊤ . For a ∈ Σ, the binary relation is the identity binary relation over the set of extended configurations. We denote by * − → V the reachability binary relation over the set of extended configurations defined by Intuitively the ⊤ element provides a simple way to get rid of some components of a VAS since these components remain equal to ⊤.
Given two sets S, S ′ of configurations, the set post * V (S) of reachable configurations from S and the set pre * V (S ′ ) of co-reachable configurations from S ′ are formally defined by: Figure 1. Observe that s A graph is a tuple G = (Q, Σ, T ) where Q is a finite set of states, Σ is an alphabet, T ⊆ Q × Σ × Q is a finite set of transitions. A path π is a word π = t 1 . . . t k of k ∈ N transitions t i ∈ T such that there exists q 0 , . . . , q k ∈ Q and there exists a 1 , . . . , a k ∈ Σ such that t i = (q j−1 , a j , q j ) for every 1 ≤ j ≤ k. In this case we say that π is a path labeled by σ = a 1 . . . a k from q 0 to q k . In the sequel we denote by q 0 σ − → G q k such a path π. If the states 4 J. LEROUX q 0 and q k are equal, the path π is called a cycle on this state. As usual a graph is said to be strongly connected if for every pair of states (q, q ′ ) ∈ Q × Q, there exists a path from q to q ′ . Remark 2.3. A Vector Addition System with States (VASS) is a tuple (Q, Σ, T, n, δ) where G = (Q, Σ, T ) is a graph and V = (Σ, n, δ) is a VAS. A pair in Q × N n is called a VASS configuration. Let σ ∈ Σ * . The VASS semantics is defined over the VASS configurations by (q, s) [4] that n-dim VASSs can be simulated by (n + 3)-dim VASs.
Example 2.4. Recall [4] that sets post * V (S) and pre * V (S ′ ) are definable in Presburger arithmetic FO (N, +, ≤) if S and S ′ are definable in this logic and n ≤ 5. Moreover from [4] we deduce an example of a 6-dim VAS V and a pair of configurations (s, are definable in Presburger arithmetic. This example is obtained by considering the VASS depicted in Figure 2. This VASS has a loop on state p and another loop on state q. Intuitively, iterating the loop on state p transfers the content of the first counter to the second counter whereas iterating the loop on state q transfers and multiplies by two the content of the second counter to the first counter. The third counter is incremented each time we come back to state p from q. In [4] the set of reachable configurations from (p, (1,0 . This set is not definable in Presburger arithmetic.

The KLMST decomposition
The emptiness of L(m, V, m ′ ) can be decided with the Kosaraju-Lambert-Mayr-Sacerdote-Tenney (KLMST) decomposition. This decomposition shows that L(m, V, m ′ ) is effectively decomposable as a finite union U ∈F L(U ) where L(U ) is the language recognized by a perfect Marked Reachability Graph Sequence (MRGS) U . We provide in Section 3.1 a new definition of perfect MRGS that does not require complex constructions. This definition is proved equivalent to the original one [6] in Section 3.2. Finally in Section 3.3 we recall the KLMST decomposition.
3.1. The Perfect MRGSs. In this section we introduce the class of Marked Reachability Graph Sequences (MRGSs) by following notations introduced by Lambert [6]. We also provide a new definition for the class of MRGSs said to be perfect [6].
A reachability graph for a VAS V = (Σ, n, δ) is a graph G = (Q, Σ, A marked reachability graph M = (m, x, G, x ′ , m ′ ) for V is a strongly connected reachability graph G for V equipped with two extended configurations x, x ′ ∈ Q respectively called the input state and the output VAS REACHABILITY PROBLEM 5 state, and equipped with two extended configurations m, m ′ satisfying m ¢ x and m ′ ¢ x ′ respectively called the input constraint and the output constraint. An accepted tuple for M is a tuple (s, π, s ′ ) where π = (x σ − → G x ′ ) is a path in G labeled by σ from the input state x to the output state x ′ and where s, s ′ ∈ N n are two configurations such that s ¢ m, s σ − → V s ′ and s ′ ¢ m ′ . Intuitively the graph G and the input/output states enforce σ to label a path in G from x to x ′ . The input/output constraints enforce s A marked reachability graph sequence (MRGS) for (m, V, m ′ ) is a sequence that alternates elements a j ∈ Σ and marked reachability graphs is an accepted tuple for M j for every 0 ≤ j ≤ k and such that s ′ j−1 a j − → V s j for every 1 ≤ j ≤ k. The language recognized by U is the set of words of the form σ = σ 0 a 1 σ 1 . . . a k σ k such that there exists an accepted sequence (s j , π j , s ′ j ) 0≤j≤k where π j is labeled by σ j . This set is denoted by L(U ).  2. An MRGS U is said to be perfect if for every c ∈ N, there exists an accepted sequence (s j , π j , s ′ j ) 0≤j≤k for U such that for every 0 ≤ j ≤ k: • there exists a prefix x j w j −→ G j x j of π j and a configuration r j such that s j w j −→ V r j and such that r j [i] ≥ c for every i such that x j [i] = ⊤, and • |π j | t ≥ c for every t ∈ T j ,

3.2.
Original perfect condition. The perfect condition given in Definition 3.2 is proved equivalent to the original one [6]. The original definition requires additional notions recalled in this section. These results are also used in Section 5 to establish the pseudo-linearity of Parikh images of language recognized by perfect MRGSs.
Let M = (m, x, G, x ′ , m ′ ) be a marked reachability graph. We say that M satisfies the input loop condition if there exists a sequence (x show that these conditions are in EXPSPACE since they reduce to covering problems [9].
Next, assume that there exist a cycle x w − → G x and an extended configuration y satisfying m Let us prove that for every i such that Therefore y ≥ m and an immediate induction shows that there exists a non-decreasing sequence (m c ) c of extended configurations such that m Symetrically, we prove the following lemma.

Lemma 3.4. The output loop condition is satisfied by
Let (q, q ′ ) a pair of states of a graph G = (Q, Σ, T ). We say that a function µ : Q → Q satisfies the Kirchhoff's laws of (q, G, q ′ ) if the following system χ q,G,q ′ (µ) holds where e : Q × Q → {0, 1} denotes the function that takes the value one iff its two arguments are equal: The Parikh image ||π|| of a path π from a state q to a state q ′ in a graph G = (Q, Σ, T ) provides a function ||π|| that satisfies χ q,G,q ′ . Euler's Lemma shows that if G is strongly connected then every function µ : T → N\{0} satisfying the Kirchhoff's laws of (q, G, q ′ ) is the Parikh image of a path from q to q ′ . Since χ q,G,q does not depend on q ∈ Q, this linear system is simply denoted by χ G in the sequel. Naturally, the Parikh image of a cycle satisfies this linear system. Let (s j , π j , s ′ j ) 0≤j≤k be an accepted sequence of an MRGS U . Observe that ξ = (s j , µ j , s ′ j ) 0≤j≤k with µ j = ||π j || is a solution of the linear system given in Figure 3 where δ(t) denotes δ(a) for every transition t = (q, a, q ′ ). This linear system is called the characteristic system of U . A solution ξ of the characteristic system is called concretizable if there exists an accepted sequence (s j , π j , s ′ j ) 0≤j≤k such that ξ = (s j , ||π j ||, s ′ j ) j . The homogeneous form of the characteristic system, obtained by replacing constant terms by zero is called the homogeneous characteristic system of U . This system is given in Figure 3. In the sequel, a solution of the homogeneous characteristic system is denoted by We say that U satisfies the large solution condition if there exists a non-decreasing sequence (ξ c ) c∈N of solutions ξ c = (s j,c , µ j,c , s ′ j,c ) j with components in N of the characteristic system such that: • lim c→+∞ s j,c = m j for every j, • lim c→+∞ µ j,c (t) = ⊤ for every j and t ∈ T j , and • lim c→+∞ s j,c = m ′ j for every j. The following lemma shows that the large solution condition is decidable in polynomial time since the condition (i) of this lemma is in PTIME with the Hermite decomposition and the condition (ii) is in PTIME with the interior points method.
Lemma 3.5. The large solution condition is satisfied by U iff the following conditions (i) and (ii) hold: (i) Its characteristic system has a solution ξ with components in Z, (ii) Its homogeneous characteristic system has a solution ξ 0 = (s 0,j , µ 0,j , s ′ 0,j ) j with components in Q satisfying for every j: Proof. Let us consider ξ and ξ 0 satisfying condition (i) and (ii). Since ξ 0 is the solution of a linear system, by multiplying ξ 0 by a positive integer, its components can be assumed in Z.
Note that in this case the components are in fact in N. Since there exists an integer c ≥ 0 such that ξ + cξ 0 has its components in N, by replacing ξ by ξ + cξ 0 we can assume that the components of ξ are in N. Now, just observe that ξ c = ξ + cξ 0 provides a sequence (ξ c ) c that proves that U satisfies the large solution condition.
Next assume that U satisfies the large solution condition. There exists a sequence (ξ c ) c proving the large solution condition of U . Let us denote by ξ = (s j , µ j , s ′ j ) j the first solution of this sequence. This solution naturally satisfies (i). Observe that there exists an integer c ≥ 0 such that for every j: Notice that ξ 0 = ξ c − ξ provides a solution of the homogeneous characteristic system satisfying condition (ii).
By adapting [6], we deduce that the perfect condition given in Definition 3.2 is equivalent to the original one [6] (also equivalent to the θ-condition [5]). More formally, we prove the following Proposition 3.6 (the proof is given in Appendix A).
Proposition 3.6. An MRGS U is perfect if and only if it satisfies the large solution condition and if its marked reachability graphs satisfy the input and output loop conditions.
3.3. The KLMST decomposition. We provide an informal presentation of the algorithm deciding the emptiness of L(s, V, s ′ ). This algorithm is based on a well-founded order ⊑ over the MRGSs. During its execution, a finite set F of MRGSs is computed. This set satisfies the invariant L(s, V, s ′ ) = U ∈F L(U ). Initially, the algorithm starts with the set F = {U } where U is an MRGS such that L(U ) = L(s, V, s ′ ) (see Example 3.1). Recursively, while the set F is non empty and it only contains MRGSs that do not satisfy the perfect condition, such an MRGS U is picked up from F . Since U is not perfect, Proposition 3.6 shows that either it does not satisfy the large solution condition or one of its marked reachability graphs does not satisfy the input or the output loop condition. Considering separately these cases, the algorithm computes a finite set F ′ of MRGSs satisfying U ′`U for every U ′ ∈ F ′ and L(U ) = ′ U ′ ∈F L(U ′ ). Then, the algorithm replaces F by F \{U } ∪ F ′ and it restarts the while loop. Since ⊑ is well-founded, the loop termination is guaranteed. When the loop terminates, the set F is either empty or it contains at least one perfect MRGS. If F is non empty the algorithm decides that L(s, V, s ′ ) is non empty, otherwise it decides that L(s, V, s ′ ) is empty. The correctness of the algorithm is obtained by observing that the language recognized by a perfect MRGS is always non empty. Now, let us assume that the while loop is continuing still there exists in F at least one MRGS that does not satisfy the perfect condition. The loop termination is still guaranty since ⊑ is well-founded and when the while loop terminates we get an eventually empty set F of perfect MRGSs such that L(s, V, s ′ ) = U ∈F L(U ). This algorithm provides the following Theorem 3.7.

Semi-Pseudo-Linear Sets
We introduce the class of semi-pseudo-linear sets.
We first introduce the class of monoids. A monoid of Q n is a set M ⊆ Q n such that is the minimal monoid that contains X with respect to the inclusion. This monoid is called the monoid generated by X and denoted X * . A monoid is said to be finitely generated if it can be generated by a finite set.
Let M be a monoid. A vector a ∈ M is said to be interior to M if for every x ∈ M there exists an integer N ≥ 1 satisfying N a ∈ x + M . The interior of a monoid M is the set of interior vectors to M . It is denoted by I(M ).  The following Lemma 4.2 characterizes the set I(P * ) where P is a finite set.
Proof. Since the case k = 0 is immediate, we assume that k ≥ 1. Let us first consider an interior vector a ∈ I(P * ). As k j=1 p j ∈ P * and a ∈ I(P * ), there exists N ≥ 1 such that N a ∈ ( k j=1 p j ) + P * . Let p ∈ P * such that N a = k j=1 p j + p. As p ∈ P * , there exists a sequence (N j ) 1≤j≤k of elements in N such that p = k j=1 N j p j . Combining this equality with the previous one provides a = k j=1 1+N j N p j . Thus a ∈ (Q + \{0})p 1 +· · ·+(Q + \{0})p k . Conversely, let us consider a ∈ P * ∩ ((Q + \{0})p 1 + · · · + (Q + \{0})p k ). Observe that there exists an integer d ≥ 1 large enough such that da ∈ (N\{0})p 1 + · · · + (N\{0})p k . In particular for every x ∈ P * there exists N ≥ 1 such that N da ∈ x + P * .
A set L ⊆ Z n is said to be linear [3] if there exists a vector b ∈ Z n and a finitely generated monoid M ⊆ Z n such that L = b + M . A semi-linear set S ⊆ Z n is a finite union of linear sets L i ⊆ Z n . Recall [3] that sets definable in FO (N, +, ≤), also called Presburger sets, are exactly the non-negative semi-linear sets. By observing that integers are differences of two non-negative integers, we deduce that sets definable in FO (Z, +, ≤) are exactly the semi-linear sets.
Let us now introduce the class of pseudo-linear sets and semi-pseudo-linear sets. Intuitively, the pseudo-linear sets extend the linear sets, and the semi-pseudo-linear sets extend the semi-linear sets. More formally, a set X ⊆ Z n is said to be pseudo-linear if there exists b ∈ Z n and a finitely generated monoid M ⊆ Z n such that X ⊆ b + M and such that for every finite set R of interior vectors to M , there exists x ∈ X such that x + R * ⊆ X. In this case, M is called a linearizator for X and the linear set L = b + M is called a linearization of X. A semi-pseudo-linear set is a finite union of pseudo-linear sets. Figure 5.
Observe that X is pseudo-linear and  Remark 4.5. Semi-pseudo-linear sets can be empty whereas pseudo-linear sets cannot be empty.
As expected, the class of pseudo-linear sets is stable by linear function images. A function f : Z n → Z n ′ is said linear if there exists a matrix A ∈ Z n×n ′ and a vector v ∈ Z n ′ such that f (x) = Ax + v for every x ∈ Z n . Proposition 4.6. Images X ′ = f (X) of pseudo-linear sets X by a linear function f are pseudo-linear. Moreover L ′ = f (L) is a linearization of X ′ for every linearization L of X.
Proof. Let us consider a linear function f : Z n → Z n ′ defined by a matrix A ∈ Z n×n ′ and a vector v ∈ Z n ′ . Let us consider a pseudo-linear set X ⊆ Z n . As X is pseudo-linear, there exists a linearizator M of X and a vector b ∈ Z n such that X ⊆ b + M . Let L = b + M . As M is finitely generated there exists a finite set P such that M = P * . We are going to prove that L ′ = f (L) is a linearization of X ′ = f (X). Let us consider b ′ = f (b) and P ′ = {Ap | p ∈ P } and observe that L ′ = b ′ + (P ′ ) * . In particular L ′ is a linear set. Since X ⊆ L we deduce that X ′ ⊆ L ′ . Let us consider a set R ′ = {r ′ 1 , . . . , r ′ d } included in the interior of (P ′ ) * . As r ′ i ∈ (P ′ ) * there exists p i ∈ P * such that r ′ i = Ap i . Lemma 4.2 shows that r ′ i is a sum of vectors of the form λ i,p Ap over all p ∈ P where λ i,p > 0 is a value in Q. There exists an integer n i ≥ 1 large enough such that n i λ i,p ∈ N\{0} for every p ∈ P . We deduce that r i = p∈P n i λ i,p p is a vector in P * . Moreover, from Lemma 4.2 we deduce that r i is in the interior of P * . Let us consider the set R of vectors r i + k i p i where k i is an integer such that 0 ≤ k i < n i . As r i ∈ I(P * ) and p i ∈ P * we deduce that r i + k i p i ∈ I(P * ). We have proved that R ⊆ I(P * ). As L is a linearization of X, there exists x ∈ X such that x + R * ⊆ X. We deduce that f (x) + AR * ⊆ X ′ . Let us consider Observe that r i + k i p i and r i are both in R. We have proved that x ′ + r ′ ∈ f (x) + AR * . Thus x ′ + (R ′ ) * ⊆ X ′ . We have proved that L ′ is a linearization of X ′ .

The Parikh Images of Perfect MRGSs
The Parikh images of languages recognized by perfect MRGSs are proved to be pseudo-linear in this section. From the KLMST decomposition, we deduce the semi-pseudo-linearity of the Parikh image of L(m, V, m ′ ).
Let us consider a perfect MRGS U for (m, V, m ′ ). We denote by H the solutions with components in N of the characteristic system of U . We consider the set of concretizable solutions H ′ . Since the Parikh image of L(U ) is the image by a linear function of H ′ , by Proposition 4.6 it is sufficient to prove that H ′ is pseudo-linear. Let us introduce the set H 0 of solutions with components in N of the homogeneous characteristic system. We prove in the sequel that H 0 is a linearizator for H ′ . First of all observe that H 0 is a finitely generated monoid since H 0 = P * 0 where P 0 = min(H 0 \{0}), and P 0 is finite since ≤ is a well-order over H 0 .
Since H ′ ⊆ H, the following Lemma 5.1 shows that H ′ is included in (ξ − ξ 0 ) + H 0 . We follow notations introduced in Definition 3.2.
Proof. As U satisfies the large solution condition there exists ξ ∈ H. Moreover, Lemma 3.5 shows that there exists a solution ξ 0 with components in Q of the homogeneous characteristic system satisfying the additional conditions s 0, = ⊤, and µ 0,j (t) > 0 for every t ∈ T j . By multiplying ξ 0 by a positive integer, we can assume that the components of ξ 0 are in N. Note that for every ξ ′ ∈ H, there exists c ∈ N such that ξ ′ + cξ 0 ≥ ξ. As min(H) is finite, by multiplying ξ 0 by a positive integer we can assume that ξ ′ + ξ 0 ≥ ξ for every ξ ′ ∈ H. That means H ⊆ (ξ − ξ 0 ) + H 0 . Now, let us consider a finite set R 0 = {ξ 1 , . . . , ξ d } included in the interior of H 0 . We are going to prove that there exists ξ ∈ H such that ξ + R * 0 ⊆ H ′ . We first prove the following lemma.
Lemma 5.2. For every ξ l = (s l,j , µ l,j , s ′ l,j ) j interior vector of H 0 , the function µ l,j is the Parikh image of a cycle π l,j = (x j σ l,j − − → G j x j ).
Proof. Since U satisfies the large solution condition, Lemma 3.5 shows for every t ∈ T j , there exists a solution ξ 0 = (s 0,j , µ 0,j , s ′ 0,j ) j in H 0 such that µ 0,j (t) > 0. As H 0 = P * 0 , for every t ∈ T j there exists ξ 0 ∈ P 0 satisfying the same property. As ξ l is in the interior of H 0 , Lemma 4.2 shows that there exists a sequence (λ ξ 0 ) ξ 0 ∈P 0 of positive rational values λ ξ 0 ∈ Q >0 such that ξ l = ξ 0 λ ξ 0 ξ 0 . In particular, we deduce that µ l,j (t) > 0 for every t ∈ T j and for every 0 ≤ j ≤ k. As ξ l satisfies χ G j we deduce that µ l,j satisfies the Kirchhoff's laws. As G j is strongly connected and µ l,j (t) ≥ 1 for every t ∈ T j , Euler's Lemma shows that µ l,j is the Parikh image of a cycle π l,j = (x j Since x j σ l,j − − → V , there exists an integer c ≥ 0 such that for every 0 ≤ j ≤ k and for every configuration r j satisfying r j As U is perfect, there exists an accepted tuple (s j , π j , s ′ j ) 0≤j≤k such that for every j, π j can be decomposed into: j ) and such that the pair of configurations (r j , r ′ j ) satisfying the following relations: otherwise. In particular we have r j σ l,j − − → V for every 0 ≤ j ≤ k and for every 1 ≤ l ≤ d.
As s l,j ≥ 0 and r j σ l,j − − → V we deduce that r j +s l,j σ l,j − − → V . Moreover, from s l,j +δ(σ l,j ) = s ′ l,j we get: As s l,j , s ′ l,j ≥ 0, an immediate induction shows that for every sequence n 1 , . . . , n d ∈ N we have the following relation: We have proved that ξ + d l=1 n l ξ l is concretizable. Thus ξ + R * 0 ⊆ H ′ . Therefore H ′ is pseudo-linear and H 0 is a linearizator for H ′ . We have proved the following Theorem 5.3.

Petri Sets
A set X ⊆ Z n is said to be a Petri set if X ∩ S is semi-pseudo-linear for every semi-linear set S ⊆ Z n . Since Z n is a linear set, Petri sets are semi-pseudo-linear. However the converse is not true in general (see Example 6.1). In this section, post * V (S) and pre * V (S ′ ) are proved to be Petri sets for every semi-linear sets S, S ′ ⊆ N n . This result is used in Section 8 to get a local analysis of post * V (S) and pre * V (S ′ ) with respect to some semi-linear sets. Example 6.1. Let us consider the pseudo-linear set Z = X ∪ Y introduced in Example 4.3 and observe that Z is not a Petri set since Y = Z ∩ S is not semi-pseudo-linear with Let us prove that post * V (S) ∩ S ′ and S ∩ pre * V (S ′ ) are semi-pseudo-linear for every semilinear sets S, S ′ ⊆ N n . Since semi-linear sets are finite unions of linear sets we only prove this result for the special case of two linear sets S = s + P * and S ′ = s ′ + (P ′ ) * where s, s ′ ∈ N n and P, P ′ ⊆ N n are two finite sets. We consider two alphabets Σ P , Σ P ′ disjoint of Σ and a displacement functionδ defined overΣ = Σ P ∪ Σ ∪ Σ P ′ that extends δ such that: We consider the VASV = (Σ, n,δ). Intuitively, sinceδ(Σ P ) ⊆ N n andδ(Σ P ′ ) ⊆ −N n , words in L(s,V , s ′ ) can be reordered into words in (Σ * P Σ * Σ * P ′ ) ∩ L(s,V , s ′ ). More formally, we prove the following lemma.

Pseudo-Linear Sets Intersections
Let X 1 , X 2 be two pseudo-linear sets with an empty intersection X 1 ∩ X 2 and let L 1 , L 2 be linearizations of X 1 , X 2 . Since L 1 , L 2 over-approximate X 1 , X 2 , the intersection L 1 ∩ L 2 is not empty in general. In this section we introduce a dimension function that satisfies dim(L 1 ∩ L 2 ) < dim(X 1 ∪ X 2 ). This dimension function is defined in Section 7.1 and the strict inequality is proved in Section 7.2.
is the minimal vector space that contains X with respect to the inclusion. This vector space is called the vector space generated by X. Recall that for every vector space V there exists a finite set B ⊆ V that generates V . The minimal integer d ∈ N such that there exists a finite set B ⊆ V with d elements that generates V is called the rank of V and denoted rank(V ). Note that rank(V ) ∈ {0, . . . , n} and for every set X ⊆ Q n there exists a finite set B ⊆ X such that the vector space V generated by B is equal to the vector space generated by X and such that |B| = rank(V ).
The dimension of a non empty set X ⊆ Q n is the minimal integer d ∈ {0, . . . , n} such that there exist k ∈ N, a sequence (V 1 , . . . , V k ) of vector spaces V j ⊆ Q n , and a sequence (a 1 , . . . , a k ) of vectors a j ∈ Q n such that X ⊆ k j=1 (a j + V j ) and rank(V j ) ≤ d. We denote by dim(X) the dimension of X. By definition dim(∅) = −∞. [1]} be the sets depicted in Figure 6. We have dim(X 0 ) = 0, dim(X 1 ) = 1 and dim(X 2 ) = 2.
Let us show some immediate properties satisfied by the dimension function. Observe that dim(X) = −∞ if and only if X is empty. The dimension function is monotonic dim(X 1 ) ≤ dim(X 2 ) for every X 1 ⊆ X 2 . Moreover it satisfies dim(X 1 ∪ X 2 ) = dim(X 0 ) = 0 dim(X 1 ) = 1 dim(X 2 ) = 2 Figure 6: Dimension of some sets.
max{dim(X 1 ), dim(X 2 )} and dim(X 1 + X 2 ) ≤ dim(X 1 ) + dim(X 2 ). Note also that dim(a + X) = dim(X) for every a ∈ Q n . In the sequel, we prove that (1) rank(V ) = dim(V ) for every vector space V , (2) dim(M ) = dim(V ) for every vector space V generated by a monoid M , and (3) dim(L) = dim(X) for every linearization L of a pseudo linear set X. We first prove the following lemma.
Lemma 7.2. Let M ⊆ Q n be a monoid and let (V 1 , . . . , V k ) be a sequence of vector spaces V j ⊆ Q n and let (a 1 , . . . , a k ) be a sequence of vectors a j ∈ Q n . If M ⊆ k j=1 (a j + V j ) then there exists j such that a j ∈ V j and M ⊆ a j + V j .
Proof. Let us observe that a j ∈ V j implies a j + V j = V j . We first prove that M ⊆ k j=1 (a j + V j ) implies M ⊆ j∈J V j where J is the set of j ∈ {1, . . . , k} such that a j ∈ V j . Let us consider m ∈ M . Since M is a monoid we deduce that λx ∈ M for every λ ∈ N. In particular there exists j ∈ {1, . . . , k} such that λx ∈ a j + V j for infinitely many λ. In particular there exist λ < λ ′ in N and v, v ′ ∈ V j such that λx = a j + v and λ ′ x = a j + v ′ .
Now let us prove by induction over k ∈ N >0 that for every sequence (V 1 , . . . , V k ) of vector spaces V j ⊆ Q n , if M ⊆ k j=1 V j then there exists j such that M ⊆ V j . The case k = 1 is immediate. Assume that the lemma is already proven for an integer k ∈ N >0 . Let us consider a monoid M ⊆ Q n , a sequence (V 1 , . . . , V k+1 ) of vector spaces V j ⊆ Q n such that M ⊆ k+1 j=1 V j . Let us prove that there exists j ∈ {1, . . . , k + 1} such that M ⊆ V j . Naturally if M ⊆ V k+1 we are done. Thus, we can assume that M is not included in V k+1 and we can pick a vector m ∈ M \V k+1 . Let x ∈ M and let us prove that x ∈ k j=1 V j . Note that if x ∈ V k+1 we are done. Thus, we can assume without loss of generality that x ∈ V k+1 . Let us introduce y λ = x + λm where λ ∈ N. Since M is a monoid that contains x and m we deduce that y λ ∈ M . Assume by contradiction that y λ ∈ V k+1 for λ = 0. Since x and y λ are both in V k+1 , and V k+1 is a vector space, we deduce from m = 1 λ (y λ − x) that m ∈ V k+1 . We get a contradiction with m ∈ V k+1 . Thus y λ ∈ k j=1 V j for every λ ∈ N >0 . Hence there exists j ∈ {1, . . . , k} such that y λ ∈ V j for infinitely many λ ∈ N >0 . In particular there exists λ < λ ′ in N >0 such that y λ , y ′ λ ∈ V j . As V j is a vector space, from x = λy λ ′ −λ ′ y λ λ ′ −λ we deduce that x ∈ V j . We have proved that M ⊆ k j=1 V j . From the induction hypothesis, we deduce that there exists j ∈ {1, . . . , k} such that M ⊆ V j . We have proved the property by induction. Now, we can prove the following results. Proof. Since V ⊆ 0 + V we get dim(V ) ≤ rank(V ). Conversely, there exists a sequence (V 1 , . . . , V k ) of vector spaces V j ⊆ Q n and a sequence (a 1 , . . . , a k ) of vectors a j ∈ Q n such that V ⊆ k j=1 (a j + V j ) and rank(V j ) ≤ dim(V ). As V is a vector space and in particular a monoid, Lemma 7.2 shows that there exists j such that V ⊆ a j + V j and a j ∈ V j . From a j + V j = V j we deduce that V ⊆ V j . In particular rank(V ) ≤ rank(V j ) and we have proved the other relation rank(V ) ≤ dim(V ). Proof. Since M ⊆ V we get dim(M ) ≤ rank(V ). Conversely, there exists a sequence a sequence (V 1 , . . . , V k ) of vector spaces V j ⊆ Q n and a sequence (a 1 , . . . , a k ) of vectors a j ∈ Q n such that M ⊆ k j=1 (a j + V j ) and rank(V j ) ≤ dim(M ). From Lemma 7.2 there exists j such that a j ∈ V j and M ⊆ a j + V j . As a j ∈ V j we get a j + V j = V j . We deduce that M ⊆ V j . By minimality of the vector space generated by M , we deduce that V ⊆ V j . In particular, rank(V ) ≤ rank(V j ). Since rank(V j ) ≤ dim(M ) we deduce the other relation rank(V ) ≤ dim(M ).
As expected, the dimension of a pseudo-linear set is equal to the dimension of every linearization.
Lemma 7.5. We have dim(X) = dim(L) for every linearization L of a pseudo-linear set X ⊆ Z n .
Proof. There exists b ∈ Z n and a linearizator M for X such that L = b + M . From X ⊆ L we deduce that dim(X) ≤ dim(L). Let us prove the converse. Let us consider an interior vector a ∈ I(M ). Since M is finitely generated, there exists a finite set P such that M = P * . Observe that R = {a} ∪ (a + P ) is a finite subset of I(M ). As X is pseudo-linear, there exists x ∈ X such that x + R * ⊆ X. Note that the vector space generated by R is equal to the vector space generated by P . Thus, from Proposition 7.4 we deduce that dim(R * ) = dim(P * ). As dim(x + R * ) = dim(R * ) and dim(b + P * ) = dim(P * ) we deduce that dim(x + R * ) = dim(L). Since x + R * ⊆ X we deduce that dim(L) ≤ dim(X).

7.2.
Pseudo-linear sets with empty intersections. In this section we prove that linearizations L 1 , L 2 of two pseudo-linear sets X 1 , X 2 with an empty intersection X 1 ∩ X 2 = ∅ satisfy the strict inequality dim(L 1 ∩ L 2 ) < dim(X 1 ∪ X 2 ). Note that even if X 1 ∩ X 2 = ∅, the intersection L 1 ∩ L 2 may be non empty since L 1 , L 2 are over-approximations of X 1 , X 2 .
We first introduce the class of groups. A group of Q n is a set Z ⊆ Q n such that 0 ∈ Z, Z + Z ⊆ Z and −Z ⊆ Z. Observe that for every X ⊆ Q n , the set G = X * − X * is the minimal group that contains X with respect to the inclusion. This group is said to be generated by X. Let us consider the group G = M − M generated by a monoid M and a ∈ Z n . Observe that a ∈ I(M ) if and only if for every g ∈ G there exists an integer N ≥ 1 such that g + N a ∈ M .
Lemma 7.7. For every vector v ∈ V where V is the vector space generated by a group G, there exists an integer d ≥ 1 such that dv ∈ G.
Proof. As v ∈ V , either v = 0 or v can be decomposed into a finite sum v = k i=1 λ i g i with k ≥ 1, λ i ∈ Q and g i ∈ G. The case v = 0 is immediate with d = 1 and the second case is obtained by considering an integer d ≥ 1 such that dλ i ∈ Z for every i. Lemma 7.8 ([3]). For every finite sets P 1 , P 2 ⊆ Z n there exists a finite set P ⊆ Z n such that P * 1 ∩ P * 2 = P * . Moreover, for every b 1 , b 2 ∈ Z n , there exists a finite set B ⊆ Z n such that . Proof. Let us consider an enumeration p i,1 , . . . , p i,k i of the k i ≥ 0 vectors in P i where i ∈ {1, 2}. If k 1 = 0 or if k 2 = 0 then P * 1 = {0} or P * 2 = {0} and the lemma is immediate. Thus, we can assume that k 1 , k 2 ≥ 1.
We denote by G 1 , G, G 2 the groups generated respectively by P 1 , P, P 2 . Note that the vector spaces generated by G 1 , G, G 2 are equal to V 1 , V, V 2 .
Let a be an interior vector of P * and let us prove that a ∈ I(P * 1 )∩I(P * 2 ). Let j ∈ {1, 2}. Note that a ∈ P * ⊆ P * j . Let p ∈ I(P * j ). Since −p ∈ V and V is the vector space generated by G, Lemma 7.7 shows that there exists an integer d ≥ 1 such that −dp ∈ G. From a ∈ I(P * ) we deduce that there exists N ≥ 1 such that −dp + N a ∈ P * . From P * ⊆ P * j we deduce that a ∈ 1 N (dp + P * j ). From p ∈ I(P * j ) and Lemma 4.2 we get a ∈ I(P * j ). We define R 1 and R 2 by R j = {a} ∪ (a + P j ) for j ∈ {1, 2}. Since a ∈ I(P * j ), Lemma 4.2 shows that R j ⊆ I(P * j ). Let us consider x 1 ∈ L 1 and x 2 ∈ L 2 and let us prove that As the group generated by R j is equal to G j , there exists r j , r ′ j ∈ R * j such that x j + r j = b + r ′ j . As V is the vector space generated by G 1 and r ′ 2 ∈ R * 2 ⊆ V 2 = V , Lemma 7.7 shows that there exists an integer d 1 ≥ 1 such that d 1 r ′ 2 ∈ G 1 . As a ∈ I(P * 1 ), there exists an integer We denote this vector by r ′′ 1 . Symmetrically, there exist some integers d 2 ≥ 1, N 2 ≥ 1 and N ′ 2 ≥ 0 such that the vector d 2 r ′ 1 + (N 2 + N ′ 2 )a denoted by r ′′ 2 is in R * 2 . We get: We have proved that these vectors are equal. Therefore (x 1 + R * 1 ) ∩ (x 2 + R * 2 ) = ∅. Proposition 7.10. Let L 1 , L 2 be linearizations of pseudo-linear sets X 1 , X 2 ⊆ Z n with an empty intersection X 1 ∩ X 2 = ∅. We have: Proof. Let us consider linearizations L 1 , L 2 of two pseudo-linear sets X 1 , X 2 such that dim(L 1 ∩ L 2 ) ≥ dim(X 1 ∪ X 2 ) and let us prove that X 1 ∩ X 2 = ∅. Lemma 7.5 shows that dim(X 1 ) = dim(L 1 ) and dim(X 2 ) = dim(L 2 ). By monotonicity of the dimension function, we deduce that dim(L 1 ) = dim(L 1 ∩ L 2 ) = dim(L 2 ). Thus L 1 and L 2 have a non-degenerate intersection. As L 1 , L 2 are two linear sets, there exists b 1 , b 2 ∈ Z n and two finitely generated monoids M 1 , M 2 such that L 1 = b 1 + M 1 and L 2 = b 2 + M 2 . Lemma 7.9 shows that there exist finite sets R 1 ⊆ I(M 1 ) and R 2 ⊆ I(M 2 ) such that (x 1 + R * 1 ) ∩ (x 2 + R * 2 ) = ∅ for every (x 1 , x 2 ) ∈ (L 1 , L 2 ). As L 1 , L 2 are linearizations of the pseudo-linear sets X 1 , X 2 there exists (x 1 , x 2 ) ∈ (X 1 , X 2 ) such that x 1 + R * 1 ⊆ X 1 and x 2 + R * 2 ⊆ X 2 . As (x 1 , x 2 ) ∈ (L 1 , L 2 ) we deduce that (x 1 + R * 1 ) ∩ (x 2 + R * 2 ) = ∅. We have proved that X 1 ∩ X 2 = ∅.

Presburger Complete Separators
The VAS reachability problem can be reformulated by introducing the definition of separators. A pair (S, S ′ ) of configuration sets is called a separator for a VAS V if S × S ′ has an empty intersection with the reachability binary relation * − → V . The set D = N n \(S ∪ S ′ ) is called the (free) domain of (S, S ′ ). A separator with an empty domain is said to be complete. We extend the inclusion relation over separators by (S 0 , S ′ 0 ) ⊆ (S, S ′ ) if S 0 ⊆ S and S ′ 0 ⊆ S ′ . Complete separators can be characterized by introducing the forward and backward invariants. Let us consider the following sets for every pair (S, S ′ ) of configurations sets and for every a ∈ Σ: Note that a pair (S, S ′ ) of configuration sets is a complete separator if and only if (S, S ′ ) is a partition of N n , S is a forward invariant and S ′ is a backward invariant.
In this section we prove that Presburger separators are included in Presburger complete separators. In general (post * V (S), pre * V (S ′ )) is a separator that is neither complete nor Presburger (see Example 2.4). That means, this separator must be over-approximated by another one. Proof. We first define a set S ′ that over-approximates S ′ 0 and such that (S 0 , S ′ ) is a separator. As S 0 is semi-linear, Theorem 6.4 shows that post * V (S 0 ) is a Petri set. As D 0 is semi-linear, we deduce that post * V (S 0 ) ∩ D 0 is equal to a finite union of pseudo-linear sets X 1 , . . . , X k . Let us consider some linearizations L 1 , . . . , L k of these pseudo-linear sets and let us define the following Presburger set S ′ .
We observe that post * V (S 0 ) ∩ S ′ = ∅ since post * V (S 0 ) ∩ S ′ 0 = ∅ and post * V (S 0 ) ∩ D 0 ⊆ k j=1 L j . We have proved that S ′ contains S ′ 0 and (S 0 , S ′ ) is a separator. Now we define symmetrically a set S that over-approximates S 0 and such that (S, S ′ ) is a separator. As S ′ is semi-linear, Theorem 6.4 shows that pre * V (S ′ ) is a Petri set. As D 0 is semi-linear we deduce that D 0 ∩ pre * V (S ′ ) is equal to a finite union of pseudo-linear sets X ′ 1 , . . . , X ′ k ′ . Let us consider some linearizations L ′ 1 , . . . , L ′ k ′ of these pseudo-linear sets and let us define the following Presburger set S.
Once again, note that S ∩ pre * V (S ′ ) = ∅. Thus S contains S 0 and (S, S ′ ) is a separator. Let D be the domain of the separator (S, S ′ ). From D 0 = N n \(S 0 ∪ S ′ 0 ), we get the following equality: . As X j ⊆ post * V (S 0 ) ⊆ post * V (S) and X ′ j ′ ⊆ pre * V (S ′ ) and (S, S ′ ) is a separator, we deduce that X j and X ′ j ′ are two pseudo-linear sets with an empty intersection. Proposition 7.10 provides dim(L j ∩ L ′ j ′ ) < dim(X j ∪ X ′ j ′ ). We deduce dim(D) < dim(D 0 ).
An induction over the dimension of the domain D of a Presburger separator provides the following Theorem 8.3 thanks to Lemma 8.2.

Conclusion
Thanks to the classical KLMST decomposition we have proved that the Parikh Images of languages recognized by VASs are semi-pseudo-linear. As an application, we have proved that for every pair (s, s ′ ) of configurations in the complement of the reachability relation there exists a Presburger formula ψ(x) denoting a forward invariant I such that s ∈ I and s ′ ∈ I. We deduce that the following algorithm decides the reachability problem. The correctness is immediate and the termination is guaranteed by Corollary 8.4. This algorithm is the very first one that does not require the classical KLMST decomposition for its implementation. Even though the termination proof is based on the KLMST decomposition, the complexity of the algorithm does not depend on this decomposition. In fact, the complexity depends on the minimal size of a word σ ∈ Σ * such that s σ − → V s ′ if s * − → V s ′ , and the minimal size of a Presburger formula ψ(x) denoting a forward invariant I such that s ∈ I and s ′ ∈ I otherwise. We left as an open question the problem of computing lower and upper bounds for these sizes. Note that the VAS exhibiting a large (Ackermann size) but finite reachability set given in [8] does not directly provide an Ackerman lower-bound for these sizes since inductive separators can over-approximate reachability sets.
We also left as an open question the problem of adapting the Counter Example Guided Abstraction Refinement approach [1] to obtain an algorithm for the VAS reachability problem with termination guarantee. In practice, such an algorithm should be more efficient than the previously given enumeration-based algorithm.