English
Related papers

Related papers: Decoupling Lock-Free Data Structures from Memory R…

200 papers

Runtime verification is the process of verifying critical behavioral properties in big complex systems, where formal verification is not possible due to state space explosion. There have been several attempts to design efficient algorithms…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-04-07 M. Ali Dorosty , Fathiyeh Faghih , Ehsan Khamespanah

The lock is a building-block synchronization primitive that enables mutually exclusive access to shared data in shared-memory parallel programs. Mutual exclusion is typically achieved by guarding the code that accesses the shared data with…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-04-25 Vivek Shahare , Milind Chabbi , Nikhil Hegde

We present verification methods for logic programs with delay declarations. The verified properties are termination and freedom from errors related to built-ins. Concerning termination, we present two approaches. The first approach tries to…

Logic in Computer Science · Computer Science 2009-09-25 Jan-Georg Smaus , Patricia M. Hill , Andy King

It is often difficult to write code that you can ensure will be executed in the right order when programing for parallel compute tasks. Due to the way that today's parallel compute hardware, primarily Graphical Processing Units (GPUs),…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-03-13 Andrew Osterhout , Ganesh Gopalakrishnan

The overall problem addressed in this paper is the long-standing problem of program correctness, and in particular programs that describe systems of parallel executing processes. We propose a new method for proving correctness of parallel…

Programming Languages · Computer Science 2023-02-10 Frank S. de Boer , Einar Broch Johnsen , Violet Ka I Pun , Silvia Lizeth Tapia Tarifa

Maintaining multiple replicas of data is crucial to achieving scalability, availability and low latency in distributed applications. Conflict-free Replicated Data Types (CRDTs) are important building blocks in this domain because they are…

Programming Languages · Computer Science 2019-05-15 Kartik Nagar , Suresh Jagannathan

Stack-based memory corruption vulnerabilities have long been exploited by attackers to execute arbitrary code or perform unauthorized memory operations. Various defense mechanisms have been introduced to mitigate stack memory errors, but…

Cryptography and Security · Computer Science 2025-03-24 Lei Chong

Dynamic data race detectors are indispensable for flagging concurrency errors in software, but their high runtime overhead limits their adoption. This overhead stems primarily from pervasive instrumentation of memory accesses - a…

Programming Languages · Computer Science 2025-12-08 Alexey Paznikov , Andrey Kogutenko , Yaroslav Osipov , Michael Schwarz , Umang Mathur

Lock-free data structures are an important tool for the development of concurrent programs as they provide scalability, low latency and avoid deadlocks, livelocks and priority inversion. However, they require some sort of additional support…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-02-14 Pedro Moreno , Ricardo Rocha

Data replication is crucial for enabling fault tolerance and uniform low latency in modern decentralized applications. Replicated Data Types (RDTs) have emerged as a principled approach for developing replicated implementations of basic…

Programming Languages · Computer Science 2025-02-28 Vimala Soundarapandian , Kartik Nagar , Aseem Rastogi , KC Sivaramakrishnan

Data replication technologies enable efficient and highly-available data access, thus gaining more and more interests in both the academia and the industry. However, data replication introduces the problem of data consistency. Modern…

Distributed, Parallel, and Cluster Computing · Computer Science 2013-12-02 Hengfeng Wei , Marzio De Biasi , Yu Huang , Jiannong Cao , Jian Lu

Convex relaxations have emerged as a promising approach for verifying desirable properties of neural networks like robustness to adversarial perturbations. Widely used Linear Programming (LP) relaxations only work well when networks are…

Automated verification of security protocols based on dynamic root of trust, typically relying on protected hardware such as TPM, involves several challenges that we address in this paper. We model the semantics of trusted computing…

Cryptography and Security · Computer Science 2018-07-24 Sergiu Bursuc , Christian Johansen , Shiwei Xu

We consider the problem of automating the verification of distributed control software relying on publish-subscribe middleware. In this scenario, the main challenge is that software correctness depends intrinsically on correct usage of…

Robotics · Computer Science 2014-11-10 Ali Khalili , Lorenzo Natale , Armando Tacchella

Most automated program verifiers for separation logic use either symbolic execution or verification condition generation to extract proof obligations, which are then handed over to an SMT solver. Existing verification algorithms are…

Programming Languages · Computer Science 2024-05-28 Marco Eilers , Malte Schwerhoff , Peter Müller

The vast number of interleavings that a concurrent program can have is typically identified as the root cause of the difficulty of automatic analysis of concurrent software. Weak memory is generally believed to make this problem even…

Logic in Computer Science · Computer Science 2013-01-09 Jade Alglave , Daniel Kroening , Michael Tautschnig

In this paper, we propose a generic concurrent directed graph (for shared memory architecture) that is concurrently being updated by threads adding/deleting vertices and edges. The graph is constructed by the composition of the well known…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-11-01 Sathya Peri , Muktikanta Sa , Nandini Singhal

Dynamic race detection is a highly effective runtime verification technique for identifying data races by instrumenting and monitoring concurrent program runs. However, standard dynamic race detection is incompatible with practical weak…

Programming Languages · Computer Science 2025-04-25 Roy Margalit , Michalis Kokologiannakis , Shachar Itzhaky , Ori Lahav

We study the problem of constructing concurrent objects in a setting where $P$ processes run in parallel and interact through a shared memory that is subject to write contention. Our goal is to transform hardware primitives that are subject…

Data Structures and Algorithms · Computer Science 2026-04-17 Michael A. Bender , Guy E. Blelloch , Martin Farach-Colton , Yang Hu , Rob Johnson , Rotem Oshman , Renfei Zhou

Extensive research on formal verification of machine learning systems indicates that learning from data alone often fails to capture underlying background knowledge, such as specifications implicitly available in the data. Various neural…

Logic in Computer Science · Computer Science 2025-03-17 Thomas Flinkow , Barak A. Pearlmutter , Rosemary Monahan