Export Citations
Save this search
Please login to be able to save your searches and receive alerts for new content matching your search criteria.
- research-articleJune 2024
Verification under Intel-x86 with Persistency
Proceedings of the ACM on Programming Languages (PACMPL), Volume 8, Issue PLDIArticle No.: 195, Pages 1189–1212https://doi.org/10.1145/3656425The full semantics of the Intel-x86 architecture has been defined by Raad et al in POPL 2022, extending the earlier formalization based on the TSO memory model incorporating persistency. This new semantics involves an intricate combination of the SC, TSO,...
Dynamic Partial Order Reduction for Checking Correctness against Transaction Isolation Levels
Proceedings of the ACM on Programming Languages (PACMPL), Volume 7, Issue PLDIArticle No.: 129, Pages 565–590https://doi.org/10.1145/3591243Modern applications, such as social networking systems and e-commerce platforms are centered around using large-scale databases for storing and retrieving data. Accesses to the database are typically enclosed in transactions that allow computations on ...
- ArticleJuly 2023
Comparing Causal Convergence Consistency Models
AbstractIn distributed databases, the CAP theorem establishes that a distributed storage system can only ensure two out of three properties: strong data consistency (i.e., reads returning the most recent writes), availability, or partition tolerance. ...
- ArticleDecember 2022
Automated Synthesis of Asynchronizations
AbstractAsynchronous programming is widely adopted for building responsive and efficient software, and modern languages such as C# provide async/await primitives to simplify the use of asynchrony. In this paper, we propose an approach for refactoring a ...
-
- research-articleOctober 2022
Checking causal consistency of distributed databases
Computing (CMPT), Volume 104, Issue 10Oct 2022, Pages 2181–2201https://doi.org/10.1007/s00607-021-00911-3AbstractThe CAP Theorem shows that (strong) consistency, availability, and partition tolerance are impossible to be ensured together. Causal consistency is one of the weak consistency models that can be implemented to ensure availability and partition ...
- ArticleAugust 2022
Data-driven Numerical Invariant Synthesis with Automatic Generation of Attributes
AbstractWe propose a data-driven algorithm for numerical invariant synthesis and verification. The algorithm is based on the ICE-DT schema for learning decision trees from samples of positive and negative states and implications corresponding to program ...
- ArticleMay 2022
Varda: A Framework for Compositional Distributed Programming
AbstractA distributed system is made of interacting components. The current manual, ad-hoc approach to composing them cannot ensure that the composition is correct, and makes it difficult to control performance. The former issue requires reasoning over a ...
- ArticleMay 2022
Verifying Reachability for TSO Programs with Dynamic Thread Creation
AbstractThe verification of reachability properties for programs under weak memory models is a hard problem, even undecidable in some cases. The decidability of this problem has been investigated so far in the case of static programs where the number of ...
- ArticleMarch 2021
Checking Robustness Between Weak Transactional Consistency Models
AbstractConcurrent accesses to databases are typically encapsulated in transactions in order to enable isolation from other concurrent computations and resilience to failures. Modern databases provide transactions with various semantics corresponding to ...
- research-articleJanuary 2021
Deciding reachability under persistent x86-TSO
Proceedings of the ACM on Programming Languages (PACMPL), Volume 5, Issue POPLArticle No.: 56, Pages 1–32https://doi.org/10.1145/3434337We address the problem of verifying the reachability problem in programs running under the formal model Px86 defined recently by Raad et al. in POPL'20 for the persistent Intel x86 architecture. We prove that this problem is decidable. To achieve that, ...
- ArticleOctober 2020
Boosting Sequential Consistency Checking Using Saturation
Automated Technology for Verification and AnalysisOct 2020, Pages 360–376https://doi.org/10.1007/978-3-030-59152-6_20AbstractWe address the problem of checking that an execution of a shared memory concurrent program is sequentially consistent (SC). This problem is NP-hard due to the necessity of finding a total order between the write operations that induces an acyclic ...
- ArticleJune 2020
On the State Reachability Problem for Concurrent Programs Under Power
- Parosh Aziz Abdulla,
- Mohamed Faouzi Atig,
- Ahmed Bouajjani,
- Egor Derevenetc,
- Carl Leonardsson,
- Roland Meyer
AbstractWe consider the problem of safety verification, formalized as control-state reachability, for concurrent programs running on the Power architecture. Our main result shows that safety verification under Power is undecidable for programs with just ...
- ArticleJanuary 2020
Formalizing and Checking Multilevel Consistency
Verification, Model Checking, and Abstract InterpretationJan 2020, Pages 379–400https://doi.org/10.1007/978-3-030-39322-9_18AbstractDevelopers of distributed data-stores must trade consistency for performance and availability. Such systems may in fact implement weak consistency models, e.g., causal consistency or eventual consistency, corresponding to different costs and ...
- editorialSeptember 2019
- research-articleAugust 2019
Abstract semantic diffing of evolving concurrent programs
Formal Methods in System Design (FMSD), Volume 54, Issue 1Aug 2019, Pages 4–26https://doi.org/10.1007/s10703-018-0322-2AbstractWe present an approach for comparing two closely related concurrent programs, whose goal is to give feedback about interesting differences without relying on user-provided assertions. This approach compares two programs in terms of cross-thread ...
- ArticleJune 2019
Checking Causal Consistency of Distributed Databases
AbstractCausal consistency is one of the strongest models that can be implemented to ensure availability and partition tolerance in distributed systems. In this paper, we propose a tool to check automatically the conformance of distributed/concurrent ...
- research-articleAugust 2018
On reducing linearizability to state reachability
Information and Computation (ICOM), Volume 261, Issue P2Aug 2018, Pages 383–400https://doi.org/10.1016/j.ic.2018.02.014AbstractEfficient implementations of atomic objects such as concurrent stacks and queues are especially susceptible to programming errors, and necessitate automatic verification. Unfortunately their correctness criteria – linearizability with ...
- ArticleApril 2017
Verifying Robustness of Event-Driven Asynchronous Programs Against Concurrency
AbstractWe define a correctness criterion, called robustness against concurrency, for a class of event-driven asynchronous programs that are at the basis of modern UI frameworks in Android, iOS, and Javascript. A program is robust when all possible ...
- ArticleApril 2017
Context-Bounded Analysis for POWER
Proceedings, Part II, of the 23rd International Conference on Tools and Algorithms for the Construction and Analysis of Systems - Volume 10206April 2017, Pages 56–74https://doi.org/10.1007/978-3-662-54580-5_4We propose an under-approximate reachability analysis algorithm for programs running under the POWER memory model, in the spirit of the work on context-bounded analysis intitiated by Qadeer et al. in 2005 for detecting bugs in concurrent programs ...