Stateful-Failure Reactive Designs in Isabelle/UTP

Research output: Working paper


Stateful-Failure Reactive Designs specialise reactive design contracts with failures traces,
as present in languages like CSP and Circus. A failure trace consists of a sequence of events and a refusal set. It intuitively represents a quiescent observation, where certain events have previously occurred, and others are currently being accepted. Following the UTP book, we add an observational variable to represent refusal sets, and healthiness conditions that ensure their well-formedness. Using these, we also specialise our theory of reactive relations with operators to characterise both completed and quiescent interactions, and an accompanying equational theory. We use these to define the core operators — including assignment, event occurrence, and external choice — and specialise our proof strategy to support these. We also demonstrate a link with the CSP failures-divergences semantic model.
Original languageEnglish
Publication statusUnpublished - 17 Apr 2018

Cite this