Predictive monitoring against pattern regular languages
While current bug detection techniques for concurrent software focus on unearthing low-
level issues such as data races or deadlocks, they often fall short of discovering more …
level issues such as data races or deadlocks, they often fall short of discovering more …
Plume: Efficient and complete black-box checking of weak isolation levels
Modern databases embrace weak isolation levels to cater for highly available transactions.
However, weak isolation bugs have recently manifested in many production databases. This …
However, weak isolation bugs have recently manifested in many production databases. This …
Inductive diagrams for causal reasoning
J Castello, P Redmond, L Kuper - Proceedings of the ACM on …, 2024 - dl.acm.org
The Lamport diagram is a pervasive and intuitive tool for informal reasoning about “happens-
before” relationships in a concurrent system. However, traditional axiomatic formalizations of …
before” relationships in a concurrent system. However, traditional axiomatic formalizations of …
Dynamic race detection with O (1) samples
Happens before-based dynamic analysis is the go-to technique for detecting data races in
large scale software projects due to the absence of false positive reports. However, such …
large scale software projects due to the absence of false positive reports. However, such …
Optimistic Prediction of Synchronization-Reversal Data Races
Z Shi, U Mathur, A Pavlogiannis - Proceedings of the IEEE/ACM 46th …, 2024 - dl.acm.org
Dynamic data race detection has emerged as a key technique for ensuring reliability of
concurrent software in practice. However, dynamic approaches can often miss data races …
concurrent software in practice. However, dynamic approaches can often miss data races …
Rooting for Efficiency: Mechanised Reasoning about Array-Based Trees in Separation Logic
Array-based encodings of tree structures are often preferable to linked or abstract data type-
based representations for efficiency reasons. Compared to the more traditional encodings …
based representations for efficiency reasons. Compared to the more traditional encodings …
CSSTs: A Dynamic Data Structure for Partial Orders in Concurrent Execution Analysis
Dynamic analyses are a standard approach to analyzing and testing concurrent programs.
Such techniques observe program traces σ and analyze them to infer the presence or …
Such techniques observe program traces σ and analyze them to infer the presence or …
Building a Verifiable Logical Clock for P2P Networks
G Sun, T Tao, Y Guo, MY Hu, J Li - arXiv preprint arXiv:2405.13349, 2024 - arxiv.org
Logical clocks are a fundamental tool to establish causal ordering of events in a distributed
system. They have been applied in weakly consistent storage systems, causally ordered …
system. They have been applied in weakly consistent storage systems, causally ordered …
Sound Concurrent Traces for Online Monitoring Technical Report
Monitoring concurrent programs typically rely on collecting traces to abstract program
executions. However, existing approaches targeting general behavioral properties are either …
executions. However, existing approaches targeting general behavioral properties are either …
Chrono: A Peer-to-Peer Network with Verifiable Causality
MH Yiqing, G Sun, A Fu, A Zhu, J Li - arXiv preprint arXiv:2310.08373, 2023 - arxiv.org
Logical clocks are a fundamental tool to establish causal ordering of events in a distributed
system. They have been used as the building block in weakly consistent storage systems …
system. They have been used as the building block in weakly consistent storage systems …