Skip to content
This repository has been archived by the owner on May 20, 2023. It is now read-only.

TypeDefinition/Fast-Paxos-Specification

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

64 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NUS CS5232 Research Project: Specifying Fast Paxos in TLA+

🎊 This TLA+ specification has been merged into the Official TLA+ Examples Repository! 🎊

About

A simplified TLA+ specification of the Fast Paxos protocol by Leslie Lamport, a consensus algorithm for distributed systems. TLA+ is a high-level language for modeling programs and systems, especially concurrent and distributed ones, using simple mathematics.

Software Prerequisites

Please, make sure to install Visual Studio Code and its TLA+ Extension, following the instructions on the linked pages. Also, consider adding the following command to your VSCode setting to parse your TLA+ code automatically.

Running the TLA+ Model

After installing the TLA+ extension for VSCode, Simply open FastPaxos.tla or Paxos.tla in VSCode, right click anywhere in the file editor, and click "Check model with TLC".

Estimated Model Verification Time

The following timings were achieved on a 6-core, 12-thread CPU:

  • Paxos.tla: 4 seconds
  • FastPaxos.tla: 1 minute 2 seconds

About

Simplified Fast Paxos Specification

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TLA 100.0%