Skip to content
Preprint

Specifying Paxos for System Builders: Pseudocode Made Executable

Sep 2026 · 0 citations · 38 references
Computer Science

TL;DR

It is shown how the protocol pseudocode can be expressed easily, essentially line-by-line, in a precise high-level language, DistAlgo, for direct execution in distributed systems.

Abstract

This paper presents a precise executable specification---as a faithful mapping from the pseudocode---of Paxos for System Builders, a practical protocol for replication and consensus in distributed systems. Paxos for System Builders has both a robust implementation in C and a clean pseudocode for critical protocol details. This paper shows how the protocol pseudocode can be expressed easily, essentially line-by-line, in a precise high-level language, DistAlgo, for direct execution in distributed systems. Precise specification and direct execution help significantly in understanding the protocol logic and in automatically checking, tracing, and visualizing protocol runs. They also led to discoveries and fixes of small, difficult-to-catch omissions and liveness bugs in the pseudocode though not the C code. The resulting program also has acceptable performance while having similar size as the pseudocode.

View source

Similar papers

#natural language process... Preprint Sep 2026

From Reading Code to Reading Spec: A Verified Layer for LLM-Driven Codebase Maintenance

The Provable Representation Of Original Functionality (PROOF) is introduced, which manages codebases indirectly via structured specifications via structured specifications to enable full-lifecycle codebase management strictly through these specifications.

XinHao Zhang, Jing-Jie Lu, Kun-Peng Liu et al. · 0 citations
#software testing Book Open access Sep 2026

All Your Assembly Belongs to Rust: Automated Lifting for Uniform Testing and Verification

This paper translates Rust code containing RISC-V inline assembly into pure Rust code by emulating each instruction using a machine model extracted from the official RISC-V Sail ISA specification, and demonstrates how each category is handled by the translation.

Charly Castes, Gurvan Debaussart, Thomas Bourgeat · 0 citations
Preprint Sep 2026

Designing a Producer-driven Stream Protocol by Formal Refinement

The coroutine has broadly diffused in the practice of concurrent programming in the form of generators and asynchronous functions as well as processes communicating through pipes. We wanted to use coroutines in Python to create single-threaded Unix-style pipelines. Unfortunately, available solutions in Python are cumbe...

Erick Lavoie · 0 citations
Preprint Sep 2026

Large Language Models and Language Server Protocol: a match made in context

This article introduces Eiffel-tools, a language server protocol (LSP) implementation for the Eiffel programming language that uses Large Language Models (LLMs) to aid the development of statically verified software. The tool provides various interactive and non-interactive commands to produce code and specifications....

Alessandro Schena, I. Mustafin, Julia Kotovich · 0 citations

We use cookies to run the site and, with your consent, for analytics and to show ads. See our Cookie Policy.