Periodic Reporting for period 1 - FINABIS (Finite-state abstractions of infinite-state systems)
Berichtszeitraum: 2023-01-01 bis 2025-06-30
about another given program? Aside from being at the core of computing, this
question is of practical importance in software verification: With more and
more complex software systems, it becomes necessary to rigorously prove
correctness of critical software systems.
For systems with finitely many states, there are established techniques to
automatically verify their correctness. However, software systems typically
have infinite state spaces, which makes this task much more difficult, or even
leads to undecidability.
In the project FINABIS, "Finite-state abstractions of infinite-state systems",
we develop algorithmic methods for computing finite-state abstractions of
systems with infinitely many states. Such methods allow us to use established
methods for analyzing finite-state systems, by applying them to abstractions of
infinite-state systems.
Specifically, the project studies two types of algorithmic tasks: (i) closure
computation and (ii) separability problems.
In the case of closure computation, we are given an infinite-state system and
want to compute its closure w.r.t. a particular closure operator. Such closures
are important when verifying complex systems that consist of several
components. In such situations, one can sometimes replace an infinite-state
system component by its closure (finite-state) and thus simplify the the entire
system.
In the case of separability problems, the finite-state abstractions serve the
purpose of correctness certificates. In the verification of software systems,
correctness can often be expressed as intersection emptiness of two sets of
behaviors. A finite-state separator then includes all behaviors of the first
set, and is disjoint from the second. The separator thus certifies intersection
emptiness.
separability for a wide range of infinite-state systems. This led to progress
in several ways.
First, we identified run amalgamation as an important algorithmic tool for
closure computation: We have shown that for a a large class of infinite-state
systems, many algorithmic tasks can be performed using a technique called run
amalgamation. The fact that runs can sometimes be amalgamated is a result from
the theory of vector addition systems. We observe that run amalgamation is not
only useful for their original purposes, but for many other algorithmic tasks.
Moreover, we have shown that run amalgamation is available in a large
collection of other infinite-state systems. In particular, we show that run
amalgamation can be used to compute subword closures, but also the finer
priority closures. These results were published together with Ashwani Anand,
Sylvain Schmitz, and Lia Schütze at LICS 2024.
Second, we showed that for pushdown systems (which are infinite-state models
for recursive programs), priority closures can be computed in doubly
exponential time. This was published together with Ashwani Anand at CONCUR
2023.
Third, we have studied slice closures, which provide a finite-state abstraction
that preserves counting properties. Our main result here, in joint work with
Laura Ciobanu at LICS 2024, is that slice closures can be computed for
second-order pushdown automata, a model that represents second-order recursion.
Regarding separability, we have shown, together with Elias Rojas Collins and
Chris Köcher (in so far unpublished work) that the regular separability problem
is coNP-complete for Parikh automata, a class of systems that has been studied
intensvely in recent decades. Here, decidability was known, but the complexity
had remained open. Moreover, together with Pascal Baumann, Eren Keskin, and
Roland Meyer we have shown that regular separability in Büchi vector addition
systems is EXPSPACE-complete (STACS 2023 and ICALP 2024).
More generally, we have also studied unboundedness problems, which is a type of
decision problem at the core of closure computation and separability. We have
provided general complexity bounds for unboundedness problems in Parikh
automata, which has received the EATCS Best Paper Award at FoSSaCS 2023.
Moreover, we studied Ramsey Quantifiers in linear arithmetics, which resulted
in efficient algorithms for unboundedness problems related to linear arithmetic
theories. This also inspired work on classical quantifiers in linear
arithmetic: We have shown together with Christoph Haase, Shankara Narayanan
Krishna, Khushraj Madnani, and Om Swostik Mishra, that a block of quantifiers
in integer linear arithmetic can be eliminated in singly-exponential time,
refuting a 1997 lower bound claim by Weispfenning.
Our work on closure computation and separability is partially motivated by the
fact that the methods for solving these problems can shed light on longstanding
open problems in theoretical computer science. One such problem is the
reachability problem in pushdown vector addition systems with states (PVASS).
Here, we made progress by showing that an overapproximation--continuous
PVASS--has an NEXP-complete reachability problem. This was shown together with
A. R. Balasubramanian, Ramanathan S. Thinniyam, and Rupak Majumdar at POPL
2024.
contributions, with a particular focus on those that have applications outside
of the FINABIS project itself.
First, in order to determine the complexity of
regular separability in Büchi VASS, we developed algorithmic tools to solve
singly non-linear systems of inequalities over the rational numbers in NP (this
appeared our paper at ICALP 2024, together with Pascal Baumann, Eren Keskin,
and Roland Meyer).
Second, in joint work with Ashwani Anand, Sylvain Schmitz, and Lia Schütze, we
introduced a general algorithmic toolbox for solving unboundedness problems in
infinite-state systems.
Third, we obtained a method for eliminating a block of existential quantifiers
in linear integer arithmetic (also known as Presburger arithmetic) in single
exponential time, in joint work with Christoph Haase, Shankara Narayanan
Krishna, Khushraj Madnani, and Om Swostik Mishra at ICALP 2024. This shows that
many algorithmic tasks in Presburger arithmetic can be performed using
quantifier elimination: Before our work, quantifier elimination was considered
very powerful, but inherently too inefficient to obtain optimal complexity.
Finally, we developed algorithms for deciding whether a system of word
equations has a solution that satisfies a counting inequation, in joint work
with Laura Ciobanu at LICS 2024. This makes progress on a longstanding open
problem about word equations with length constraints, where one asks whether
there is a solution that satisfies equalities over word lengths.