29 research outputs found
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
A Compositional Framework for Preference-Aware Agents
A formal description of a Cyber-Physical system should include a rigorous
specification of the computational and physical components involved, as well as
their interaction. Such a description, thus, lends itself to a compositional
model where every module in the model specifies the behavior of a
(computational or physical) component or the interaction between different
components. We propose a framework based on Soft Constraint Automata that
facilitates the component-wise description of such systems and includes the
tools necessary to compose subsystems in a meaningful way, to yield a
description of the entire system. Most importantly, Soft Constraint Automata
allow the description and composition of components' preferences as well as
environmental constraints in a uniform fashion. We illustrate the utility of
our framework using a detailed description of a patrolling robot, while
highlighting methods of composition as well as possible techniques to employ
them.Comment: In Proceedings V2CPS-16, arXiv:1612.0402
Equivalence checking for weak bi-Kleene algebra
Pomset automata are an operational model of weak bi-Kleene algebra, which
describes programs that can fork an execution into parallel threads, upon
completion of which execution can join to resume as a single thread. We
characterize a fragment of pomset automata that admits a decision procedure for
language equivalence. Furthermore, we prove that this fragment corresponds
precisely to series-rational expressions, i.e., rational expressions with an
additional operator for bounded parallelism. As a consequence, we obtain a new
proof that equivalence of series-rational expressions is decidable
An Elementary Proof of the FMP for Kleene Algebra
Kleene Algebra (KA) is a useful tool for proving that two programs are
equivalent by reasoning equationally. Because it abstracts from the meaning of
primitive programs, KA's equational theory is decidable, so it integrates well
with interactive theorem provers. This raises the question: which equations can
we (not) prove using the laws of KA? Moreover, which models of KA are complete,
in the sense that they satisfy exactly the provable equations? Kozen (1994)
answered these questions by characterizing KA in terms of its language model.
Concretely, equivalences provable in KA are exactly those that hold for regular
expressions.
Pratt (1980) observed that KA is complete w.r.t. relational models, i.e.,
that its provable equations are those that hold for any relational
interpretation. A less known result due to Palka (2005) says that finite models
are complete for KA, i.e., that provable equivalences coincide with equations
satisfied by all finite KAs. Phrased contrapositively, the latter is a finite
model property (FMP): any unprovable equation is falsified by a finite KA.
These results can be argued using Kozen's theorem, but the implication is
mutual: given that KA is complete w.r.t. finite (resp. relational) models,
Palka's (resp. Pratt's) arguments show that it is complete w.r.t. the language
model.
We embark on a study of the different complete models of KA, and the
connections between them. This yields a fourth result subsuming those of Palka
and Pratt, namely that KA is complete w.r.t. finite relational models. Next, we
put an algebraic spin on Palka's techniques, which yield an elementary proof of
the finite model property, and by extension, of Kozen's and Pratt's theorems.
In contrast with earlier approaches, this proof relies not on minimality or
bisimilarity of automata, but rather on representing the regular expressions
involved in terms of transformation automata
Learning Pomset Automata
We extend the L* algorithm to learn bimonoids recognising pomset languages.
We then identify a class of pomset automata that accepts precisely the class of
pomset languages recognised by bimonoids and show how to convert between
bimonoids and automata
Composing Constraint Automata, State-by-State (Technical Report)
The grand composition of n automata may have a number of states/transitions exponential in n. When it does, it seems not unreasonable for the computation of that grand composition to require exponentially many resources (time, space, or both). Conversely, if the grand composition of n automata has a number of states/transitions only linear in n, we may reasonably expect the computation of that grand composition to also require only linearly many resources.
Recently and problematically, we saw cases of linearly-sized grand compositions whose computation required exponentially many resources. We encountered these cases in the context of Reo (a graphical language for coordinating components in component-based software), constraint automata (a general formalism for modeling systems' behavior), and our compiler for Reo based on constraint automata. Combined with earlier research on constraint automata verification, these ingredients facilitate a correctness-by-construction approach to component-based software engineering---one of the hallmarks in Sifakis' "rigorous system design". To achieve that ambitious goal, however, we need to solve the previously stated problem. In this paper we present such a solution
Formal Abstractions for Packet Scheduling
This paper studies PIFO trees from a programming language perspective. PIFO
trees are a recently proposed model for programmable packet schedulers. They
can express a wide range of scheduling algorithms including strict priority,
weighted fair queueing, hierarchical schemes, and more. However, their semantic
properties are not well understood. We formalize the syntax and semantics of
PIFO trees in terms of an operational model. We also develop an alternate
semantics in terms of permutations on lists of packets, prove theorems
characterizing expressiveness, and develop an embedding algorithm for
replicating the behavior of one with another. We present a prototype
implementation of PIFO trees in OCaml and relate its behavior to a hardware
switch on a variety of standard and novel scheduling algorithms.Comment: 25 pages, 12 figure
Completeness and Incompleteness of Synchronous Kleene Algebra
Synchronous Kleene algebra (SKA), an extension of Kleene algebra (KA), was
proposed by Prisacariu as a tool for reasoning about programs that may execute
synchronously, i.e., in lock-step. We provide a countermodel witnessing that
the axioms of SKA are incomplete w.r.t. its language semantics, by exploiting a
lack of interaction between the synchronous product operator and the Kleene
star. We then propose an alternative set of axioms for SKA, based on Salomaa's
axiomatisation of regular languages, and show that these provide a sound and
complete characterisation w.r.t. the original language semantics.Comment: Accepted at MPC 201
Concurrent Kleene Algebra with Observations: from Hypotheses to Completeness
Concurrent Kleene Algebra (CKA) extends basic Kleene algebra with a parallel
composition operator, which enables reasoning about concurrent programs.
However, CKA fundamentally misses tests, which are needed to model standard
programming constructs such as conditionals and -loops. It
turns out that integrating tests in CKA is subtle, due to their interaction
with parallelism. In this paper we provide a solution in the form of Concurrent
Kleene Algebra with Observations (CKAO). Our main contribution is a
completeness theorem for CKAO. Our result resorts on a more general study of
CKA "with hypotheses", of which CKAO turns out to be an instance: this analysis
is of independent interest, as it can be applied to extensions of CKA other
than CKAO
On Series-Parallel Pomset Languages: Rationality, Context-Freeness and Automata
Concurrent Kleene Algebra (CKA) is a formalism to study concurrent programs.
Like previous Kleene Algebra extensions, developing a correspondence between
denotational and operational perspectives is important, for both foundations
and applications. This paper takes an important step towards such a
correspondence, by precisely relating bi-Kleene Algebra (BKA), a fragment of
CKA, to a novel type of automata, pomset automata (PAs). We show that PAs can
implement the BKA semantics of series-parallel rational expressions, and that a
class of PAs can be translated back to these expressions. We also characterise
the behavior of general PAs in terms of context-free pomset grammars;
consequently, universality, equivalence and series-parallel rationality of
general PAs are undecidable.Comment: Accepted manuscrip
