Certified mergeable replicated data types
Vimala Soundarapandian, Adharsh Kamath, Kartik Nagar, K. C. Sivaramakrishnan
摘要
Replicated data types (RDTs) are data structures that permit concurrent modification of multiple, potentially geodistributed, replicas without coordination between them. RDTs are designed in such a way that conflicting operations are eventually deterministically reconciled ensuring convergence. Constructing correct RDTs remains a difficult endeavour due to the complexity of reasoning about independently evolving states of the replicas. With the focus on the correctness of RDTs (and rightly so), existing approaches to RDTs are less efficient compared to their sequential counterparts in terms of time-and space-complexity of local operations. This is unfortunate since RDTs are often used in an localfirst setting where the local operations far outweigh remote communication.
In this paper, we present Peepul, a pragmatic approach to building and verifying efficient RDTs. To make reasoning about correctness easier, we cast RDTs in the mould of distributed version control system, and equip it with a three-way merge function for reconciling conflicting versions. Further, we go beyond just verifying convergence, and provide a methodology to verify arbitrarily complex specifications. We develop a replication-aware simulation relation to relate RDT specifications to their efficient purely functional implementations. We have developed Peepul as an F* library that discharges proof obligations to an SMT solver. The verified efficient RDTs are extracted as OCaml code and used in Irmin, a Git-like distributed database.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了每一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper3
- Katara: synthesizing CRDTs with verified liftingShadaj Laddad, Conor Power, Mae Milano, Alvin Cheung 等OOPSLA 2022 · 被引用 24 次
- Collaborative Text Editing with Eg-walker: Better, Faster, SmallerJoseph Gentle, Martin KleppmannEuroSys 2025 · 被引用 3 次
- Automatically Verifying Replication-Aware LinearizabilityVimala Soundarapandian, Kartik Nagar, Aseem Rastogi, K. C. SivaramakrishnanOOPSLA 2025
它引用的顶会 Paper3
- Verifying replicated data types with typeclass refinements in Liquid HaskellYiyun Liu, James Parker, Patrick Redmond, Lindsey Kuper 等OOPSLA 2020 · 被引用 24 次
- ECROs: building global scale systems from sequential codeKevin De Porre, Carla Ferreira, Nuno M. Preguiça, Elisa Gonzalez BoixOOPSLA 2021 · 被引用 15 次
- Semantics, Specification, and Bounded Verification of Concurrent Libraries in Replicated SystemsKartik Nagar, Prasita Mukherjee, Suresh JagannathanCAV 2020 · 被引用 4 次
相关 Paper
- Type-Checking CRDT ConvergenceGeorge Zakhour, Pascal Weisenburger, Guido SalvaneschiPLDI 2023 · 被引用 16 次
- Composing CRDTs Convergent by ConstructionAlexander Städing Dominguez, George Zakhour, Pascal Weisenburger, Guido SalvaneschiOOPSLA 2026
- Modular verification of op-based CRDTs in separation logicAbel Nieto, Léon Gondelman, Alban Reynaud, Amin Timany 等OOPSLA 2022 · 被引用 16 次
- Abstraction for conflict-free replicated data typesHongjin Liang, Xinyu FengPLDI 2021 · 被引用 9 次
- Keep CALM and CRDT OnShadaj Laddad, Conor Power, Mae Milano, Alvin Cheung 等VLDB 2023 · 被引用 13 次
