English
Related papers

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

200 papers

We propose a new formal criterion for secure compilation, providing strong security guarantees for components written in unsafe, low-level languages with C-style undefined behavior. Our criterion goes beyond recent proposals, which protect…

Autonomous systems must sustain justified confidence in their correctness and safety across their operational lifecycle-from design and deployment through post-deployment evolution. Traditional assurance methods often separate…

Software Engineering · Computer Science 2025-11-20 Dhaminda B. Abeywickrama , Michael Fisher , Frederic Wheeler , Louise Dennis

Software engineering of modular robotic systems is a challenging task, however, verifying that the developed components all behave as they should individually and as a whole presents its own unique set of challenges. In particular, distinct…

Software Engineering · Computer Science 2020-12-04 Rafael C. Cardoso , Louise A. Dennis , Marie Farrell , Michael Fisher , Matt Luckcuck

Memory management in lock-free data structures remains a major challenge in concurrent programming. Design techniques including read-copy-update (RCU) and hazard pointers provide workable solutions, and are widely used to great effect.…

Programming Languages · Computer Science 2019-02-20 Ismail Kuru , Colin S. Gordon

Production distributed systems are challenging to formally verify, in particular when they are based on distributed protocols that are not rigorously described or fully understood. In this paper, we derive models and properties for two core…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-01-01 Edgar Pek , Pranav Garg , Muntasir Raihan Rahman , Karl Palmskog , Indranil Gupta , P. Madhusudan

Modern SoCs are heterogeneous parallel systems comprised of components developed by distinct teams and possibly even different vendors. The memory consistency model (MCM) of processors in such SoCs specifies the ordering rules which…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-04-17 Yatin A. Manerkar , Daniel Lustig , Margaret Martonosi

PHOENIXOS (PHOS) is the first OS service that can concurrently checkpoint and restore (C/R) GPU processes--a fundamental capability for critical tasks such as fault tolerance, process migration, and fast startup. While concurrent C/R is…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-09-03 Xingda Wei , Zhuobin Huang , Tianle Sun , Yingyi Hao , Rong Chen , Mingcong Han , Jinyu Gu , Haibo Chen

Concurrent separation logic with fractional permissions (CSLPerm) provides a promising reasoning system to verify most complex sequential and concurrent fine-grained programs. The logic with strong and weak separating conjunctions offers a…

Logic in Computer Science · Computer Science 2025-10-07 Quang Loc Le

Weak-memory models are standard formal specifications of concurrency across hardware, programming languages, and distributed systems. A fundamental computational problem is consistency testing: is the observed execution of a concurrent…

Programming Languages · Computer Science 2023-11-16 Soham Chakraborty , Shankaranarayanan Krishna , Umang Mathur , Andreas Pavlogiannis

While most approaches in formal methods address system correctness, ensuring robustness has remained a challenge. In this paper we present and study the logic rLTL which provides a means to formally reason about both correctness and…

Logic in Computer Science · Computer Science 2022-01-20 Tzanis Anevlavis , Matthew Philippe , Daniel Neider , Paulo Tabuada

Memory persistency models provide a foundation for persistent programming by specifying which (and when) writes to non-volatile memory (NVM) become persistent. Memory persistency models for the Intel-x86 and Arm architectures have been…

Programming Languages · Computer Science 2024-05-30 Vasileios Klimis , Alastair F. Donaldson , Viktor Vafeiadis , John Wickerson , Azalea Raad

Runtime verification is checking whether a system execution satisfies or violates a given correctness property. A procedure that automatically, and typically on the fly, verifies conformance of the system's behavior to the specified…

Software Engineering · Computer Science 2013-03-06 Mikhail Chupilko , Alexander Kamkin

Embedded systems in safety-critical environments are continuously required to deliver more performance and functionality, while expected to provide verified safety guarantees. Nonetheless, platform-wide software verification (required for…

Systems and Control · Computer Science 2017-05-09 Fardin Abdi , Renato Mancuso , Rohan Tabish , Marco Caccamo

VeriFast is a leading tool for the modular formal verification of correctness properties of single-threaded and multi-threaded C and Rust programs. It verifies a program by symbolically executing each function in isolation, exploiting…

Programming Languages · Computer Science 2026-01-21 Bart Jacobs

We present algorithms for checking and enforcing robustness of concurrent programs against the Total Store Ordering (TSO) memory model. A program is robust if all its TSO computations correspond to computations under the Sequential…

Programming Languages · Computer Science 2012-10-30 Ahmed Bouajjani , Egor Derevenetc , Roland Meyer

Conflict-free replicated data types (CRDTs) and the local-first concept are increasingly employed not only in small-scale collaboration systems among few users who trust each other, but also in large-scale systems, like Matrix for instant…

Distributed, Parallel, and Cluster Computing · Computer Science 2026-04-28 Florian Jacob , Johanna Stuber , Hannes Hartenstein

Geo-replicated systems provide a number of desirable properties such as globally low latency, high availability, scalability, and built-in fault tolerance. Unfortunately, programming correct applications on top of such systems has proven to…

Programming Languages · Computer Science 2025-02-27 Kartik Nagar , Prasita Mukherjee , Suresh Jagannathan

We formally verify an open-source hardware implementation of physical memory protection (PMP) in RISC-V, which is a standard feature used for memory isolation in security critical systems such as the Keystone trusted execution environment.…

Cryptography and Security · Computer Science 2022-11-07 Kevin Cheang , Cameron Rasmussen , Dayeol Lee , David W. Kohlbrenner , Krste Asanović , Sanjit A. Seshia

Existing methods for verifying access control policies require the policy to be complete and fully determined before verification can proceed, but in practice policies are developed iteratively, composed from independently maintained…

Cryptography and Security · Computer Science 2026-03-16 Alexander V. Gheorghiu

Authenticated data structures allow untrusted third parties to carry out operations which produce proofs that can be used to verify an operation's output. Such data structures are challenging to develop and implement correctly. This paper…

Logic in Computer Science · Computer Science 2025-01-22 Simon Oddershede Gregersen , Chaitanya Agarwal , Joseph Tassarotti