Skip to main content

Specifying and Refining Internal Operations in Z

Derrick, John, Boiten, Eerke Albert, Bowman, Howard, Steen, Maarten (1998) Specifying and Refining Internal Operations in Z. Formal Aspects of Computing, 10 (2). pp. 125-159. ISSN 0934-5043 (Print) 1433-299X (Online). (doi:10.1007/s001650050007) (KAR id:21577)

Language: English
Download (450kB) Preview
Language: English
Download (336kB) Preview
Official URL


Abstract An important aspect in the specification of distributed systems is the role of the internal (or unobservable) operation. Such operations are not part of the interface to the environment (i.e. the user cannot invoke them), however, they are essential to our understanding and correct modelling of the system. In this paper we are interested in the use of the formal specification notation Z for the description of distributed systems. Various conventions have been employed to model internal operations when specifying such systems in Z. If internal operations are distinguished in the specification notation, then refinement needs to deal with internal operations in appropriate ways. Using an example of a telecommunications protocol we show that standard Z refinement is inappropriate for refining a system when internal operations are specified explicitly. We present a generalization of Z refinement, called weak refinement, which treats internal operations differently from observable operations when refining a system. We discuss the role of internal operations in a Z specification, and in particular whether an equivalent specification not containing internal operations can be found. The nature of divergence through livelock is also discussed. Keywords: Z; Refinement; Distributed Systems; Internal Operations; Process Algebras; Concurrency.

Item Type: Article
DOI/Identification number: 10.1007/s001650050007
Uncontrolled keywords: Z; Refinement; Distributed Systems; Internal Operations; Process Algebras; Concurrency
Subjects: Q Science > QA Mathematics (inc Computing science) > QA 76 Software, computer programming,
Divisions: Faculties > Sciences > School of Computing > Theoretical Computing Group
Depositing User: Eerke Boiten
Date Deposited: 26 Aug 2009 17:55 UTC
Last Modified: 09 Feb 2020 04:03 UTC
Resource URI: (The current URI for this page, for reference purposes)
Boiten, Eerke Albert:
Bowman, Howard:
  • Depositors only (login required):


Downloads per month over past year