Table of Contents
Fetching ...

Semantic Conflict Model for Collaborative Data Structures

Georgii Semenov, Vitaly Aksenov

TL;DR

This paper introduces a conflict model for collaborative data structures that enables explicit, local-first conflict resolution without central coordination and demonstrates the approach on collaborative registers, including an explicit formulation of the Last-Writer-Wins Register and a multi-register entity supporting semi-automatic reconciliation.

Abstract

Digital collaboration systems support asynchronous work over replicated data, where conflicts arise when concurrent operations cannot be unambiguously integrated into a shared history. While Conflict-Free Replicated Data Types (CRDTs) ensure convergence through built-in conflict resolution, this resolution is typically implicit and opaque to users, whereas existing reconciliation techniques often rely on centralized coordination. This paper introduces a conflict model for collaborative data structures that enables explicit, local-first conflict resolution without central coordination. The model identifies conflicts using semantic dependencies between operations and resolves them by rebasing conflicting operations onto a reconciling operation via a three-way merge over a replicated journal. We demonstrate our approach on collaborative registers, including an explicit formulation of the Last-Writer-Wins Register and a multi-register entity supporting semi-automatic reconciliation.

Semantic Conflict Model for Collaborative Data Structures

TL;DR

This paper introduces a conflict model for collaborative data structures that enables explicit, local-first conflict resolution without central coordination and demonstrates the approach on collaborative registers, including an explicit formulation of the Last-Writer-Wins Register and a multi-register entity supporting semi-automatic reconciliation.

Abstract

Digital collaboration systems support asynchronous work over replicated data, where conflicts arise when concurrent operations cannot be unambiguously integrated into a shared history. While Conflict-Free Replicated Data Types (CRDTs) ensure convergence through built-in conflict resolution, this resolution is typically implicit and opaque to users, whereas existing reconciliation techniques often rely on centralized coordination. This paper introduces a conflict model for collaborative data structures that enables explicit, local-first conflict resolution without central coordination. The model identifies conflicts using semantic dependencies between operations and resolves them by rebasing conflicting operations onto a reconciling operation via a three-way merge over a replicated journal. We demonstrate our approach on collaborative registers, including an explicit formulation of the Last-Writer-Wins Register and a multi-register entity supporting semi-automatic reconciliation.
Paper Structure (14 sections, 2 theorems, 2 equations, 7 figures)

This paper contains 14 sections, 2 theorems, 2 equations, 7 figures.

Key Result

theorem 1

A graph data type, equivalent to the entailment graph $G_{\vdash}$, which supports operations $add(\Gamma, o)$ (adding a new vertex $o$ with its incoming edges $\Gamma$) and $rebase(o, \hat{o})$ (adding an edge to $o$ from $\hat{o}$ not succeeding it) satisfies SEC Shapiro2011SSSS, i.e., all replica

Figures (7)

  • Figure 1: Synchronization algorithm to integrate foreign history $\mathcal{H}_{r'}$ into $\mathcal{H}_{r}$.
  • Figure 2: Conflict resolution of $o_1$ and $o_2$ with one conflicting premise $o'$.
  • Figure 3: Conflict resolution of $o_2$ against $o_1$ and $o_3$ with two conflicting premises $o'$ and $o"$, and the merge operation $\hat{o}$ discarding premise $o'$.
  • Figure 4: Conflict resolution of $o_1$ and $o_2$ with two conflicting premises $o'$ and $o"$ and a conflict resolved concurrently leading to another conflict between $\hat{o}_1$ and $\hat{o}_2$.
  • Figure 5: Conflict resolution on arithmetic register within additive context of $add \ 2$, which resulted in $mov \ 8$.
  • ...and 2 more figures

Theorems & Definitions (3)

  • definition 1
  • theorem 1
  • theorem 2