Hostname: page-component-78c5997874-8bhkd Total loading time: 0 Render date: 2024-11-19T15:17:06.229Z Has data issue: false hasContentIssue false

Relating operational and denotational semantics for input/output effects

Published online by Cambridge University Press:  01 April 1999

ROY L. CROLE
Affiliation:
Department of Mathematics and Computer Science, University of Leicester, Leicester, UK
ANDREW D. GORDON
Affiliation:
University of Cambridge Computer Laboratory, Cambridge, UK

Abstract

We study the longstanding problem of semantics for input/output (I/O) expressed using side-effects. Our vehicle is a small higher-order imperative language, with operations for interactive character I/O and based on ML syntax. Unlike previous theories, we present both operational and denotational semantics for I/O effects. We use a novel labelled transition system that uniformly expresses both applicative and imperative computation. We make a standard definition of bisimilarity and prove bisimilarity is a congruence using Howe's method.

Next, we define a metalanguage [Mscr ] in which we may give a denotational semantics to [Oscr ]. [Mscr ] generalises Crole and Pitts' FIX-logic by adding in a parameterised recursive datatype, which is used to model I/O. [Mscr ] comes equipped both with an operational semantics and a domain-theoretic semantics in the category [Cscr ][Pscr ][Pscr ][Oscr ] of cppos (bottom-pointed posets with joins of ω-chains) and Scott continuous functions. We use the [Cscr ][Pscr ][Pscr ][Oscr ] semantics to prove that [Mscr ] is computationally adequate for the operational semantics using formal approximation relations. The existence of such relations is based on recent work of Pitts (Pitts 1994b) for untyped languages, and uses the idea of minimal invariant objects due to Freyd.

A monadic-style textual translation into [Mscr ] induces a denotational semantics on [Oscr ]. Our final result validates the denotational semantics: if the denotations of two [Oscr ] programs are equal, then the [Oscr ] programs are in fact operationally equivalent.

Type
Research Article
Copyright
1999 Cambridge University Press

Access options

Get access to the full version of this content by using one of the access options below. (Log in options will check for institutional or personal access. Content may require purchase if you do not have access.)