18 research outputs found
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
Enabling Preserving Bisimulation Equivalence
Most fairness assumptions used for verifying liveness properties are criticised for being too strong or unrealistic. On the other hand, justness, arguably the minimal fairness assumption required for the verification of liveness properties, is not preserved by classical semantic equivalences, such as strong bisimilarity. To overcome this deficiency, we introduce a finer alternative to strong bisimilarity, called enabling preserving bisimilarity. We prove that this equivalence is justness-preserving and a congruence for all standard operators, including parallel composition
Reactive temporal logic
Whereas standard treatments of temporal logic are adequate for closed
systems, having no run-time interactions with their environment, they fall
short for reactive systems, interacting with their environments through
synchronisation of actions. This paper introduces reactive temporal logic, a
form of temporal logic adapted for the study of reactive systems. I illustrate
its use by applying it to formulate definitions of a fair scheduler, and of a
correct mutual exclusion protocol. Previous definitions of these concepts were
conceptually much more involved or less precise, leading to debates on whether
or not a given protocol satisfies the implicit requirements.Comment: In Proceedings EXPRESS/SOS 2020, arXiv:2008.1241
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
Fair Termination of Binary Sessions
A binary session is a private communication channel that connects two processes, each adhering to a protocol description called session type. In this work, we study the first type system that ensures the fair termination of binary sessions. A session fairly terminates if all of the infinite executions admitted by its protocol are deemed ‘unrealistic’ because they violate certain fairness assumptions. Fair termination entails the eventual completion of all pending input/output actions, including those that depend on the completion of an unbounded number of other actions in possibly different sessions. This form of lock freedom allows us to address a large family of natural communication patterns that fall outside the scope of existing type systems. Our type system is also the first to adopt fair subtyping, a liveness-preserving refinement of the standard subtyping relation for session types that so far has only been studied theoretically. Fair subtyping is surprisingly subtle not only to characterize concisely but also to use appropriately, to the point that the type system must carefully account for all usages of fair subtyping to avoid compromising its liveness-preserving properties
Foundations of Software Science and Computation Structures
This open access book constitutes the proceedings of the 22nd International Conference on Foundations of Software Science and Computational Structures, FOSSACS 2019, which took place in Prague, Czech Republic, in April 2019, held as part of the European Joint Conference on Theory and Practice of Software, ETAPS 2019. The 29 papers presented in this volume were carefully reviewed and selected from 85 submissions. They deal with foundational research with a clear significance for software science
Foundations of Software Science and Computation Structures
This open access book constitutes the proceedings of the 24th International Conference on Foundations of Software Science and Computational Structures, FOSSACS 2021, which was held during March 27 until April 1, 2021, as part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2021. The conference was planned to take place in Luxembourg and changed to an online format due to the COVID-19 pandemic. The 28 regular papers presented in this volume were carefully reviewed and selected from 88 submissions. They deal with research on theories and methods to support the analysis, integration, synthesis, transformation, and verification of programs and software systems
Tools and Algorithms for the Construction and Analysis of Systems
This open access book constitutes the proceedings of the 28th International Conference on Tools and Algorithms for the Construction and Analysis of Systems, TACAS 2022, which was held during April 2-7, 2022, in Munich, Germany, as part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2022. The 46 full papers and 4 short papers presented in this volume were carefully reviewed and selected from 159 submissions. The proceedings also contain 16 tool papers of the affiliated competition SV-Comp and 1 paper consisting of the competition report. TACAS is a forum for researchers, developers, and users interested in rigorously based tools and algorithms for the construction and analysis of systems. The conference aims to bridge the gaps between different communities with this common interest and to support them in their quest to improve the utility, reliability, exibility, and efficiency of tools and algorithms for building computer-controlled systems