scispace - formally typeset
Open Access

Abstract data types and Processes

Jim Davies
Reads0
Chats0
TLDR
Practicalers have been asking how descriptions written in different languages can be related or compared; the area of research addressed here might be termed linking theories of specification, or integrating formal methods.
Abstract
data types and processes Jim Woodcock, Jim Davies, and Christie Bolton Software engineering is about the judicious application of mathematical theory to practical, industrial-scale problems. Research in software engineering is characterised by the interplay between theory and practice: the best theory finds direct application; the best practice finds problems worth solving. The area of research addressed here might be termed linking theories of specification, or integrating formal methods. Practitioners have been asking how descriptions written in different languages can be related or compared; we can find many of the answers in the work of Tony Hoare.

read more

Citations
More filters
Book ChapterDOI

The Semantics of Circus

TL;DR: The language of Circus is described and the formalisation of its model is described in Hoare & He's unifying theories of programming.
Journal ArticleDOI

A UTP semantics for Circus

TL;DR: This work presents a final reference for the Circus denotational semantics based on Hoare and He’s Unifying Theories of Programming (UTP) that allows the proof of meta-theorems about Circus including the refinement laws in which it is interested.
Journal Article

How to combine Z with a process algebra

TL;DR: In this paper, the authors give an overview over the many possible answers to the question "What is the behavioural semantics of a Z specification?" and identify pitfalls and shortcomings in existing combinations.
Journal ArticleDOI

A singleton failures semantics for Communicating Sequential Processes

TL;DR: A new denotational semantics for the language of Communicating Sequential Processes lies between the existing traces and failures models of CSP, providing a treatment of non-determinism in terms of singleton failures.
Journal ArticleDOI

A comparison of refinement orderings and their associated simulation rules

TL;DR: It is proved with a simple counter-example that data refinement, established using the standard simulation rules for Z, does not imply failures refinement in CSP, and an alternative refinement ordering is presented, one in which refinement is equivalent to data refinement in Z.
References
More filters
Journal ArticleDOI

Communicating sequential processes

TL;DR: It is suggested that input and output are basic primitives of programming and that parallel composition of communicating sequential processes is a fundamental program structuring method.
Book

The Z notation: a reference manual

TL;DR: Tutorial introduction background the Z language the mathematical tool-kit sequential systems syntax summary and how to use it to solve sequential systems problems.
Book

Data Refinement: Model-Oriented Proof Methods and their Comparison

TL;DR: The authors concentrate in the first part on the general principles needed to prove data refinement correct, and begin with an explanation of the fundamental notions, showing that data refinement proofs reduce to proving simulation.
Journal ArticleDOI

Distributed cooperation with action systems

TL;DR: It is shown that for fairly serializable systems, properties that hold for any concurrent execution of the system can be established by temporal proofs that are conducted entirely within the simpler sequential execution model.