Electronic Proceedings in Theoretical Computer Science (Aug 2014)

Model Checking Paxos in Spin

  • Giorgio Delzanno,
  • Michele Tatarek,
  • Riccardo Traverso

DOI
https://doi.org/10.4204/EPTCS.161.13
Journal volume & issue
Vol. 161, no. Proc. GandALF 2014
pp. 131 – 146

Abstract

Read online

We present a formal model of a distributed consensus algorithm in the executable specification language Promela extended with a new type of guards, called counting guards, needed to implement transitions that depend on majority voting. Our formalization exploits abstractions that follow from reduction theorems applied to the specific case-study. We apply the model checker Spin to automatically validate finite instances of the model and to extract preconditions on the size of quorums used in the election phases of the protocol.