9 research outputs found
Defining Recursive Predicates in Graph Orders
We study the first order theory of structures over graphs i.e. structures of
the form () where is the set of all
(isomorphism types of) finite undirected graphs and some vocabulary. We
define the notion of a recursive predicate over graphs using Turing Machine
recognizable string encodings of graphs. We also define the notion of an
arithmetical relation over graphs using a total order on the set
such that () is isomorphic to
().
We introduce the notion of a \textit{capable} structure over graphs, which is
one satisfying the conditions : (1) definability of arithmetic, (2)
definability of cardinality of a graph, and (3) definability of two particular
graph predicates related to vertex labellings of graphs. We then show any
capable structure can define every arithmetical predicate over graphs. As a
corollary, any capable structure also defines every recursive graph relation.
We identify capable structures which are expansions of graph orders, which are
structures of the form () where is a partial order. We
show that the subgraph order i.e. (), induced subgraph
order with one constant i.e. () and an expansion
of the minor order for counting edges i.e. ()
are capable structures. In the course of the proof, we show the definability of
several natural graph theoretic predicates in the subgraph order which may be
of independent interest. We discuss the implications of our results and
connections to Descriptive Complexity
Regular Separability and Intersection Emptiness Are Independent Problems
The problem of regular separability asks, given two languages K and L, whether there exists a regular language S that includes K and is disjoint from L. This problem becomes interesting when the input languages K and L are drawn from language classes beyond the regular languages. For such classes, a mild and useful assumption is that they are full trios, i.e. closed under rational transductions.
All the results on regular separability for full trios obtained so far exhibited a noteworthy correspondence with the intersection emptiness problem: In each case, regular separability is decidable if and only if intersection emptiness is decidable. This raises the question whether for full trios, regular separability can be reduced to intersection emptiness or vice-versa.
We present counterexamples showing that neither of the two problems can be reduced to the other. More specifically, we describe full trios C_1, D_1, C_2, D_2 such that (i) intersection emptiness is decidable for C_1 and D_1, but regular separability is undecidable for C_1 and D_1 and (ii) regular separability is decidable for C_2 and D_2, but intersection emptiness is undecidable for C_2 and D_2
Existential Definability over the Subword Ordering
We study first-order logic (FO) over the structure consisting of finite words
over some alphabet , together with the (non-contiguous) subword ordering. In
terms of decidability of quantifier alternation fragments, this logic is
well-understood: If every word is available as a constant, then even the
(i.e., existential) fragment is undecidable, already for binary
alphabets . However, up to now, little is known about the expressiveness of
the quantifier alternation fragments: For example, the undecidability proof for
the existential fragment relies on Diophantine equations and only shows that
recursively enumerable languages over a singleton alphabet (and some auxiliary
predicates) are definable. We show that if , then a relation is
definable in the existential fragment over with constants if and only if it
is recursively enumerable. This implies characterizations for all fragments
: If , then a relation is definable in if and
only if it belongs to the -th level of the arithmetical hierarchy. In
addition, our result yields an analogous complete description of the
-fragments for of the pure logic, where the words of
are not available as constants
Existential Definability over the Subword Ordering
We study first-order logic (FO) over the structure consisting of finite words over some alphabet A, together with the (non-contiguous) subword ordering. In terms of decidability of quantifier alternation fragments, this logic is well-understood: If every word is available as a constant, then even the ?? (i.e., existential) fragment is undecidable, already for binary alphabets A.
However, up to now, little is known about the expressiveness of the quantifier alternation fragments: For example, the undecidability proof for the existential fragment relies on Diophantine equations and only shows that recursively enumerable languages over a singleton alphabet (and some auxiliary predicates) are definable.
We show that if |A| ? 3, then a relation is definable in the existential fragment over A with constants if and only if it is recursively enumerable. This implies characterizations for all fragments ?_i: If |A| ? 3, then a relation is definable in ?_i if and only if it belongs to the i-th level of the arithmetical hierarchy. In addition, our result yields an analogous complete description of the ?_i-fragments for i ? 2 of the pure logic, where the words of A^* are not available as constants
Reachability in Continuous Pushdown VASS
Pushdown Vector Addition Systems with States (PVASS) consist of finitely many
control states, a pushdown stack, and a set of counters that can be incremented
and decremented, but not tested for zero. Whether the reachability problem is
decidable for PVASS is a long-standing open problem.
We consider continuous PVASS, which are PVASS with a continuous semantics.
This means, the counter values are rational numbers and whenever a vector is
added to the current counter values, this vector is first scaled with an
arbitrarily chosen rational factor between zero and one. We show that
reachability in continuous PVASS is NEXPTIME-complete. Our result is unusually
robust: Reachability can be decided in NEXPTIME even if all numbers are
specified in binary. On the other hand, NEXPTIME-hardness already holds for
coverability, in fixed dimension, for bounded stack, and even if all numbers
are specified in unary
Checking Refinement of Asynchronous Programs Against Context-Free Specifications
In the language-theoretic approach to refinement verification, we check that the language of traces of an implementation all belong to the language of a specification. We consider the refinement verification problem for asynchronous programs against specifications given by a Dyck language. We show that this problem is EXPSPACE-complete - the same complexity as that of language emptiness and for refinement verification against a regular specification. Our algorithm uses several technical ingredients. First, we show that checking if the coverability language of a succinctly described vector addition system with states (VASS) is contained in a Dyck language is EXPSPACE-complete. Second, in the more technical part of the proof, we define an ordering on words and show a downward closure construction that allows replacing the (context-free) language of each task in an asynchronous program by a regular language. Unlike downward closure operations usually considered in infinite-state verification, our ordering is not a well-quasi-ordering, and we have to construct the regular language ab initio. Once the tasks can be replaced, we show a reduction to an appropriate VASS and use our first ingredient. In addition to the inherent theoretical interest, refinement verification with Dyck specifications captures common practical resource usage patterns based on reference counting, for which few algorithmic techniques were known
Context-Bounded Analysis of Concurrent Programs (Invited Talk)
Context-bounded analysis of concurrent programs is a technique to compute a sequence of under-approximations of all behaviors of the program. For a fixed bound k, a context bounded analysis considers only those runs in which a single process is interrupted at most k times. As k grows, we capture more and more behaviors of the program. Practically, context-bounding has been very effective as a bug-finding tool: many bugs can be found even with small bounds. Theoretically, context-bounded analysis is decidable for a large number of programming models for which verification problems are undecidable. In this paper, we survey some recent work in context-bounded analysis of multithreaded programs.
In particular, we show a general decidability result. We study context-bounded reachability in a language-theoretic setup. We fix a class of languages (satisfying some mild conditions) from which each thread is chosen. We show context-bounded safety and termination verification problems are decidable iff emptiness is decidable for the underlying class of languages and context-bounded boundedness is decidable iff finiteness is decidable for the underlying class