Archive | 2019

A Categorical Account of Replicated Data Types

 
 
 
 

Abstract


Replicated Data Types (rdts) have been introduced as a suitable abstraction for dealing with weakly consistent data stores, which may (temporarily) expose multiple, inconsistent views of their state. In the literature, rdts are commonly specified in terms of two relations: visibility, which accounts for the different views that a store may have, and arbitration, which states the logical order imposed on the operations executed over the store. Different flavours, e.g., operational, axiomatic and functional, have recently been proposed for the specification of rdts. In this work, we propose an algebraic characterisation of rdt specifications. We define categories of visibility relations and arbitrations, show the existence of relevant limits and colimits, and characterize rdt specifications as functors between such categories that preserve these additional structures. 2012 ACM Subject Classification Theory of computation → Program semantics; Software and its engineering → General programming languages

Volume None
Pages 42:1-42:15
DOI 10.4230/LIPIcs.FSTTCS.2019.42
Language English
Journal None

Full Text