English
Related papers

Related papers: Generalised rely-guarantee concurrency: An algebra…

200 papers

The rely/guarantee approach of Jones extends Hoare logic with rely and guarantee conditions in order to allow compositional reasoning about shared-variable concurrent programs. This paper focuses on localisation in the context of…

Logic in Computer Science · Computer Science 2019-07-10 Larissa A. Meinicke , Ian J. Hayes

Hoare-style inference rules for program constructs permit the copying of expressions and tests from program text into logical contexts. It is known that this requires care even for sequential programs but much more serious issues arise with…

Logic in Computer Science · Computer Science 2025-12-01 Ian J. Hayes , Cliff B. Jones , Larissa A. Meinicke

This research started with an algebra for reasoning about rely/guarantee concurrency for a shared memory model. The approach taken led to a more abstract algebra of atomic steps, in which atomic steps synchronise (rather than interleave)…

Logic in Computer Science · Computer Science 2017-10-11 Ian J. Hayes , Larissa A. Meinicke , Kirsten Winter , Robert J. Colvin

Jones' rely-guarantee calculus for shared variable concurrency is extended to include probabilistic behaviours. We use an algebraic approach which combines and adapts probabilistic Kleene algebras with concurrent Kleene algebra. Soundness…

Logic in Computer Science · Computer Science 2015-06-03 Annabelle McIver , Tahiry Rabehaja , Georg Struth

Rely-guarantee (RG) is a highly influential compositional proof technique for concurrent programs, which was originally developed assuming a sequentially consistent shared memory. In this paper, we first generalize RG to make it parametric…

Programming Languages · Computer Science 2026-05-08 Ori Lahav , Brijesh Dongol , Heike Wehrheim

The objective of this paper is to present general, mechanically verified, refinement rules for reasoning about recursive programs and while loops in the context of concurrency. Unlike many approaches to concurrency, we do not assume that…

Logic in Computer Science · Computer Science 2025-12-09 Ian J. Hayes , Larissa A. Meinicke , Cliff B. Jones

Rely/guarantee reasoning provides a compositional way of reasoning about concurrency. The ABA problem occurs in many non-blocking concurrent data structures, where a change made by a concurrent process may be undetected by other processes.…

Logic in Computer Science · Computer Science 2023-11-28 Nisansala P. Yatapanage

The reference point for developing any artefact is its specification; to develop software formally, a formal specification is required. For sequential programs, pre and post conditions (together with abstract objects) suffice; rely and…

Software Engineering · Computer Science 2023-12-04 Cliff B. Jones , Alan Burns

This research started with an algebra for reasoning about rely/guarantee concurrency for a shared memory model. The approach taken led to a more abstract algebra of atomic steps, in which atomic steps synchronise (rather than interleave)…

Logic in Computer Science · Computer Science 2022-01-19 Ian J. Hayes , Robert Colvin , Larissa Meinicke , Kirsten Winter , Andrius Velykis

This paper presents a theory for the refinement of shared-memory concurrent algorithms from specifications. We augment pre and post condition specifications with Jones' rely and guarantee conditions, all of which are encoded as commands…

Logic in Computer Science · Computer Science 2023-09-12 Ian J. Hayes , Larissa A. Meinicke , Patrick A. Meiring

Specifications of significant systems can be made short and perspicuous by using abstract data types; data reification can provide a clear, stepwise, development history of programs that use more efficient concrete representations. Data…

Logic in Computer Science · Computer Science 2024-05-10 Larissa A. Meinicke , Ian J. Hayes , Cliff B. Jones

The rely-guarantee approach is a promising way for compositional verification of concurrent reactive systems (CRSs), e.g. concurrent operating systems, interrupt-driven control systems and business process systems. However, specifications…

Software Engineering · Computer Science 2023-09-19 Yongwang Zhao , David Sanan

Abstract interpretation has been shown to be a promising technique for the thread-modular verification of concurrent programs. Central to this is the generation of interferences, in the form of rely-guarantee conditions, conforming to a…

Logic in Computer Science · Computer Science 2026-02-20 James Tobler , Graeme Smith

Distributive laws are important for algebraic reasoning in arithmetic and logic. They are equally important for algebraic reasoning about concurrent programs. In existing theories such as Concurrent Kleene Algebra, only partial correctness…

Logic in Computer Science · Computer Science 2024-03-21 Larissa A. Meinicke , Ian J. Hayes

This paper concerns the relation between imperative process algebra and rely/guarantee logic. An imperative process algebra is complemented by a rely/guarantee logic that can be used to reason about how data change in the course of a…

Logic in Computer Science · Computer Science 2025-09-23 C. A. Middelburg

We provide simple equational principles for deriving rely-guarantee-style inference rules and refinement laws based on idempotent semirings. We link the algebraic layer with concrete models of programs based on languages and execution…

Logic in Computer Science · Computer Science 2013-12-05 Alasdair Armstrong , Victor B. F. Gomes , Georg Struth

The verification of security protocols is essential, in order to ensure the absence of potential attacks. However, verification results are only valid with respect to the assumptions under which the verification was performed. These…

Logic in Computer Science · Computer Science 2024-11-12 Nisansala P. Yatapanage , Cliff B. Jones

High assurance of information-flow security (IFS) for concurrent systems is challenging. A promising way for formal verification of concurrent systems is the rely-guarantee method. However, existing compositional reasoning approaches for…

Software Engineering · Computer Science 2023-09-19 Yongwang Zhao , David Sanan , Fuyuan Zhang , Yang Liu

Linearizability is a commonly accepted notion of correctness for libraries of concurrent algorithms, and recent years have seen a number of proposals of program logics for proving it. Although these logics differ in technical details, they…

Programming Languages · Computer Science 2016-09-06 Artem Khyzha , Alexey Gotsman , Matthew Parkinson

In this paper, we present a probabilistic adaptation of an Assume/Guarantee contract formalism. For the sake of generality, we assume that the extended state machines used in the contracts and implementations define sets of runs on a given…

Performance · Computer Science 2009-04-20 Benoît Delahaye , Benoît Caillaud
‹ Prev 1 2 3 10 Next ›