Automatically Verifying Replication-aware Linearizability
Vimala Soundarapandian, Kartik Nagar, Aseem Rastogi, KC, Sivaramakrishnan

TL;DR
This paper introduces an automated method for verifying replication-aware linearizability in mergeable replicated data types, enhancing correctness guarantees for distributed systems with complex data structures.
Contribution
It presents a novel algebraic verification technique and a bottom-up linearization method applicable to MRDTs and CRDTs, including complex and novel data types.
Findings
Successfully verified complex MRDT and CRDT implementations
Developed algebraic properties beyond standard commutativity, associativity, and idempotence
Applied approach to a novel JSON MRDT
Abstract
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 data structures such as counter, flag, set, map, etc. While the correctness of RDTs is generally specified using the notion of strong eventual consistency--which guarantees that replicas that have received the same set of updates would converge to the same state--a more expressive specification which relates the converged state to updates received at a replica would be more beneficial to RDT users. Replication-aware linearizability is one such specification, which requires all replicas to always be in a state which can be obtained by linearizing the updates received at the replica. In this work, we develop a novel fully automated technique for verifying…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsDistributed systems and fault tolerance · Radiation Effects in Electronics · Parallel Computing and Optimization Techniques
