3,636 research outputs found
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
On the rational subset problem for groups
We use language theory to study the rational subset problem for groups and
monoids. We show that the decidability of this problem is preserved under graph
of groups constructions with finite edge groups. In particular, it passes
through free products amalgamated over finite subgroups and HNN extensions with
finite associated subgroups. We provide a simple proof of a result of
Grunschlag showing that the decidability of this problem is a virtual property.
We prove further that the problem is decidable for a direct product of a group
G with a monoid M if and only if membership is uniformly decidable for
G-automata subsets of M. It follows that a direct product of a free group with
any abelian group or commutative monoid has decidable rational subset
membership.Comment: 19 page
Deciding regular grammar logics with converse through first-order logic
We provide a simple translation of the satisfiability problem for regular
grammar logics with converse into GF2, which is the intersection of the guarded
fragment and the 2-variable fragment of first-order logic. This translation is
theoretically interesting because it translates modal logics with certain frame
conditions into first-order logic, without explicitly expressing the frame
conditions.
A consequence of the translation is that the general satisfiability problem
for regular grammar logics with converse is in EXPTIME. This extends a previous
result of the first author for grammar logics without converse. Using the same
method, we show how some other modal logics can be naturally translated into
GF2, including nominal tense logics and intuitionistic logic.
In our view, the results in this paper show that the natural first-order
fragment corresponding to regular grammar logics is simply GF2 without extra
machinery such as fixed point-operators.Comment: 34 page
On the uniform one-dimensional fragment
The uniform one-dimensional fragment of first-order logic, U1, is a recently
introduced formalism that extends two-variable logic in a natural way to
contexts with relations of all arities. We survey properties of U1 and
investigate its relationship to description logics designed to accommodate
higher arity relations, with particular attention given to DLR_reg. We also
define a description logic version of a variant of U1 and prove a range of new
results concerning the expressivity of U1 and related logics
Decision problems for Clark-congruential languages
A common question when studying a class of context-free grammars is whether
equivalence is decidable within this class. We answer this question positively
for the class of Clark-congruential grammars, which are of interest to
grammatical inference. We also consider the problem of checking whether a given
CFG is Clark-congruential, and show that it is decidable given that the CFG is
a DCFG.Comment: Version 2 incorporates revisions prompted by the comments of
anonymous referees at ICGI and LearnAu
- …