English
Related papers

Related papers: Rely-guarantee Reasoning about Concurrent Memory M…

200 papers

Memory consistency models (MCMs) are at the heart of concurrent programming. They represent the behaviour of concurrent programs at the chip level. To test these models small program snippets called litmus test are generated, which show…

Programming Languages · Computer Science 2018-08-30 Ruth Hoffmann , Özgür Akgün , Susmit Sarkar

Concurrent programming under weak memory concurrency faces substantial challenges to ensure correctness due to program behaviors that cannot be explained by thread interleaving, a.k.a. sequential consistency. While several program logics…

Logic in Computer Science · Computer Science 2026-04-24 Ömer Şakar , Soham Chakraborty , Marieke Huisman , Anton Wijs

Memory safety defects pose a major threat to software reliability, enabling cyberattacks, outages, and crashes. To mitigate these risks, organizations adopt Compositional Bounded Model Checking (BMC), using unit proofs to formally verify…

Software Engineering · Computer Science 2025-03-19 Paschal C. Amusuo , Owen Cochell , Taylor Le Lievre , Parth V. Patil , Aravind Machiry , James C. Davis

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

We present a general framework for specifying and verifying persistent libraries, that is, libraries of data structures that provide some persistency guarantees upon a failure of the machine they are executing on. Our framework enables…

Programming Languages · Computer Science 2023-06-05 Léo Stefanesco , Azalea Raad , Viktor Vafeiadis

Protecting data in memory from attackers continues to be a concern in computing systems. CHERI is a promising approach to achieve such protection, by providing and enforcing fine-grained memory protection directly in the hardware. Creating…

Memory consistency model (MCM) issues in out-of-order-issue microprocessor-based shared-memory systems are notoriously non-intuitive and a source of hardware design bugs. Prior hardware verification work is limited to in-order-issue…

Hardware Architecture · Computer Science 2024-04-05 Gokulan Ravi , Xiaokang Qiu , Mithuna Thottethodi , T. N. Vijaykumar

Designing and validating efficient cache-coherent memory subsystems is a critical yet complex task in the development of modern multi-core system-on-chip architectures. Rhea is a unified framework that streamlines the design and…

Hardware Architecture · Computer Science 2026-03-10 Davide Zoni , Andrea Galimberti , Adriano Guarisco

The verification and validation of cyber-physical systems is known to be a difficult problem due to the different modeling abstractions used for control components and for software components. A recent trend to address this difficulty is to…

Logic in Computer Science · Computer Science 2010-10-28 Pritam Roy , Paulo Tabuada , Rupak Majumdar

Persistent memory provides high-performance data persistence at main memory. Memory writes need to be performed in strict order to satisfy storage consistency requirements and enable correct recovery from system crashes. Unfortunately,…

Hardware Architecture · Computer Science 2017-05-11 Youyou Lu , Jiwu Shu , Long Sun , Onur Mutlu

Runtime verification offers scalable solutions to improve the safety and reliability of systems. However, systems that require verification or monitoring by a third party to ensure compliance with a specification might contain sensitive…

Cryptography and Security · Computer Science 2025-05-15 Thomas A. Henzinger , Mahyar Karimi , K. S. Thejaswini

This paper presents a safe robust policy iteration (SR-PI) algorithm to design controllers with satisficing (good enough) performance and safety guarantee. This is in contrast to standard PI-based control design methods with no safety…

Systems and Control · Electrical Eng. & Systems 2020-09-16 Yuzhen Han , Hamidreza Modares

In previous work, summarized in this paper, we proposed an operation of parallel composition for rewriting-logic theories, allowing compositional specification of systems and reusability of components. The present paper focuses on…

Logic in Computer Science · Computer Science 2023-08-01 Óscar Martín , Alberto Verdejo , Narciso Martí-Oliet

Deductive verification of concurrent programs under weak memory has thus far been limited to simple programs over a monolithic state space. For scalabiility, we also require modular techniques with verifiable library abstractions. This…

Programming Languages · Computer Science 2020-12-29 Sadegh Dalvandi , Brijesh Dongol

Memory safety remains a critical and widely violated property in reality. Numerous defense techniques have been proposed and developed but most of them are not applied or enabled by default in production-ready environment due to their…

Cryptography and Security · Computer Science 2021-11-30 Wei Song , Jiameng Ying , Sihao Shen , Boya Li , Hao Ma , Peng Liu

We propose an approach for modular verification of programs that use relaxed-consistency atomic memory access primitives and fences. The approach is sufficient for verifying the core of Rust's Atomic Reference Counting (ARC) algorithm. We…

Programming Languages · Computer Science 2025-09-30 Bart Jacobs , Justus Fasse

The disastrous vulnerabilities in smart contracts sharply remind us of our ignorance: we do not know how to write code that is secure in composition with malicious code. Information flow control has long been proposed as a way to achieve…

Cryptography and Security · Computer Science 2023-07-21 Ethan Cecchetti , Siqiu Yao , Haobin Ni , Andrew C. Myers

Trusting software systems, particularly autonomous ones, is challenging. To address this, formal verification techniques can ensure these systems behave as expected. Runtime Verification (RV) is a leading, lightweight method for verifying…

Formal Languages and Automata Theory · Computer Science 2024-08-22 Angelo Ferrando , Vadim Malvone

We propose a new formal criterion for evaluating secure compilation schemes for unsafe languages, expressing end-to-end security guarantees for software components that may become compromised after encountering undefined behavior---for…

Confidential computing is a key technology for isolating high-assurance applications from the large amounts of untrusted code typical in modern systems. Existing confidential computing systems cannot be certified for use in critical…

Cryptography and Security · Computer Science 2023-11-02 Wojciech Ozga , Guerney D. H. Hunt , Michael V. Le , Elaine R. Palmer , Avraham Shinnar