Paxos for Distributed Consensus

High-level executable specifications in DistAlgo, directly excutable in Python

(If you have Python 3.5 or higher installed, you can simply do "pip install pyDistAlgo" and run "python -m da filename.da" on any example file.)

A complete specification of Basic Paxos in DistAlgo, based on Lamport's paper "Paxos Made Simple".

A complete specification of vRA Multi-Paxos (Multi-Paxos with preemption and reconfiguration) extended with state reduction and failure detection in DistAlgo, based on van Renesse and Altinbuken's paper "Paxos Made Moderately Complex" but with improvements.

Specifications in TLA+ and mechanically-checked proofs in TLAPS

A specification and proof of vRA Multi-Paxos extended with state reduction and failure detection
ċ
vRAMultiPaxos.tla
(283k)
Saksham Chand,
Feb 22, 2018, 6:44 AM
ċ
vRAMultiPaxos_StateReduction.tla
(287k)
Saksham Chand,
Feb 22, 2018, 6:44 AM
ċ
vRAMultiPaxos_StateReductionFailureDetection.tla
(409k)
Saksham Chand,
Feb 22, 2018, 6:44 AM