36 research outputs found
Analysing Mutual Exclusion using Process Algebra with Signals
In contrast to common belief, the Calculus of Communicating Systems (CCS) and
similar process algebras lack the expressive power to accurately capture mutual
exclusion protocols without enriching the language with fairness assumptions.
Adding a fairness assumption to implement a mutual exclusion protocol seems
counter-intuitive. We employ a signalling operator, which can be combined with
CCS, or other process calculi, and show that this minimal extension is
expressive enough to model mutual exclusion: we confirm the correctness of
Peterson's mutual exclusion algorithm for two processes, as well as Lamport's
bakery algorithm, under reasonable assumptions on the underlying memory model.
The correctness of Peterson's algorithm for more than two processes requires
stronger, less realistic assumptions on the underlying memory model.Comment: In Proceedings EXPRESS/SOS 2017, arXiv:1709.0004
Modelling Mutual Exclusion in a Process Algebra with Time-outs
I show that in a standard process algebra extended with time-outs one can
correctly model mutual exclusion in such a way that starvation-freedom holds
without assuming fairness or justness, even when one makes the problem more
challenging by assuming memory accesses to be atomic. This can be achieved only
when dropping the requirement of speed independence.Comment: arXiv admin note: text overlap with arXiv:2008.1335
Justness: A Completeness Criterion for Capturing Liveness Properties (Extended Abstract)
This paper poses that transition systems constitute a good model of
distributed systems only in combination with a criterion telling which paths
model complete runs of the represented systems. Among such criteria, progress
is too weak to capture relevant liveness properties, and fairness is often too
strong; for typical applications we advocate the intermediate criterion of
justness. Previously, we proposed a definition of justness in terms of an
asymmetric concurrency relation between transitions. Here we define such a
concurrency relation for the transition systems associated to the process
algebra CCS as well as its extensions with broadcast communication and signals,
thereby making these process algebras suitable for capturing liveness
properties requiring justness.Comment: An extended abstract of this paper appears in Proc. FoSSaCS'1
Fair Refinement for Asynchronous Session Types
International audienceSession types are widely used as abstractions of asynchronous message passing systems. Refinement for such abstractions is crucial as it allows improvements of a given component without compromising its compatibility with the rest of the system. In the context of session types, the most general notion of refinement is the asynchronous session subtyping, which allows to anticipate message emissions but only under certain conditions. In particular, asynchronous session subtyping rules out candidates subtypes that occur naturally in communication protocols where, e.g., two parties simultaneously send each other a finite but unspecified amount of messages before removing them from their respective buffers. To address this shortcoming, we study fair compliance over asynchronous session types and fair refinement as the relation that preserves it. This allows us to propose a novel variant of session subtyping that leverages the notion of controllability from service contract theory and that is a sound characterisation of fair refinement. In addition, we show that both fair refinement and our novel subtyping are undecidable. We also present a sound algorithm, and its implementation, which deals with examples that feature potentially unbounded buffering
Stochastic Fairness and Language-Theoretic Fairness in Planning in Nondeterministic Domains
We address two central notions of fairness in the literature of nondeterministic fully observable domains. The first, which we call stochastic fairness, is classical, and assumes an environment which operates probabilistically using possibly unknown probabilities. The second, which is language-theoretic, assumes that if an action is taken from a given state infinitely often then all its possible outcomes should appear infinitely often; we call this state-action fairness. While the two notions coincide for standard reachability goals, they differ for temporally extended goals. This important difference has been overlooked in the planning literature and has led to the use of a product-based reduction in a number of published algorithms which were stated for state-action fairness, for which they are incorrect, while being correct for stochastic fairness. We remedy this and provide a correct optimal algorithm for solving state-action fair planning for LTL/LTLf goals, as well as a correct proof of the lower bound of the goal-complexity. Our proof is general enough that it also pro- vides, for the no-fairness and stochastic-fairness cases, multiple missing lower bounds and new proofs of known lower bounds. Overall, we show that stochastic fairness is better behaved than state-action fairness