English
Related papers

Related papers: Mover Logic: A Concurrent Program Logic for Reduct…

200 papers

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

Manufacturers of modern electronic devices are constantly attempting to implement additional features into ever-increasingly complex and performance demanding systems. This race has been historically driven by improvements in the…

Cryptography and Security · Computer Science 2022-07-20 Evan Tilley , Alexander Liebeskind , Rafael Asensio

Relational properties arise in many settings: relating two versions of a program that use different data representations, noninterference properties for security, etc. The main ingredient of relational verification, relating aligned pairs…

Logic in Computer Science · Computer Science 2016-11-29 Anindya Banerjee , David A. Naumann , Mohammad Nikouei

We describe a program logic for weak memory (also known as relaxed memory). The logic is based on Hoare logic within a thread, and rely/guarantee between threads. It is presented via examples, giving proofs of many weak-memory litmus tests.…

Logic in Computer Science · Computer Science 2016-11-07 Richard Bornat , Jade Alglave , Matthew Parkinson

Developers of low-level systems code providing core functionality for operating systems and kernels must address hardware-level features of modern multicore architectures. A particular feature is pipelined "out-of-order execution" of the…

Logic in Computer Science · Computer Science 2024-07-31 Robert J. Colvin , Ian J. Hayes , Scott Heiner , Peter Höfner , Larissa Meinicke , Roger C. Su

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

Logical atomicity has been widely accepted as a specification format for data structures in concurrent separation logic. While both lock-free and lock-based data structures have been verified against logically atomic specifications, most of…

Programming Languages · Computer Science 2023-04-28 Roshan Sharma , Shengyi Wang , Alexander Oey , Anastasiia Evdokimova , Lennart Beringer , William Mansky

Multithreaded programs generally leverage efficient and thread-safe concurrent objects like sets, key-value maps, and queues. While some concurrent-object operations are designed to behave atomically, each witnessing the atomic effects of…

Logic in Computer Science · Computer Science 2019-11-06 Siddharth Krishna , Michael Emmi , Constantin Enea , Dejan Jovanovic

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 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

Efficient implementations of concurrent objects such as atomic collections are essential to modern computing. Programming such objects is error prone: in minimizing the synchronization overhead between concurrent object invocations, one…

Programming Languages · Computer Science 2017-07-04 Ahmed Bouajjani , Constantin Enea , Chao Wang

Applying dynamic logics to program verifications is a challenge, because their axiomatic rules for regular expressions can be difficult to be adapted to different program models. We present a novel dynamic logic, called DLp, which supports…

Logic in Computer Science · Computer Science 2026-02-11 Yuanrui Zhang

This paper presents a program logic for reasoning about multithreaded Java-like programs with dynamic thread creation, thread joining and reentrant object monitors. The logic is based on concurrent separation logic. It is the first detailed…

Logic in Computer Science · Computer Science 2015-07-01 Christian Haack , Marieke Huisman , Clément Hurlin , Afshin Amighi

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

Commutativity reasoning based on Lipton's movers is a powerful technique for verification of concurrent programs. The idea is to define a program transformation that preserves a subset of the initial set of interleavings, which is sound…

Programming Languages · Computer Science 2026-01-21 Namratha Gangamreddypalli , Constantin Enea , Shaz Qadeer

Hoare-style program logics are a popular and effective technique for software verification. Relational program logics are an instance of this approach that enables reasoning about relationships between the execution of two or more programs.…

Programming Languages · Computer Science 2022-09-09 Robert Dickerson , Qianchuan Ye , Michael K. Zhang , Benjamin Delaware

Reinforcement Learning (RL) has emerged as a pivotal mechanism for enhancing the complex reasoning capabilities of Multimodal Large Language Models (MLLMs). However, prevailing paradigms typically rely on solitary rollout strategies where…

Computation and Language · Computer Science 2026-02-05 Lingzhuang Sun , Ruitong Liu , Yuxia Zhu , Xiaohan Xu , Jingxuan Wei , Xiangxiang Zhang , Bihui Yu , Wentao Zhang

We propose a general framework to allow: (a) specifying the operational semantics of a programming language; and (b) stating and proving properties about program correctness. Our framework is based on a many-sorted system of hybrid modal…

Logic in Computer Science · Computer Science 2025-12-01 Ioana Leustean , Natalia Moanga , Traian Florin Serbanuta
‹ Prev 1 2 3 10 Next ›