Skip to Main content Skip to Navigation

Proving the safety of highly-available distributed objects (Extended version)

Abstract : To provide high availability in distributed systems, object replicas allow concurrent updates. Although replicas eventually converge, they may diverge temporarily, for instance when the network fails. This makes it difficult for the developer to reason about the object's properties , and in particular, to prove invariants over its state. For the sub-class of state-based distributed systems, we propose a proof methodology for establishing that a given object maintains a given invariant, taking into account any concurrency control. Our approach allows reasoning about individual operations separately. We demonstrate that our rules are sound, and we illustrate their use with some representative examples. We automate the rule using Boogie, an SMT-based tool.
Complete list of metadata

Cited literature [27 references]  Display  Hide  Download
Contributor : Sreeja Nair <>
Submitted on : Tuesday, March 3, 2020 - 1:53:30 PM
Last modification on : Tuesday, March 23, 2021 - 9:28:03 AM
Long-term archiving on: : Thursday, June 4, 2020 - 12:10:43 PM


Files produced by the author(s)


  • HAL Id : hal-02492599, version 1


Sreeja Nair, Gustavo Petri, Marc Shapiro. Proving the safety of highly-available distributed objects (Extended version). [Other] LIP6, Sorbonne Université, Inria, Paris, France; Arm Research, Cambridge, UK. 2020. ⟨hal-02492599⟩



Record views


Files downloads