# Whither Programs as Specifications

**Authors:** David A. Naumann, Minh Ngo

arXiv: 1906.03557 · 2019-07-26

## TL;DR

This paper explores the extension of algebraic specifications from trace properties to hyperproperties, providing a compositional semantics for imperative programs with loops and examining their implications for program correctness and confidentiality.

## Contribution

It introduces a hyperproperty-level algebraic framework and proves a compositional semantics for imperative programs with loops, extending traditional trace-based approaches.

## Key findings

- Hyperproperties can be lifted to algebraic structures.
- A compositional semantics for programs with loops is developed.
- The semantics aligns with standard semantics for subset-closed hyperproperties.

## Abstract

Unifying theories distil common features of programming languages and design methods by means of algebraic operators and their laws. Several practical concerns --- e.g., improvement of a program, conformance of code with design, correctness with respect to specified requirements --- are subsumed by the beautiful notion that programs and designs are special forms of specification and their relationships are instances of logical implication between specifications. Mathematical development of this idea has been fruitful but limited to an impoverished notion of specification: trace properties. Some mathematically precise properties of programs, dubbed hyperproperties, refer to traces collectively. For example, confidentiality involves knowledge of possible traces. This article reports on both obvious and surprising results about lifting algebras of programming to hyperproperties, especially in connection with loops, and suggests directions for further research. The technical results are: a compositional semantics, at the hyper level, of imperative programs with loops, and proof that this semantics coincides with the direct image of a standard semantics, for subset closed hyperproperties.

## Full text

_Full body text omitted from this summary view._ Fetch the complete paper as Markdown: https://tomesphere.com/paper/1906.03557/full.md

## Figures

3 figures with captions in the complete paper: https://tomesphere.com/paper/1906.03557/full.md

## References

38 references — full list in the complete paper: https://tomesphere.com/paper/1906.03557/full.md

---
Source: https://tomesphere.com/paper/1906.03557