English
Related papers

Related papers: Atomicity Checking in Linear Time using Vector Clo…

200 papers

Vector clock algorithms are basic wait-free building blocks that facilitate causal ordering of events. As wait-free algorithms, they are guaranteed to complete their operations within a finite number of steps. Stabilizing algorithms allow…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-12-25 Iosif Salem , Elad Michael Schiller

Most model checkers provide a useful simulation mode, that allows users to explore the set of possible behaviours by interactively picking at each state which event to execute next. Traditionally this simulation mode cannot take into…

Software Engineering · Computer Science 2019-12-24 Julien Brunel , David Chemouil , Alcino Cunha , Nuno Macedo

Tracking causality (or happened-before relation) between events is useful for many applications such as debugging and recovery from failures. Consider a concurrent system with $n$ threads and $m$ objects. For such systems, either a vector…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-01-23 Xiong Zheng , Vijay Garg

This paper revisits the fundamental problem of monitoring the linearizability of concurrent stacks, queues, sets, and multisets. Given a history of a library implementing one of these abstract data types, the monitoring problem is to answer…

Programming Languages · Computer Science 2025-09-23 Parosh Aziz Abdulla , Samuel Grahn , Bengt Jonsson , Shankaranarayanan Krishna , Om Swostik Mishra

The problem of verifying multi-threaded execution against the memory consistency model of a processor is known to be an NP hard problem. However polynomial time algorithms exist that detect almost all failures in such execution. These are…

Hardware Architecture · Computer Science 2007-05-23 Amitabha Roy , Stephan Zeisset , Charles J. Fleckenstein , John C. Huang

Currently, the most accurate and stable clocks use optical interrogation of either a single ion or an ensemble of neutral atoms confined in an optical lattice. Here, we demonstrate a new optical clock system based on an array of…

Ethereum smart contracts operate in a concurrent environment where multiple transactions can be submitted simultaneously. However, the Ethereum Virtual Machine (EVM) enforces sequential execution of transactions within each block to prevent…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-07-23 Atefeh Zareh Chahoki , Marco Roveri

To maximize the information gained from a single execution when verifying a concurrent system, one can derive all concurrency-aware equivalent executions and check them against linear specifications. This paper offers an alternative…

Logic in Computer Science · Computer Science 2025-07-08 Martin Leucker

Transactions simplify concurrent programming by enabling computations on shared data that are isolated from other concurrent computations and are resilient to failures. Modern databases provide different consistency models for transactions…

Databases · Computer Science 2019-08-14 Ranadeep Biswas , Constantin Enea

This paper concerns the verification of continuous-time polynomial spline trajectories against linear temporal logic specifications (LTL without 'next'). Each atomic proposition is assumed to represent a state space region described by a…

Logic in Computer Science · Computer Science 2022-01-24 Daniel Selvaratnam , Michael Cantoni , J. M. Davoren , Iman Shames

Transactional access to databases is an important abstraction allowing programmers to consider blocks of actions (transactions) as executing in isolation. The strongest consistency model is {\em serializability}, which ensures the atomicity…

Logic in Computer Science · Computer Science 2019-05-23 Sidi Mohamed Beillahi , Ahmed Bouajjani , Constantin Enea

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

This paper introduces a novel paradigm for the analysis and verification of concurrent programs -- the Singularity Theory. We model the execution space of a concurrent program as a branched topological space, where program states are points…

Programming Languages · Computer Science 2025-10-30 Di Zhang

Multi-core architectures can be leveraged to allow independent processes to run in parallel. However, due to resources shared across cores, such as caches, distinct processes may interfere with one another, e.g. affecting execution time.…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-09-17 Dan Iorga , Tyler Sorensen , Alastair F. Donaldson

We propose a memory-model-aware static program analysis method for accurately analyzing the behavior of concurrent software running on processors with weak consistency models such as x86-TSO, SPARC-PSO, and SPARC-RMO. At the center of our…

Programming Languages · Computer Science 2017-09-29 Markus Kusano , Chao Wang

A block graph is a graph in which every block is a complete graph. Let $G$ be a block graph and let $A(G)$ be its (0,1)-adjacency matrix. Graph $G$ is called nonsingular (singular) if $A(G)$ is nonsingular (singular). Characterizing…

Data Structures and Algorithms · Computer Science 2018-11-21 Ranveer Singh , Naomi Shaked-Monderer , Avi Berman

Dynamic techniques are a scalable and effective way to analyze concurrent programs. Instead of analyzing all behaviors of a program, these techniques detect errors by focusing on a single program execution. Often a crucial step in these…

Logic in Computer Science · Computer Science 2025-09-16 Umang Mathur , Andreas Pavlogiannis , Hünkar Can Tunç , Mahesh Viswanathan

Concurrent systems are notoriously difficult to validate: subtle bugs may only manifest under rare thread interleavings, and existing tools often require intrusive instrumentation or unrealistic execution models. We present OmniLink, a new…

Software Engineering · Computer Science 2026-01-21 Finn Hackett , Evan Wrench , Peter Macko , A. Jesse Jiryu Davis , Yuanhao Wei , Ivan Beschastnikh

Periodicity detection is an important task in time series analysis, but still a challenging problem due to the diverse characteristics of time series data like abrupt trend change, outlier, noise, and especially block missing data. In this…

Machine Learning · Computer Science 2023-03-08 Qingsong Wen , Linxiao Yang , Liang Sun

Timing side-channel attacks exploit variations in program execution time to recover sensitive information. Cryptographic implementations are especially vulnerable to these attacks, since even small timing differences in operations such as…

Cryptography and Security · Computer Science 2026-04-21 Nges Brian Njungle , Edwin P. Kayang , Mishel J. Paul , Michel A. Kinsy