
TL;DR
This paper provides an intuitive, three-step explanation of the decidability proof for VASS reachability, highlighting a condition that reduces problem complexity iteratively.
Contribution
It offers a simplified, conceptual overview of the key ideas in the classic VASS reachability proof, emphasizing the reduction technique through a specific condition.
Findings
Decidable condition Theta implies reachability.
Size reduction of VASS via negation of Theta.
Method applies to various VASS generalizations.
Abstract
This note is a product of digestion of the famous proof of decidability of the reachability problem for vector addition systems with states (VASS), as first established by Mayr in 1981 and then simplified by Kosaraju in 1982. The note is neither intended to be rigorously formal nor complete; it is rather intended to be an intuitive but precise enough description of main concepts exploited in the proof. Very roughly, the overall idea is to provide a decidable condition Theta on a VASS such that Theta implies reachability and its negation implies that the size of VASS can be reduced. With these two properties, the size of input can be incrementally reduced until the problem becomes trivial. We proceed in three steps: we first formulate the condition Theta for plain VASS, then adapt it to more general VASS with unconstrained coordinates, and finally to generalized VASS of Kosaraju.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
VASS reachability in three steps
S. Lasota
This note is a product of digestion of the famous proof of decidability of the reachability problem for vector addition systems with states (VASS), as first established by Mayr [2, 3] and then simplified by Kosaraju [1]. The note is neither intended to be rigorously formal nor complete; it is rather intended to be an intuitive but precise enough description of main concepts exploited in the proof. Very roughly, the overall idea is to provide a decidable condition on a VASS such that implies reachability and implies that the size of VASS can be reduced. With these two properties, the size of input can be incrementally reduced until the problem becomes trivial. We proceed in three steps: we first formulate the condition for plain VASS, then adapt it to more general VASS with unconstrained coordinates, and finally to generalized VASS of [1].
1 The reachability problem
A vector addition system with states (VASS) consists of a finite set of control states and a finite set of arcs. The number is the dimension of a VASS. A pseudo-configuration is a pair ; it is a configuration if . An arc induces a step
[TABLE]
between pseudo-configurations. We write \textstyle{q,v\ignorespaces\ignorespaces\ignorespaces\ignorespaces}$$\textstyle{q^{\prime},v^{\prime}} if there is a sequence of steps from to ; every such sequence we call pseudo-run. We reserve this term for a sequence of steps, as well as for an (inducing) sequence of arcs. If all vectors appearing in a pseudo-run belong to we call it run, and write \textstyle{q,v\ignorespaces\ignorespaces\ignorespaces\ignorespaces}$$\textstyle{q^{\prime},v^{\prime}} ; this implies in particular that and themselves are configurations. The aim of this note is to describe an algorithm for
VASS reachability problem:
[TABLE]
Sufficient condition
As a warm-up, we prove a sufficient condition for reachability. For a VASS and two configurations , , define the following two conditions:
- :
For every , \textstyle{q,v\ignorespaces\ignorespaces\ignorespaces\ignorespaces}$$\textstyle{q^{\prime},v^{\prime}} by a pseudo-run that uses every arc at least times. 2. :
There are vectors such that
[TABLE]
Proposition 1**.**
* implies \textstyle{q,v\ignorespaces\ignorespaces\ignorespaces\ignorespaces}$$\textstyle{q^{\prime},v^{\prime}} .*
Proof.
We will use the following claim, to be proved later:
Claim 1**.**
\textstyle{q^{\prime},\Delta\ignorespaces\ignorespaces\ignorespaces\ignorespaces}$$\textstyle{q^{\prime},\Delta^{\prime}} .
Here is a shape of a required run from to :
[TABLE]
Observe that when increases, the three intermediate points also increase on all coordinates. Therefore, for a sufficiently large , the two pseudo-runs become runs. ∎
Proof of Claim 1.
Consider the underlying graph of the VASS, whose vertices are control states and edges are arcs (note that there may be parallel edges). Every pseudo-run induces a path in the graph. For a pseudo-run from to , we shortly speak of a pseudo-run from to when vectors are irrelevant. Let denote the set of arcs. By the folding of a pseudorun we mean the vector that says how many times every arc is used by . The following lemma, roughly speaking, allows us to subtract one pseudo-run from another (it is proved using Eulerian equalities):
Lemma 1**.**
*Let be two pseudo-runs from to such that111 We write for a constant vector in having on all coordinates. We prefer to omit the subscript and write simply whenever this does not lead to confusion. *
[TABLE]
For every non-isolated control state there is a pseudo-run from to with .
By we mean the effect of a pseudo-run , namely the difference between its final vector and its initial one. Note that the shift of a pseudo-run is completely determined by its folding. To prove Claim 1, we need to show that there is a pseudo-run from to with shift .
Basing on condition , we know that we can pick two pseudo-runs , from to with arbitrarily large difference . Fix (due to ) a run from to , and a run from to . Then fix two pseudoruns , from to such that
[TABLE]
Finally, apply Lemma 1 three times in a sequence, to deduce that there is a pseudo-run from to satisfying
[TABLE]
Indeed, as required.
2 Partially unconstrained reachability problem
We now slightly generalize the reachability problem, and a sufficient condition. In the next section we will provide a yet further generalization that will be finally suitable for designing a decision procedure for reachability.
We will need a bit of concise notation. From now on we identify and ; for instance, the set of configurations is . For two disjoint subsets and two vectors and , we write for the unique vector in obtained by glueing together and . Formally:
[TABLE]
From now on, by convention will always denote the complement .
The generalization of the reachability problem amounts to considering only some subset of coordinates as constrained, while the remaining coordinates (i.e., those in ) are considered unconstrained. The input and output configuration is specified only on constrained coordinates, and left unspecified on the remaining ones. Nevertheless, a run we ask for should remain nonnegative on all coordinates. Here is a precise formulation:
Partially unconstrained VASS reachability problem:
[TABLE]
We remark that we do not assume . The setting of the previous section is the special case .
Sufficient condition
Here is a generalization of and to the more general setting. We write \textstyle{q,v\ignorespaces\ignorespaces\ignorespaces\ignorespaces\ignorespaces}$$\scriptstyle{C}$$\textstyle{q^{\prime},v^{\prime}} , for , to say that there is a pseudo-run from to whose all vectors are non-negative on coordinates from (such pseudo-runs we call -runs). We write shortly for .
- :
For every , there are some vectors , such that
\textstyle{q,v\oplus\bar{v}\ignorespaces\ignorespaces\ignorespaces\ignorespaces}$$\textstyle{q^{\prime},v^{\prime}\oplus\bar{v}^{\prime}} by a pseudo-run that traverses every arc at least times. 2. :
There are vectors , , {\color[rgb]{1,0,0}\definecolor[named]{pgfstrokecolor}{rgb}{1,0,0}\bar{\small\Delta}}\in\mathbb{Z}^{\bar{C}} and {\color[rgb]{1,0,0}\definecolor[named]{pgfstrokecolor}{rgb}{1,0,0}\bar{\small\Delta^{\prime}}}\in\mathbb{Z}^{\bar{C}^{\prime}} such that
[TABLE]
Proposition 2**.**
* implies \textstyle{q,v\oplus\bar{v}\ignorespaces\ignorespaces\ignorespaces\ignorespaces}$$\textstyle{q^{\prime},v^{\prime}\oplus\bar{v}^{\prime}} for some vectors , .*
Proof.
The general idea of the proof is similar to the previous section, namely pumping up by a multiplicity of (and de-pumping down by the same multiplicity of ) in order to make some pseudorun \textstyle{q,v\oplus\bar{v}\ignorespaces\ignorespaces\ignorespaces\ignorespaces}$$\textstyle{q^{\prime},v^{\prime}\oplus\bar{v}^{\prime}} into a run. The new difficulty is that pumping involves \Delta\oplus{\color[rgb]{1,0,0}\definecolor[named]{pgfstrokecolor}{rgb}{1,0,0}\bar{\small\Delta}}, with {\color[rgb]{1,0,0}\definecolor[named]{pgfstrokecolor}{rgb}{1,0,0}\bar{\small\Delta}} possibly negative on some coordinates (and likewise for de-pumping). This issue is solved by starting from , for a sufficiently large .
We will need a couple of facts. The first one easily follows from :
Claim 2**.**
There are vectors , and a pseudo-run
[TABLE]
such that for every there is a pseudo-run
[TABLE]
*with and and . *
In other words, and can be chosen to make the three vectors , and arbitrarily large on all coordinates. Therefore we conclude:
Claim 3**.**
The pseudo-runs and can be chosen so that:
- (a)
\bar{\delta}+{\color[rgb]{1,0,0}\definecolor[named]{pgfstrokecolor}{rgb}{1,0,0}\bar{\small\Delta}}\geq\vec{1}_{\bar{C}}, \bar{\delta}^{\prime}+{\color[rgb]{1,0,0}\definecolor[named]{pgfstrokecolor}{rgb}{1,0,0}\bar{\small\Delta^{\prime}}}\geq\vec{1}_{\bar{C}^{\prime}}
- (b)
pseudo-runs in , lifted by and , respectively, become runs:
[TABLE]
- (c)
.
Using Claim 3(a)–(b) together with the monotonicity of VASSes, we deduce that for an arbitrary , the runs and can be repeated times when lifted further by and , respectively:
Claim 4**.**
For every it holds
[TABLE]
The last claim generalizes Claim 1 from the previous section.
Claim 5**.**
\textstyle{q^{\prime},\Delta\oplus(\bar{\delta}+{\color[rgb]{1,0,0}\definecolor[named]{pgfstrokecolor}{rgb}{1,0,0}\bar{\small\Delta}})\ignorespaces\ignorespaces\ignorespaces\ignorespaces}$$\textstyle{q^{\prime},\Delta^{\prime}\oplus(\bar{\delta}^{\prime}+{\color[rgb]{1,0,0}\definecolor[named]{pgfstrokecolor}{rgb}{1,0,0}\bar{\small\Delta^{\prime}}})} .
Proof.
We have and \text{shift}(\pi)=\Delta\oplus{\color[rgb]{1,0,0}\definecolor[named]{pgfstrokecolor}{rgb}{1,0,0}\bar{\small\Delta}} and \text{shift}(\pi^{\prime})=(-\Delta^{\prime})\oplus(-{\color[rgb]{1,0,0}\definecolor[named]{pgfstrokecolor}{rgb}{1,0,0}\bar{\small\Delta^{\prime}}}). By Claim 3(c) we can apply Lemma 1 three times, to deduce that there is a pseudo-run from to satisfying
[TABLE]
We check: \text{shift}(\nu)=(\text{shift}(\pi_{1})-\text{shift}(\pi_{0}))-\text{shift}(\pi)-\text{shift}(\pi^{\prime})=\Delta^{\prime}\oplus(\bar{\delta}^{\prime}+{\color[rgb]{1,0,0}\definecolor[named]{pgfstrokecolor}{rgb}{1,0,0}\bar{\small\Delta^{\prime}}})-\Delta\oplus(\bar{\delta}+{\color[rgb]{1,0,0}\definecolor[named]{pgfstrokecolor}{rgb}{1,0,0}\bar{\small\Delta}}), as required. ∎
We are now prepared to draw a shape of a required run (for readability, the primed items are depicted in blue):
[TABLE]
When increases, each of the three intermediate points increases on all coordinates. As a conclusion, for sufficiently large , all the pseudo-runs become runs. ∎
Remark**.**
For the next section it is important to note that we have actually shown
\textstyle{q,v\oplus(\bar{v}+m\bar{\delta})\ignorespaces\ignorespaces\ignorespaces\ignorespaces}$$\textstyle{q^{\prime},v^{\prime}\oplus(\bar{v}^{\prime}+m\bar{\delta}^{\prime})}
for all sufficiently large .
3 Generalized reachability problem
We do now the last generalization in order to complete the decidability proof. By a component we mean a VASS together with the following data:
- •
initial and final state ;
- •
subset of rigid coordinates ; we assume that all arcs in have [math] on all coordinates in and hence, intuitively speaking, may be considered as the actual dimension of the component;
- •
rigid vector ;
- •
two partitions of non-rigid coordinates into initial constrained coordinates and initial unconstrained coordinates , and into final constrained coordinates and final unconstrained coordinates ;
- •
initial and final vector , .
Note that component does not essentially differ from the input of the partially unconstrained reachability problem from the previous section. The generalized VASS (GVASS) consists of components
[TABLE]
of the same dimension , with pairwise disjoint state sets , and arcs of the form , where , for . We will be interested in pseudo-runs from to of the following form:
[TABLE]
for some . Each such pseudo-run passes through every arc exactly once, and thus splits into pseudo-runs each being a pseudo-run in . When each of is a run, we call a run; if such a run exists we say that admits reachability.
Generalized VASS reachability problem:
[TABLE]
The setting of the previous section is the special case of one component without rigid coordinates: , .
Sufficient condition
The condition below is essentially the conjunction of conditions of the previous section for each of the VASSes separately; the only difference is taking rigid coordinates into account. On the other hand, the condition below speaks jointly about all the VASSes .
- :
For every , there is a pseudo-run from to of the form (1) that traverses every arc in every at least times, for some . 2. :
For every there are vectors , , {\color[rgb]{1,0,0}\definecolor[named]{pgfstrokecolor}{rgb}{1,0,0}\bar{\small\Delta}}\in\mathbb{Z}^{U_{i}} and {\color[rgb]{1,0,0}\definecolor[named]{pgfstrokecolor}{rgb}{1,0,0}\bar{\small\Delta^{\prime}}}\in\mathbb{Z}^{U^{\prime}_{i}} such that
[TABLE]
Observe that implies for . The sufficient condition for reachability is proved similarly as in the previous section:
Proposition 3**.**
If satisfies then admits reachability.
Indeed, in Claim 2 one should consider all components simultaneously and recall the remark at the end of Section 2; for the other claims and the construction of a run, one can consider the components separately.
Furthermore, the sufficient condition can be effectively tested:
Proposition 4**.**
Both and are decidable.
Proof.
Pseudo-runs (1) can be encoded as the set of nonegative solutions of a system of linear Diophantine equations. Then condition can be decided by inspecting the (hybrid-linear) set of solutions (cf. Claim 8 below). Checking condition reduces to the coverability problem. ∎
Refinement
Let . Thus the size of is a triple consisting of: the number of non-rigid coordinates, the number of arcs, the number of unconstrained coordinates. For a GVASS , we define as the multiset of sizes of all components .
Order triples in lexicographically. For two finite multisets of triples and , we say that refines if is obtained by removing one triple from , and replacing it by a finite number of lexicographically strictly smaller triples.
Claim 6**.**
The refinement relation is well-founded.
We shortly say that refines when refines . We can assume wlog. that every component of is strongly connected:
Claim 7**.**
If the underlying graph222We ignore here one inessential detail: this is a multigraph, i.e., parallel edges are allowed. of some component of is not strongly-connected then one can compute refining such that admits reachability if, and only if some of does.
Indeed, it suffices to do the decomposition into strongly connected graphs.
For trivial , whose size contains only zero triples , the reachability problems trivializes. Otherwise, either satisfies and thus admits reachability, or can be refined:
Proposition 5**.**
If a non-trivial violates then one can compute refining such that admits reachability if, and only if some of does.
Proof.
Wlog. assume that the underlying graphs of all components are strongly connected. Let Consider the set of all vectors
[TABLE]
such that there is a pseudo-run of the form (1) with . The set is the set of nonnegative solutions of a system of linear Diophantine equations, and thus we have:
Claim 8**.**
One can compute finite sets such that .
Suppose does not satisfy . Hence for some coordinate in , all vectors in have zero on that coordinate. This zero coordinate corresponds either to some arc, or to some unconstrained (input or output) coordinate.
Suppose the first case holds, and let be the arc corresponding to the zero coordinate. By Claim 8 one can compute a number such that every pseudo-run (1) passes through at most times. We refine by GVASSes , each obtained by replacing by a sequence of copies of , i.e. of without the arc . The rigid coordinates and rigid vector of all copies are as in . The initial constrained coordinates of the first copy are , the final constrained coordinates of the last copy are , and the remaining initial or final constrained coordinates of all copies are empty sets. The initial vector of the first copy is and the final vector of the last copy is ; all other initial and final vectors are empty ones.
Now suppose the second case holds, i.e., the zero coordinate corresponds to some, say, initial unconstrained coordinate (final unconstrained coordinate is treated symmetrically). By Claim 8 one can compute a number such that the value on coordinate in (cf. (8)) is at most , for every pseudo-run . We refine by constraining the coordinate to some value in . We define refining GVASSes , where differs from only by making the coordinate in an initial constrained coordinate, with value . ∎
Proposition 6**.**
If a non-trivial violates then one can compute refining such that admits reachability if, and only if some of does.
Proof.
Wlog. assume that the underlying graphs of all components are strongly connected. Suppose that does not satisfy , i.e. condition (4) fails for some (condition (7) is treated symmetrically). Thus all initial constrained coordinates can not be simultaneously increased arbitrarily, which means that for some number , in every pseudo-configuration reachable in from via the relation , some of initial constrained coordinates is bounded by . From the coverability tree for one can extract with a stronger property:
Claim 9**.**
For every -run in from there is an initial constrained coordinate which is bounded by in .
Relying on the claim, we refine by a finite family of GVASSes. For every the family contains one GVASS , and for every the family contains GVASSes , as outlined below:
:
Thus is a final unconstrained coordinate. We define GVASSes , where differes from only by making the coordinate a final constrained coordinate in , and fixing its value to .
:
Thus is a final constrained coordinate. Let and be the values of initial and final vectors , on coordinate . We define by replacing with two components and . behaves exactly as with the only exception that the value of the th coordinate is kept between [math] and . This can be achieved using a cross-product of with a finite state automaton, with states , the initial state , the final state , and transitions induced by the th coordinate of arcs in . This allows to set the th coordinate of all arcs in to [math]; in consequence, the coordinate can be moved to rigid coordinates of . Thus has times more states and arcs than but one less non-rigid coordinate. The rigid vector of is set to on coordinate . The difference is easily compensated by adding one arc-less component to , connected to by an arc that adds on coordinate and preserves all other coordinates. ∎
The reference list from the paper itself. Each links out to its DOI / PubMed record.
- 1[1] S. Rao Kosaraju. Decidability of reachability in vector addition systems (preliminary version). In STOC , pages 267–281. ACM, 1982.
- 2[2] Ernst W. Mayr. An algorithm for the general Petri net reachability problem. In STOC , pages 238–246. ACM, 1981.
- 3[3] Ernst W. Mayr. An algorithm for the general Petri net reachability problem. SIAM J. Comput. , 13(3):441–460, 1984.
