233 research outputs found
Efficient Algorithms for Asymptotic Bounds on Termination Time in VASS
Vector Addition Systems with States (VASS) provide a well-known and
fundamental model for the analysis of concurrent processes, parameterized
systems, and are also used as abstract models of programs in resource bound
analysis. In this paper we study the problem of obtaining asymptotic bounds on
the termination time of a given VASS. In particular, we focus on the
practically important case of obtaining polynomial bounds on termination time.
Our main contributions are as follows: First, we present a polynomial-time
algorithm for deciding whether a given VASS has a linear asymptotic complexity.
We also show that if the complexity of a VASS is not linear, it is at least
quadratic. Second, we classify VASS according to quantitative properties of
their cycles. We show that certain singularities in these properties are the
key reason for non-polynomial asymptotic complexity of VASS. In absence of
singularities, we show that the asymptotic complexity is always polynomial and
of the form , for some integer , where is the
dimension of the VASS. We present a polynomial-time algorithm computing the
optimal . For general VASS, the same algorithm, which is based on a complete
technique for the construction of ranking functions in VASS, produces a valid
lower bound, i.e., a such that the termination complexity is .
Our results are based on new insights into the geometry of VASS dynamics, which
hold the potential for further applicability to VASS analysis.Comment: arXiv admin note: text overlap with arXiv:1708.0925
The Reachability Problem for Petri Nets is Not Elementary
Petri nets, also known as vector addition systems, are a long established
model of concurrency with extensive applications in modelling and analysis of
hardware, software and database systems, as well as chemical, biological and
business processes. The central algorithmic problem for Petri nets is
reachability: whether from the given initial configuration there exists a
sequence of valid execution steps that reaches the given final configuration.
The complexity of the problem has remained unsettled since the 1960s, and it is
one of the most prominent open questions in the theory of verification.
Decidability was proved by Mayr in his seminal STOC 1981 work, and the
currently best published upper bound is non-primitive recursive Ackermannian of
Leroux and Schmitz from LICS 2019. We establish a non-elementary lower bound,
i.e. that the reachability problem needs a tower of exponentials of time and
space. Until this work, the best lower bound has been exponential space, due to
Lipton in 1976. The new lower bound is a major breakthrough for several
reasons. Firstly, it shows that the reachability problem is much harder than
the coverability (i.e., state reachability) problem, which is also ubiquitous
but has been known to be complete for exponential space since the late 1970s.
Secondly, it implies that a plethora of problems from formal languages, logic,
concurrent systems, process calculi and other areas, that are known to admit
reductions from the Petri nets reachability problem, are also not elementary.
Thirdly, it makes obsolete the currently best lower bounds for the reachability
problems for two key extensions of Petri nets: with branching and with a
pushdown stack.Comment: Final version of STOC'1
Improved Lower Bounds for Reachability in Vector Addition Systems
We investigate computational complexity of the reachability problem for vector addition systems (or, equivalently, Petri nets), the central algorithmic problem in verification of concurrent systems. Concerning its complexity, after 40 years of stagnation, a non-elementary lower bound has been shown recently: the problem needs a tower of exponentials of time or space, where the height of tower is linear in the input size. We improve on this lower bound, by increasing the height of tower from linear to exponential. As a side-effect, we obtain better lower bounds for vector addition systems of fixed dimension
Improved Ackermannian Lower Bound for the Petri Nets Reachability Problem
Petri nets, equivalently presentable as vector addition systems with states, are an established model of concurrency with widespread applications. The reachability problem, where we ask whether from a given initial configuration there exists a sequence of valid execution steps reaching a given final configuration, is the central algorithmic problem for this model. The complexity of the problem has remained, until recently, one of the hardest open questions in verification of concurrent systems. A first upper bound has been provided only in 2015 by Leroux and Schmitz, then refined by the same authors to non-primitive recursive Ackermannian upper bound in 2019. The exponential space lower bound, shown by Lipton already in 1976, remained the only known for over 40 years until a breakthrough non-elementary lower bound by Czerwi?ski, Lasota, Lazic, Leroux and Mazowiecki in 2019. Finally, a matching Ackermannian lower bound announced this year by Czerwi?ski and Orlikowski, and independently by Leroux, established the complexity of the problem.
Our primary contribution is an improvement of the former construction, making it conceptually simpler and more direct. On the way we improve the lower bound for vector addition systems with states in fixed dimension (or, equivalently, Petri nets with fixed number of places): while Czerwi?ski and Orlikowski prove F_k-hardness (hardness for kth level in Grzegorczyk Hierarchy) in dimension 6k, our simplified construction yields F_k-hardness already in dimension 3k+2
Asynchronous Games over Tree Architectures
We consider the task of controlling in a distributed way a Zielonka
asynchronous automaton. Every process of a controller has access to its causal
past to determine the next set of actions it proposes to play. An action can be
played only if every process controlling this action proposes to play it. We
consider reachability objectives: every process should reach its set of final
states. We show that this control problem is decidable for tree architectures,
where every process can communicate with its parent, its children, and with the
environment. The complexity of our algorithm is l-fold exponential with l being
the height of the tree representing the architecture. We show that this is
unavoidable by showing that even for three processes the problem is
EXPTIME-complete, and that it is non-elementary in general
Algorithmic Verification of Asynchronous Programs
Asynchronous programming is a ubiquitous systems programming idiom to manage
concurrent interactions with the environment. In this style, instead of waiting
for time-consuming operations to complete, the programmer makes a non-blocking
call to the operation and posts a callback task to a task buffer that is
executed later when the time-consuming operation completes. A co-operative
scheduler mediates the interaction by picking and executing callback tasks from
the task buffer to completion (and these callbacks can post further callbacks
to be executed later). Writing correct asynchronous programs is hard because
the use of callbacks, while efficient, obscures program control flow.
We provide a formal model underlying asynchronous programs and study
verification problems for this model. We show that the safety verification
problem for finite-data asynchronous programs is expspace-complete. We show
that liveness verification for finite-data asynchronous programs is decidable
and polynomial-time equivalent to Petri Net reachability. Decidability is not
obvious, since even if the data is finite-state, asynchronous programs
constitute infinite-state transition systems: both the program stack and the
task buffer of pending asynchronous calls can be potentially unbounded.
Our main technical construction is a polynomial-time semantics-preserving
reduction from asynchronous programs to Petri Nets and conversely. The
reduction allows the use of algorithmic techniques on Petri Nets to the
verification of asynchronous programs.
We also study several extensions to the basic models of asynchronous programs
that are inspired by additional capabilities provided by implementations of
asynchronous libraries, and classify the decidability and undecidability of
verification questions on these extensions.Comment: 46 pages, 9 figure
Long-Run Average Behavior of Vector Addition Systems with States
A vector addition system with states (VASS) consists of a finite set of states and counters. A configuration is a state and a value for each counter; a transition changes the state and each counter is incremented, decremented, or left unchanged. While qualitative properties such as state and configuration reachability have been studied for VASS, we consider the long-run average cost of infinite computations of VASS. The cost of a configuration is for each state, a linear combination of the counter values. In the special case of uniform cost functions, the linear combination is the same for all states. The (regular) long-run emptiness problem is, given a VASS, a cost function, and a threshold value, if there is a (lasso-shaped) computation such that the long-run average value of the cost function does not exceed the threshold. For uniform cost functions, we show that the regular long-run emptiness problem is (a) decidable in polynomial time for integer-valued VASS, and (b) decidable but nonelementarily hard for natural-valued VASS (i.e., nonnegative counters). For general cost functions, we show that the problem is (c) NP-complete for integer-valued VASS, and (d) undecidable for natural-valued VASS. Our most interesting result is for (c) integer-valued VASS with general cost functions, where we establish a connection between the regular long-run emptiness problem and quadratic Diophantine inequalities. The general (nonregular) long-run emptiness problem is equally hard as the regular problem in all cases except (c), where it remains open
Ackermannian and Primitive-Recursive Bounds with Dickson's Lemma
Dickson's Lemma is a simple yet powerful tool widely used in termination
proofs, especially when dealing with counters or related data structures.
However, most computer scientists do not know how to derive complexity upper
bounds from such termination proofs, and the existing literature is not very
helpful in these matters.
We propose a new analysis of the length of bad sequences over (N^k,\leq) and
explain how one may derive complexity upper bounds from termination proofs. Our
upper bounds improve earlier results and are essentially tight
The Hardness of Finding Linear Ranking Functions for Lasso Programs
Finding whether a linear-constraint loop has a linear ranking function is an
important key to understanding the loop behavior, proving its termination and
establishing iteration bounds. If no preconditions are provided, the decision
problem is known to be in coNP when variables range over the integers and in
PTIME for the rational numbers, or real numbers. Here we show that deciding
whether a linear-constraint loop with a precondition, specifically with
partially-specified input, has a linear ranking function is EXPSPACE-hard over
the integers, and PSPACE-hard over the rationals. The precise complexity of
these decision problems is yet unknown. The EXPSPACE lower bound is derived
from the reachability problem for Petri nets (equivalently, Vector Addition
Systems), and possibly indicates an even stronger lower bound (subject to open
problems in VAS theory). The lower bound for the rationals follows from a novel
simulation of Boolean programs. Lower bounds are also given for the problem of
deciding if a linear ranking-function supported by a particular form of
inductive invariant exists. For loops over integers, the problem is PSPACE-hard
for convex polyhedral invariants and EXPSPACE-hard for downward-closed sets of
natural numbers as invariants.Comment: In Proceedings GandALF 2014, arXiv:1408.5560. I thank the organizers
of the Dagstuhl Seminar 14141, "Reachability Problems for Infinite-State
Systems", for the opportunity to present an early draft of this wor
- …