68 research outputs found
Integer Vector Addition Systems with States
This paper studies reachability, coverability and inclusion problems for
Integer Vector Addition Systems with States (ZVASS) and extensions and
restrictions thereof. A ZVASS comprises a finite-state controller with a finite
number of counters ranging over the integers. Although it is folklore that
reachability in ZVASS is NP-complete, it turns out that despite their
naturalness, from a complexity point of view this class has received little
attention in the literature. We fill this gap by providing an in-depth analysis
of the computational complexity of the aforementioned decision problems. Most
interestingly, it turns out that while the addition of reset operations to
ordinary VASS leads to undecidability and Ackermann-hardness of reachability
and coverability, respectively, they can be added to ZVASS while retaining
NP-completness of both coverability and reachability.Comment: 17 pages, 2 figure
Composition problems for braids: Membership, Identity and Freeness
In this paper we investigate the decidability and complexity of problems related to braid composition. While all known problems for a class of braids with three strands, , have polynomial time solutions we prove that a very natural question for braid composition, the membership problem, is NP-complete for braids with only three strands. The membership problem is decidable in NP for , but it becomes harder for a class of braids with more strands. In particular we show that fundamental problems about braid compositions are undecidable for braids with at least five strands, but decidability of these problems for remains open. Finally we show that the freeness problem for semigroups of braids from is also decidable in NP. The paper introduces a few challenging algorithmic problems about topological braids opening new connections between braid groups, combinatorics on words, complexity theory and provides solutions for some of these problems by application of several techniques from automata theory, matrix semigroups and algorithms
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
Vérification efficace de systèmes à compteurs à l'aide de relaxations
Abstract : Counter systems are popular models used to reason about systems in various fields such as the analysis of concurrent or distributed programs and the discovery and verification of business processes. We study well-established problems on various classes of counter systems. This thesis focusses on three particular systems, namely Petri nets, which are a type of model for discrete systems with concurrent and sequential events, workflow nets, which form a subclass of Petri nets that is suited for modelling and reasoning about business processes, and continuous one-counter automata, a novel model that combines continuous semantics with one-counter automata. For Petri nets, we focus on reachability and coverability properties. We utilize directed search algorithms, using relaxations of Petri nets as heuristics, to obtain novel semi-decision algorithms for reachability and coverability, and positively evaluate a prototype implementation. For workflow nets, we focus on the problem of soundness, a well-established correctness notion for such nets. We precisely characterize the previously widely-open complexity of three variants of soundness. Based on our insights, we develop techniques to verify soundness in practice, based on reachability relaxation of Petri nets. Lastly, we introduce the novel model of continuous one-counter automata. This model is a natural variant of one-counter automata, which allows reasoning in a hybrid manner combining continuous and discrete elements. We characterize the exact complexity of the reachability problem in several variants of the model.Les systèmes à compteurs sont des modèles utilisés afin de raisonner sur les systèmes
de divers domaines tels l’analyse de programmes concurrents ou distribués, et
la découverte et la vérification de systèmes d’affaires. Nous étudions des problèmes
bien établis de différentes classes de systèmes à compteurs. Cette thèse se penche sur
trois systèmes particuliers : les rĂ©seaux de Petri, qui sont un type de modèle pour les systèmes discrets Ă
événements concurrents et séquentiels ; les « réseaux de processus », qui forment une sous-classe des réseaux de Petri
adaptée à la modélisation et au raisonnement des processus d’affaires ; les automates continus à un compteur, un nouveau modèle qui combine une
sémantique continue à celles des automates à un compteur.
Pour les réseaux de Petri, nous nous concentrons sur les propriétés d’accessibilité
et de couverture. Nous utilisons des algorithmes de parcours de graphes, avec
des relaxations de réseaux de Petri comme heuristiques, afin d’obtenir de nouveaux
algorithmes de semi-décision pour l’accessibilité et la couverture, et nous évaluons
positivement un prototype.
Pour les «réseaux de processus», nous nous concentrons sur le problème de validité,
une notion de correction bien établie pour ces réseaux. Nous caractérisions
précisément la complexité calculatoire jusqu’ici largement ouverte de trois variantes
du problème de validité. En nous basant sur nos résultats, nous développons des techniques
pour vérifier la validité en pratique, à l’aide de relaxations d’accessibilité dans
les réseaux de Petri. Enfin, nous introduisons le nouveau modèle d’automates continus à un compteur. Ce modèle est une variante naturelle des automates à un compteur, qui permet de
raisonner de manière hybride en combinant des éléments continus et discrets. Nous
caractérisons la complexité exacte du problème d’accessibilité dans plusieurs variantes
du modèle
Computer Aided Verification
This open access two-volume set LNCS 11561 and 11562 constitutes the refereed proceedings of the 31st International Conference on Computer Aided Verification, CAV 2019, held in New York City, USA, in July 2019. The 52 full papers presented together with 13 tool papers and 2 case studies, were carefully reviewed and selected from 258 submissions. The papers were organized in the following topical sections: Part I: automata and timed systems; security and hyperproperties; synthesis; model checking; cyber-physical systems and machine learning; probabilistic systems, runtime techniques; dynamical, hybrid, and reactive systems; Part II: logics, decision procedures; and solvers; numerical programs; verification; distributed systems and networks; verification and invariants; and concurrency
Reachability problems in low-dimensional nondeterministic polynomial maps over integers
We study reachability problems for various nondeterministic polynomial maps in Zn. We prove that the reachability problem for very simple three-dimensional affine maps (with independent variables) is undecidable and is PSPACE-hard for both two-dimensional affine maps and one-dimensional quadratic maps. Then we show that the complexity of the reachability problem for maps without functions of the form ±x+a0 is lower. In this case the reachability problem is PSPACE for any dimension and if the dimension is not fixed, then the problem is PSPACE-complete. Finally we extend the model by considering maps as language acceptors and prove that the universality problem is undecidable for two-dimensional affine maps
- …