Foster, Simon David orcid.org/0000-0002-9889-9514, Cavalcanti, Ana Lucia Caneca orcid.org/0000-0002-0831-1976, Canham, Samuel James et al. (2 more authors) (2020) Unifying Theories of Reactive Design Contracts. Theoretical Computer Science. pp. 105-140. ISSN 0304-3975
Abstract
Design-by-contract is an important technique for model-based design in which a composite system is specified by a collection of contracts that specify the behavioural assumptions and guarantees of each component. In this paper, we describe a unifying theory for reactive design contracts that provides the basis for modelling and verification of reactive systems. We provide a language for expression and composition of contracts that is supported by a rich calculational theory. In contrast with other semantic models in the literature, our theory of contracts allow us to specify both the evolution of state variables and the permissible interactions with the environment. Moreover, our model of interaction is abstract, and supports, for instance, discrete time, continuous time, and hybrid computational models. Being based in Unifying Theories of Programming (UTP), our theory can be composed with further computational theories to support semantics for multi-paradigm languages. Practical reasoning support is provided via our proof framework, Isabelle/UTP, including a proof tactic that reduces a conjecture about a reactive program to three predicates, symbolically characterising its assumptions and guarantees about intermediate and final observations. This allows us to verify programs with a large or infinite state space. Our work advances the state-of-the-art in semantics for reactive languages, description of their contractual specifications, and compositional verification.
Metadata
Item Type: | Article |
---|---|
Authors/Creators: |
|
Copyright, Publisher and Additional Information: | © 2019 Elsevier B.V. All rights reserved. This is an author-produced version of the published paper. Uploaded in accordance with the publisher’s self-archiving policy. |
Dates: |
|
Institution: | The University of York |
Academic Units: | The University of York > Faculty of Sciences (York) > Computer Science (York) |
Funding Information: | Funder Grant number EPSRC EP/S001190/1 EPSRC EP/M025756/1 |
Depositing User: | Pure (York) |
Date Deposited: | 10 Sep 2019 09:00 |
Last Modified: | 10 Dec 2024 00:16 |
Published Version: | https://doi.org/10.1016/j.tcs.2019.09.017 |
Status: | Published |
Refereed: | Yes |
Identification Number: | 10.1016/j.tcs.2019.09.017 |
Related URLs: | |
Open Archives Initiative ID (OAI ID): | oai:eprints.whiterose.ac.uk:150655 |