Designing a semantic model for a wide-spectrum language with concurrency
Robert J. Colvin, Ian J. Hayes, Larissa A. Meinicke

TL;DR
This paper presents a semantic model for a wide-spectrum language that integrates specifications with programming constructs, supporting concurrency, refinement, and algebraic reasoning for diverse properties.
Contribution
It introduces a novel semantic model with primitive commands and operators, enabling high-level reasoning and refinement from specifications to code in concurrent settings.
Findings
Supports rely-guarantee reasoning, temporal logic, and progress properties.
Defines a set of algebraic primitives for proof and refinement.
Provides a general framework for specifying and reasoning about concurrent programs.
Abstract
A wide-spectrum language integrates specification constructs into a programming language in a manner that treats a specification command just like any other command. This paper investigates a semantic model for a wide-spectrum language that supports concurrency and a refinement calculus. In order to handle specifications with rely and guarantee conditions, the model includes explicit environment steps as well as program steps. A novelty of our approach is that we define a set of primitive commands and operators, from which more complex specification and programming language commands are built. The primitives have simple algebraic properties which support proof using algebraic reasoning. The model is general enough to specify notions as diverse as rely-guarantee reasoning, temporal logic, and progress properties of programs, and supports refining specifications to code. It also forms an…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
