A COINDUCTION PRINCIPLE FOR RECURSIVELY DEFINED DOMAINS

被引:17
作者
PITTS, AM
机构
[1] University of Cambridge Computer Laboratory, Cambridge, CB2 3QG, New Museums Site, Pembroke Street
关键词
D O I
10.1016/0304-3975(94)90014-0
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
This paper establishes a new property of predomains recursively defined using the cartesian product, disjoint union, partial function space and convex powerdomain constructors. We prove that the partial order on such a recursive predomain D is the greatest fixed point of a certain monotone operator associated to D. This provides a structurally defined family of proof principles for these recursive predomains: to show that one element of D approximates another, it suffices to find a binary relation containing the two elements that is a post-fixed point for the associated monotone operator. The statement of the proof principles is independent of any of the various methods available for explicit construction of recursive predomains. Following Milner and Tofte (1991), the method of proof is called co-induction. It closely resembles the way bisimulations are used in concurrent process calculi (Milner 1989). Two specific instances of the co-induction principle already occur in the work of Abramsky (1990, 1991) in the form of ''internal full abstraction'' theorems for denotational semantics of SCCS and lazy lambda calculus. In the first case post-fixed binary relations are precisely Abramsky's partial bisimulations, whereas in the second case they are his applicative bisimulations. The co-induction principle also provides an apparently useful tool for reasoning about equality of elements of recursively defined datatypes in (strict or lazy) higher-order functional programming languages.
引用
收藏
页码:195 / 219
页数:25
相关论文
共 20 条
  • [1] A DOMAIN EQUATION FOR BISIMULATION
    ABRAMSKY, S
    [J]. INFORMATION AND COMPUTATION, 1991, 92 (02) : 161 - 218
  • [2] Abramsky S, 1990, RES TOPICS FUNCTIONA, P65
  • [3] ABRAMSKY S, IN PRESS INFORM COMP
  • [4] Bird R., 1988, INTRO FUNCTIONAL PRO
  • [5] FREYD P, 1991, LECT NOTES MATH, V1488, P95
  • [6] HOWE DJ, 1989, FOURTH ANNUAL SYMPOSIUM ON LOGIC IN COMPUTER SCIENCE, P198
  • [7] HUDAK P, 1991, REPORT PROGRAMMING L
  • [8] Milner R., 1989, Communication and concurrency
  • [9] COINDUCTION IN RELATIONAL SEMANTICS
    MILNER, R
    TOFTE, M
    [J]. THEORETICAL COMPUTER SCIENCE, 1991, 87 (01) : 209 - 220
  • [10] Milner R., 1990, DEFINITION STANDARD