Algebraic reasoning for timeliness-guided system design - Haeri, Seyed Hossein; Van Roy, Peter; Apfelmus, Heinrich; Thompson, Peter W.; Davies, Neil J.; Haveraaen, Magne; Barash, Mikhail; Hammond, Kevin; Chapman, James; Šinkarovs, Artjoms (Journal of logical and algebraic methods in programming, 2026)
Designing distributed systems to have predictable performance under all loads is difficult because of resource exhaustion, nonlinearity, and stochastic behaviour. Timeliness, defined as delivering results (sufficiently often) within a specified delay distribution, is a central aspect of predictable performance. In this paper, we consider the ΔQ Systems Development paradigm (ΔQSD, developed by PNSol), which computes timeliness by modelling systems observationally using so-called outcome expressions. An outcome expression is a compositional definition of a system's observed behaviour that shows the causal connections between its basic operations. Given the ΔQSD operations, we use outcome expressions to compute the stochastic behaviour of the whole system including its timeliness. This paper defines and proves algebraic equivalences of outcome expressions with respect to timeliness. We prove the correctness of previously-known equivalences. We also introduce new equivalences and prove their correctness for outcome expressions containing probabilistic choice, failure, synchronisation (first-to-finish and last-to-finish), and sequential composition operators. We show how to incorporate failure as a first-class citizen in outcome expressions by developing the relevant mathematics based on the use of improper random variables. The paper shows the practical usefulness of algebraic equivalences by studying the design of a memory system containing a local cache, a networked read with timeout, and the ability to retry. We compute the delay and failure behaviour of several versions of this system, using the equivalences to simplify computations. This work is part of an ongoing project to disseminate and build tool support for ΔQSD, to make it available to the wider community of system designers. •Design and analysis of large and/or distributed systems and their performance through use of symbolic reasoning.•Analytical modelling of delay-and-failure as a first-class object in system design, by use of ε-incomplete random variables.•Treating systems observationally to capture causality, allowing multiple levels of abstraction during design.•Using a stochastic approach to model system delay and failure behaviour hierarchically.•Extension of the ΔQSD paradigm with algebraic reasoning, proving equivalences for system design transformations.