The Coordination Criterion
Joseph M. Hellerstein
TL;DR
This work introduces the Coordination Criterion, a semantic test that determines when coordination is intrinsic to implementing a distributed specification. By formulating specifications over Lamport histories with a Poss/Obs framework and an outcome order $\preceq$, it proves that coordination-free implementations exist iff observable outcomes are monotone under history extension, i.e., no future extension invalidates an already observed outcome. The criterion unifies classic results such as CAP, CALM, consensus, isolation levels, and invariant confluence by showing they all arise from the same monotonicity phenomenon. This semantic lens allows pre-design diagnosis of coordination requirements and explains why certain specifications inherently demand coordination while others can be implemented without it, independent of language, protocol, or concrete synchronization primitives.
Abstract
When is coordination intrinsically required by a distributed specification, rather than imposed by a particular protocol or implementation strategy? We give a general answer using minimal assumptions. In an asynchronous message-passing model, we show that a specification admits a coordination-free implementation if and only if it is monotone with respect to history extension under an appropriate order on observable outcomes. This Coordination Criterion is stated directly over Lamport histories -- partially ordered executions under happens-before -- and specification-defined observable outcomes, without assuming any particular programming language, object implementation, or protocol structure. It yields a sharp boundary between specifications that can be implemented without coordination and those for which coordination is unavoidable. The criterion provides a uniform explanation for a range of classical results, including CAP-style impossibility, CALM-style coordination-freedom, agreement and snapshot tasks, transactional isolation levels, and invariant confluence -- all instances of the same underlying semantic phenomenon.
