English

State machines for large scale computer software and systems

Formal Languages and Automata Theory 2025-11-04 v11 Distributed, Parallel, and Cluster Computing

Abstract

The behavior and architecture of large scale discrete state systems found in computer software and hardware can be specified and analyzed using a particular class of primitive recursive functions. This paper begins with an illustration of the utility of the method via a number of small examples and then via longer specification and verification of the Paxos distributed consensus algorithm. The sequence maps are then shown to provide an alternative representation of deterministic state machines and algebraic products of state machines. Distributed and composite systems, parallel and concurrent computation, and real-time behavior can all be specified naturally with these methods - which require neither extensions to the classical state machine model nor any axiomatic methods or other techniques from formal methods. Compared to state diagrams or tables or the standard set-tuple-transition-maps, sequence maps are more concise and better suited to describing the behavior and compositional architecture of computer systems. Staying strictly within the boundaries of classical deterministic state machines anchors the methods to the algebraic structures of automata and makes the specifications faithful to engineering practice.

Keywords

Cite

@article{arxiv.1608.01712,
  title  = {State machines for large scale computer software and systems},
  author = {Victor Yodaiken},
  journal= {arXiv preprint arXiv:1608.01712},
  year   = {2025}
}

Comments

Authors version of accepted paper

R2 v1 2026-06-22T15:12:50.649Z