3,754 research outputs found
Reactive concurrent programming revisited
In this note we revisit the so-called reactive programming style, which
evolves from the synchronous programming model of the Esterel language by
weakening the assumption that the absence of an event can be detected
instantaneously. We review some research directions that have been explored
since the emergence of the reactive model ten years ago. We shall also outline
some questions that remain to be investigated
On convergence-sensitive bisimulation and the embedding of CCS in timed CCS
We propose a notion of convergence-sensitive bisimulation that is built just
over the notions of (internal) reduction and of (static) context. In the
framework of timed CCS, we characterise this notion of `contextual'
bisimulation via the usual labelled transition system. We also remark that it
provides a suitable semantic framework for a fully abstract embedding of
untimed processes into timed ones. Finally, we show that the notion can be
refined to include sensitivity to divergence
Feasible reactivity in a synchronous pi-calculus
Reactivity is an essential property of a synchronous program. Informally, it
guarantees that at each instant the program fed with an input will `react'
producing an output. In the present work, we consider a refined property that
we call ` feasible reactivity'. Beyond reactivity, this property guarantees
that at each instant both the size of the program and its reaction time are
bounded by a polynomial in the size of the parameters at the beginning of the
computation and the size of the largest input. We propose a method to annotate
programs and we develop related static analysis techniques that guarantee
feasible reactivity for programs expressed in the S-pi-calculus. The latter is
a synchronous version of the pi-calculus based on the SL synchronous
programming model
Putting time into proof outlines
A logic for reasoning about timing of concurrent programs is presented. The logic is based on proof outlines and can handle maximal parallelism as well as resource-constrained execution environments. The correctness proof for a mutual exclusion protocol that uses execution timings in a subtle way illustrates the logic in action
A synchronous pi-calculus
The SL synchronous programming model is a relaxation of the Esterel
synchronous model where the reaction to the absence of a signal within an
instant can only happen at the next instant. In previous work, we have
revisited the SL synchronous programming model. In particular, we have
discussed an alternative design of the model including thread spawning and
recursive definitions, introduced a CPS translation to a tail recursive form,
and proposed a notion of bisimulation equivalence. In the present work, we
extend the tail recursive model with first-order data types obtaining a
non-deterministic synchronous model whose complexity is comparable to the one
of the pi-calculus. We show that our approach to bisimulation equivalence can
cope with this extension and in particular that labelled bisimulation can be
characterised as a contextual bisimulation
Strategy Logic with Imperfect Information
We introduce an extension of Strategy Logic for the imperfect-information
setting, called SLii, and study its model-checking problem. As this logic
naturally captures multi-player games with imperfect information, the problem
turns out to be undecidable. We introduce a syntactical class of "hierarchical
instances" for which, intuitively, as one goes down the syntactic tree of the
formula, strategy quantifications are concerned with finer observations of the
model. We prove that model-checking SLii restricted to hierarchical instances
is decidable. This result, because it allows for complex patterns of
existential and universal quantification on strategies, greatly generalises
previous ones, such as decidability of multi-player games with imperfect
information and hierarchical observations, and decidability of distributed
synthesis for hierarchical systems. To establish the decidability result, we
introduce and study QCTL*ii, an extension of QCTL* (itself an extension of CTL*
with second-order quantification over atomic propositions) by parameterising
its quantifiers with observations. The simple syntax of QCTL* ii allows us to
provide a conceptually neat reduction of SLii to QCTL*ii that separates
concerns, allowing one to forget about strategies and players and focus solely
on second-order quantification. While the model-checking problem of QCTL*ii is,
in general, undecidable, we identify a syntactic fragment of hierarchical
formulas and prove, using an automata-theoretic approach, that it is decidable.
The decidability result for SLii follows since the reduction maps hierarchical
instances of SLii to hierarchical formulas of QCTL*ii
Transition removal for compositional supervisor synthesis
This paper investigates under which conditions transitions can be removed from an automaton while preserving important synthesis properties. The work is part of a framework for compositional synthesis of least restrictive controllable and nonblocking supervisors for modular discrete event systems. The method for transition removal complements previous results, which are largely focused on state merging. Issues concerning transition removal in synthesis are discussed, and redirection maps are introduced to enable a supervisor to process an event, even though the corresponding transition is no longer present in the model. Based on the results, different techniques are proposed to remove controllable and uncontrollable transitions, and an example shows the potential of the method for practical problems
- …