Beruflich Dokumente
Kultur Dokumente
Smyth Department of Computer Science University of Edinburgh Edinburgh, EH9 3JZ, Scotland
Abstract The broad theme of the paper is that topological concepts are basic to computer science. Such concepts as "specifications", "predicate transformer", and "nondeterThe
minism" can be greatly illuminated by being formulated in topological terms. specific tasks we undertake ace: domain constructions;
preconditions and the Smyth powerdomain, established by Plotkin for the case of flat domains, actually holds in full generality.
The broad theme of this paper is that topological concepts are basic to computer science. benefits. The recognition of this relationship brings both conceptual and technical Such concepts a s " s p e c i f i c a t i o n " , "predicate transformer", and "nondeterThe
topological formulation enables a more adequate technical treatment to be given, by drawing on a well-established body of mathematical knowledge. One main area of application is that of powerdomain theory. of [15], We show that the ideas
and spaces of subsets (or "hyperspaees") going back at least to Vietoris [22].
obstacle to perceiving this has been that the mathematicians have, for the most part, been interested only in Hausdorff spaces. We propose (Definition 5) a finitary notion
of "power space" which includes the existing (finitary) powerdomain and hyperspace constructs as special cases, and which is at the same time more direct and accessible (given a minimal acquaintance with topology) than the versions of [15], [20]. But,
for reasons of space, we do not develop the power space theory here and, in particular, we consider the possibility of extending it to cover infinitary powerdomains (as in [I], [17]) only in passing. Instead, we consider Dijkstra's predicate transformers.
Here, the topological interpretation is even more direct and compelling than in the case of the power domains. It immediately shows us how to generalize the weakest
precondition semantics, and its connection with the upper (or Smyth) powerdomain (cf. Plotkin [16]), to arbitrary domains. (The treatment in [6] and [16] is, of The removal of the restriction to
flat domains should permit the development of more adequate programming logics. The key to the work of generalization presented here, as to much recent mathematical work that seeks to escape the limitations of the traditional insistence on Hausdorff
663
separation, is the use of sober spaces, frames, and related concepts ("pointless topology"). These, along with more standard topological material, are briefly
introduced in Section i.
i. A)
whichwill
A topology on a set S is a collection of subsets of S that is closed under finite intersection and arbitrary union. topological space ( S , ~ ; A set S together with a topology ~ o n S is a We also
the elements of ~ are the open sets of the space. (complete) lattice of open sets of the space X.
use the notation ~(X) for the A base of the topology ~ o n of elements of ~.
S is a subset ~ c ~ s u c h a subset ~ c
that every open set is the union that every open set is the
A subbase of ~ i s
~such ~is
The topologies on a set S, ordered by inclusion, form a complete lattice: for T a set of topologies, is the topology with subbase UT. is the trivial topology {~,S}, while the greatest is ~ S Notation. For a poset (P,~), x E P, X ~ P, we write
+x for {ylx<y} +X for U{+xlx ~ X}. X is +-closed if X = +X. Examples. Similarly for +x, +X, +-closed. We
are more interested in non-Hausdorff (indeed, n o n T I) spaces, such as: (2) Alexandroff topology of a poset, consisting of the +-closed sets; especially (3) Scott topology of a poset (usually a cpo) (P,<). A set 0 c P is open iff 0 and
is +-closed and, for any directed set Y c P, if VY ~ 0 then some element of Y is in 0. We are mainly interested in the case that P is an ~-algebraic cpo (there are countably many finite elements, and each element is the sup of a chain of finite elements). Here the Scott topology is very simply described: finite. For any topology ~ o n x ~Y S, we have the specialization preorder ~ o n S, defined by: it has as base the sets +a, a
A subset Q of a space x is compact provided that any family of open sets whose union contains X (so that the family covers X) has a finite subfamily which covers X. (In Bourbaki, Q is allowed to be only quasi-compact under these circumstances, unless X is Hausdorff; but this convention seems unnecessary.)
664
-i
If X,Y are
(topological)
(0)
If D,D' are cpo's, then f: D -> D' is continuous w.r.t, the Scott t o p o l o g i e s
of D,D' iff f preserves lubs of d i r e c t e d sits. M i s c e l l a n e o u s notation. a l g e b r a i c cpo D; ~ fin(S) We use B D for the basis (set of finite elements) ~ of an for the
(computable) p
T a k i n g a p r e d i c a t e on a space X to be a c o n t i n u o u s m a p f r o m X into the B o o l e a n /tt, we have (trivially) that a subset S of X is open iff S i s p-l(tt) there is an order-
cpo B = f f ~
for some p r e d i c a t e p.
i s o m o r p h i s m b e t w e e n ~(X)
the t w o - p o i n t cpo.)
The t h e o r e m of Rice et al
g e n e r a l i z a t i o n of the R i c e t h e o r e m
alence holds in any "effectively given" algebraic cpo. Intuitively, the idea of a c o m p u t a b l e p r o p e r t y is simply this: we have a u n i f o r m
p r o c e d u r e that, g i v e n
[a code for) an e l e m e n t x, tells us w i t h i n a finite time that Of course, this is just the idea of semi-
A n idea that w i l l surface from time to time, a l t h o u g h we are not going to d e v e l o p it in detail here, is that a s p e c i f i c a t i o n of an o b j e c t or countable) (say, a program) is a (finite
In v i e w of our
i d e n t i f i c a t i o n of p r o p e r t i e s w i t h o p e n sets, this m e a n s that w h a t is s p e c i f i e d is always a countable i n t e r s e c t i o n of o p e n sets, in o t h e r w o r d s a ~ 6 - s e t Kuratowski [13]). but it will have the (see
significance for us of a "finitarily specifiable" set or, alternatively, of a set of results attainable b y a b o u n d e d l y n o n - d e t e r m i n i s t i c p r o c e s s these p o i n t s in Sec. 2). Computability/continuity. But one r e q u i r e m e n t We are not g o i n g to stress "effectiveness" in this paper. (we will e l a b o r a t e on
665
general, be r e l a t i v e n o t just to the topologies of the spaces involved, but to the p a r t i c u l a r open bases chosen. It is not s t r i c t l y c o r r e c t t h a t arbitrary open sets the computable p r o p e r t i e s will, rather, be the basic
r e p r e s e n t c o m p u t a b l e properties;
o p e n sets and "effective" unions of them. We can n o w give a simple r e a s o n why computable functions should be e x p e c t e d to be continuous. L e t f: X -> Y be computable, w h e r e X , Y are "effective" spaces (so that,
among other things, p a r t i c u l a r bases are a s s u m e d for X,Y). computable, p r o p e r t y p: Y -> ~. compose) (open set) in Y. is Thus B is p-1(tt)
L e t B be a basic, hence
T h e n f-l(B)
(p 9 f)-l(tt), hence
sets, hence a r b i t r a r y o p e n sets, of Y to open sets of X. C) Points vs. properties. Pointless topology. (basic) o p e n sets o f a space as the funda-
(i) ~ - s p a c e s .
If we r e a l l y think of the
m e n t a l p r o p e r t i e s of i n t e r e s t in that space, then, p r e s u m a b l y points h a v i n g the same n e i g h b o u r h o o d s should not be distinguished. s e p a r a t i o n property": D e f i n i t i o n I. Vx,y E X Equivalently, A space X is T O p r o v i d e d ((V0 E ~(X). x E 0 ~ y s 0) -> x : y). X is T O p r o v i d e d that its s p e c i a l i z a t i o n p r e o r d e r is a p a r t i a l order. of X, got by i d e n t i f y i n g p o i n t s We thus r e q u i r e spaces to have the "T O
N o t e that for any space X w e have the ~ - i f i c a t i o n having the same n e i g h b o u r h o o d systems.
in Section 2 - one forms the T 0 - i f i c a t i o n by s e l e c t i n g a d i s t i n g u i s h e d e l e m e n t from each e q u i v a l e n c e class in the s p e c i a l i z a t i o n preorder. (ii) Sober spaces. A m o r e radical p o s i t i o n w o u l d be that, since we can be c o n c e r n e d p r o p e r t i e s of points, points should be Points, in this approach, will
only w i t h the
(ascertainable/computable)
~(x)
if U ~ ~, V ~ ~ and U c V, then V 6 ~; if U , V E ~ then U n V 6 ~; for any family (Ui)i61 of open sets, if l l~U' C ~ then U.l 6 ~ for some i. (i) and (2) is a filter in ~. A filter s a t i s f y i n g (3) is
(2)
(3)
A subset ~ of ~ s a t i s f y i n g
said to be c o m p l e t e l y prime;
the intuitive m e a n i n g of
(3) is that a p o i n t w h i c h
possesses the d i s j u n c t i o n of the p r o p e r t i e s Ui, p o s s e s s e s at least one of these properties. ~an Clearly, the n o t i o n of a c o m p l e t e l y p r i m e filter can be f o r m u l a t e d for
arbitrary c o m p l e t e lattice.
666
b u n d l e of properties.
b e t w e e n p o i n t s and b u n d l e s of properties.
Loosely, w e m a y say that a space is sober iff it is c o m p l e t e l y d e t e r m i n e d by its lattice of properties. For sober spaces X,Y, if ~(X), ~(Y) are i s o m o r p h i c lattices,
then X,Y are h o m e o m o r p h i c spaces. For any space X we have its s o b e r i f i c a t i o n (least sober extension), Sobr(X), w h i c h
w h i c h h a p p e n to c o r r e s p o n d to points in X), w i t h base for the t o p o l o g y the sets ~0 = {~I0 G ~}, where 0 ranges over ~(X). We note in p a s s i n g that, for a more "effective" t r e a t m e n t of the d e f i n i t i o n s and
c o n s t r u c t i o n s c o n s i d e r e d here, one can w o r k w i t h an a r b i t r a r i l y chosen c o u n t a b l e b a s e ~in p l a c e o f ~(=~(X)) . (i) Every H a u s d o r f f space is sober. (indeed, c o n t i n u o u s poset) is sober. In detail, for D for some
Examples (2)
E v e r y algebraic cpo
algebraic:
a ~ 0, by the t h i r d condition.
o b s e r v e s here that c o m p l e t i o n b y ideals m a y be c o n s i d e r e d as a special case of soberification. T h a t is: for any p o s e t B, the S c o t t t o p o l o g y on the c o m p l e t i o n of
B coincides w i t h the s o b e r i f i c a t i o n of the A l e x a n d r o f f t o p o l o g y on B. It is i n t e r e s t i n g that not e v e r y cpo is sober in its Scott t o p o l o g y (Johnstone [i0]).
O n the other hand, every sober space is d i r e c t e d l y complete in its s p e c i a l i z a t i o n order. Several a l t e r n a t i v e c h a r a c t e r i z a t i o n s of the sober spaces are d i s c u s s e d in w o r k s such as [3], [7]. The m o s t adequate is in terms of an a d j u n c t i o n b e t w e e n T ~ p and a (= c o m p l e t e The left
half o f the a d j u n c t i o n is in effect ~, the r i g h t h a l f is a functor Pt w h i c h acts on objects by sending a frame to its space of c o m p l e t e l y prime filters. sober iff it is Pt(L) for some frame L; A space is
there is a c o r r e s p o n d i n g n o t i o n of spatial The a d j u n c t i o n cuts down to an equivand ~__rm__ are in "opposite" R e c e n t w o r k has shown
frames, n a m e l y those w h i c h are values of ~. alence (or rather, a duality, since the
morphisms in ~ p
directions)
667
(a s t r i k i n g
u n f a m i l i a r machinery. Example. W h a t frames are of the form ~(D) for D an algebraic cpo? The o p e n sets for
of D are in b i j e c t i o n w i t h the +-closed subsets o f B D. suitable choice of D T h e o r e m 4.1.12 of (namely the c o m p l e t i o n of BD).
Thus, a d a p t i n g the R e p r e s e n t a t i o n
[23]
2.
P o w e r domains and V i e t o r i s t o p o l o g y
In the s t u d y of the s e m a n t i c s of n o n d e t e r m i n i s m one s t r a n g e l y n e g l e c t e d avenue of a p p r o a c h is that of s e e i n g w h a t m a t h e m a t i c i a n s have h a d to say about c o n t i n u i t y notions for m a n y - v a l u e d functions, finds m u c h of relevance there; and about spaces of subsets. On investigation, one are c l o s e l y r e l a t e d [13]). [2]:
[22], cf. K u r a t o w s k i
if F: X -> Y is a m u l t i f u n c t i o n ,
the r e l a t i o n a l inverse {xlFx N S ~ @}. D e f i n i t i o n 3. A m u l t i f u n c t i o n F: X -> Y is upper s e m i c o n t i n u o u s and lower s e m i c o n t i n u o u s (usc) if F+(0) is
o p e n in X w h e n e v e r 0 is o p e n in Y;
(isc) if F-(0)
is open
in X w h e n e v e r 0 is o p e n in Y (equivalently, if F+(Q) is closed w h e n e v e r Q is closed). Finally, F is c o n t i n u o u s if it is b o t h usc and isc. The fair m e r g e function FM: ~ x ~ -> [~ is isc but not usc. Say Z is thus
T a k i n g S as +{01,i0}, we find that <0,I> ~ FM+(S), b u t <00,1> ~ FM+(S); is n o t open, so F M is not usc.
segments a,a' of x,x' A Bb E B such that some m e r g e of a,a' extends b}, and this is clearly open. G i v e n a n o t i o n of c o n t i n u i t y for m u l t i f u n c t i o n s F: X -> Y, it is natural to ask w h e t h e r there is a r e a s o n a b l e topology on Y such t h a t F is continuous as a m u l t i In
function iff it is c o n t i n u o u s in the o r d i n a r y sense as a f u n c t i o n from X to 4~f. the case of the three c o n t i n u i t i e s of Definition, topologies on ~ Y w h i c h agree in this sense. there are i n d e e d easily d e f i n e d
over X w e have, then, two obvious d e r i v e d n o t i o n s of p r o p e r t y over subsets S of X: e v e r y e l e m e n t of S has a g i v e n p r o p e r t y P; ations of these are also possible. Formally: or, some e l e m e n t o f S has P. Combin-
668
D e f i n i t i o n 4.
a base the c o l l e c t i o n of sets of the f o r m U 0 (0 o p e n in X), w h e r e U 0 = {SIS c 0}; lower t o p o l o g y has as subbase the L 0, w h e r e L 0 = {SIS n 0 ~ ~}; (or convex) t o p o l o g y takes as subbase b o t h the L 0 and the U 0. finite is m o r e usual.) (least) c o m m o n refinement, that is, the lub w h i l e the V i e t o r i s
(in
the lattice of topologies), of the u p p e r a n d lower topologies. and lower t o p o l o g i e s is trivial, in general.
(e.g.
X is
fixed);
are e q u i v a l e n t w i t h r e s p e c t to the u p p e r t o p o l o g y iff they have the same +-closure (in the s p e c i a l i z a t i o n order); it is t h e r e f o r e r e a s o n a b l e to r e s t r i c t to +-closed S i m i l a r remarks apply to the o t h e r two
A further r e s t r i c t i o n
arises from
A boundedly non-deter-
m i n i s t i c p r o c e s s can, w e suppose, be r e p r e s e n t e d as a finitely b r a n c h i n g tree T such that the p o s s i b l e results of the c o m p u t a t i o n form the "frontier" of T p a t h s of T). (limits a l o n g
A little more precisely, we s u p p o s e that w i t h each p o i n t of T is "potential" results, and that the sets o c c u r r i n g a l o n g any (The g e n e r a t i n g trees
a s s o c i a t e d a set R ( p ) o f
a p o i n t of one of those trees, l a b e l l e d w i t h finite e l e m e n t a, is of course We c l a i m that the frontier F of such a tree T is compact. F c l~i01. The set {p E T I Bi.R(p) c 0 } m u s t be finite; Indeed, suppose
implies that there is an infinite p a t h p0,pl,... , such that for all j,l, R(p) ~ 0, w h i c h implies t h a t lim pj ~ 0 (for all I). It follows that there is a (finite) 3 c r o s s - s e c t i o n of T for w h i c h e a c h a s s o c i a t e d set is contained in a single 0 ; thus a I finite c o l l e c t i o n of the 0 suffices to c o v e r this c r o s s - s e c t i o n and h e n c e F. (The i j u s t i f i c a t i o n of the r e s t r i c t i o n to c o m p a c t sets is taken up a g a i n at the end of this section.) If F: X -> Y is a m u l t i f u n c t i o n , we d e n o t e b y F: X -> ~ Y the c o r r e s p o n d i n g function. T h e o r e m i. Let Y be a s p a c e , ~ a (non-empty) subset of ~Y. Then, for any space X, a is c o n t i n u o u s
m u l t i f u n c t i o n F: Xl-> Y w i t h
669
t o p o l o g i e s on ~ a r e
(sub-)bases of the three t o p o l o g i e s o n ~ are so c h o s e n as to make the first (notice that a f u n c t i o n is continuous if the inverse For uniqueness, n o t i c e that d i s t i n c t
s t a t e m e n t of the T h e o r e m trivial
the i d e n t i t y functions b e t w e e n
We now introduce our d e f i n i t i o n of the three "power spaces" of a (sober) space. Notation~ 0 +S. L e t X be a space. Also, CL(X), UC(X) For S c X, S denotes the closure of S, w h i l e cony(S) and COMP(X) are the sets of closed, is
sets of X respectively;
CONV(X)
the s p e c i a l i z a t i o n o r d e r d e r i v e d from the lower topology; D e f i n i t i o n 5. topology; The lower p o w e r space of X,PSL(X), is CL(X)
0 CONV(X)
and PSc(X)
are the T 0 - i f i c a t i o n s o f
t a k e n w i t h the lower, upper and convex topologies, PSL: Clearly, it suffices to show that S m L S'
respectively. iff
S mL - 7 9 S.
But, by definition,
PSu:
Evidently,
is c o m p a c t then so is +S.
x ~ +S then for e a c h y ~ S there is an open n e i g h b o u r h o o d 0 that, p u t t i n g U = y E yS0y, we have S ~ U w h i l e x ~ U. PSc: Since S c conv(S) c S, S ~L cony(S); similarly, = conv(S).
if Y mC S t h e n Y c
hence Y c conv(S).
Finally, if S is compact
t h e n conv(S), as the i n t e r s e c t i o n of a closed set w i t h a c o m p a c t set, is also compact. We have thus shown that the elements o f PSc(X) the m c - e q u i v a l e n c e classes in (COMP(X),C). are the canonical (largest) elements of o We have
r e s t r i c t e d to c o m p a c t sets as we are i n t e r e s t e d in m o d e l l i n g b o u n d e d n o n - d e t e r m i n i s m (but see remarks at end of this section). r e s t r i c t e d to T 1 - s p a c e s CONY(X) = CL(X) (see [14]). The s t a n d a r d t r e a t m e n t is, in effect,
and, m o d u l o the r e s t r i c t i o n to compactness, our t h e o r y is e q u i v a l e n t B u t it seems clear that to have a g o o d t h e o r y applicable to non(this is one of the
Tl-Spaces one needs to w o r k w i t h convex and not just closed sets m a i n c o n t r i b u t i o n s of P l o t k i n [15]).
670
the H a u s d o r f f m e t r i c on the closed subsets of a m e t r i c sPace X. d i f f i c u l t to show that, for the compact (and t h e r e f o r e closed)
they do not coincide in the n o n - c o m p a c t case, and t h a t de Bakker and Zucker a l l o w a r b i t r a r y closed sets. However, there is a q u e s t i o n as to w h i c h is the b e s t t o p o l o g y Michael [14] argues that the H a u s d o r f f m e t r i c
t o p o l o g y is m a t h e m a t i c a l l y less s a t i s f a c t o r y t h a n the Vietoris topology. We w i l l n e x t show that, in case D is an a l g e b r a i c cpo, the p o w e r spaces reduce to the u s u a l p o w e r domains over D. Following [20], w e shall define the p o w e r domains is the set of non-
of D as c o m p l e t i o n s of M(D) u n d e r suitable orderings, w h e r e M(D) empty finite subsets of B D. Smyth, p o w e r d o m a i n D e f i n i t i o n 6. by: A ~ E B iff V a ~ A . ~ b ~ B.a C b m A ~ B iff Vb s B . ~ a 6 A . a ~ b
[20], its dual, sometimes k n o w n as the Hoare p o w e r domain. Define the p r e - o r d e r s ~ ,C ,~ o n M(D) --L --U--C
Let D be an w - a l g e b r a i c cpo.
A~B
iff ~ ~ H ^ A ~ H .
[or Hoare), upper (or Smyth), and convex (or Plotkin) power domains
T h e n the lower
of D, d e n o t e d PDL(D) , PDu(D) , PDc(D) , are the completions by ideals of M(D), u n d e r the r e s p e c t i v e o r d e r i n g s ~L,~,C_C. A c t u a l l y we find i t c o n ~ n i e n t , m o s t of the time, to w o r k w i t h w-chains r a t h e r than d i r e c t e d ideals. w h e r e ~CH(E) of E. (equivalence classes of)
S c D c o m p a c t and non-empty.
A ~ 0 ^ S c +A;
a m i n i m a l such A.
It also follows t h a t U S is ~ - d i r e c t e d ,
A,B ~ K+An+ ~ B
Finally,
S
W r i t e K for K + A n % B. For each a @ A such that Find x 6 S
suppose A,B - C S. ~
671
Let K' be the result of all these augmentations In defining the power domains,
of K.
[]
the empty set is usually excluded from consideration. + For the comparison of power spaces with power domains we therefore define PSL(X) to + be the subspace of the non-empty elements of PSL(X) , and similarly for PSu(X) , +
PSc(X).
PSu(D)
Theorem 3.
Let D be an U-algebraic
Then PSi(D),
in their specialization
ideal in (M(D),C_L) , let L(I) = {ai{a} ~ I}. + Then L(I) is a +-closed subset of BD, and indeed L is an isomorphism of PSL(D) onto (~,c), where ~ i s If Z @ ~ t h e n the set of non-empty +-closed subsets of B D (with L -I as ~fin).
if I is a (directed)
Z = {xi+x n B D c Z}~ and closure is an isomorphism of (~,c) onto Thus (-) o L is the required isomorphism of
(CL(D),c), with inverse S ~>+S n B D. + PDL(D) onto PSL(D) (i.e. (CL(D),5)). (ii) Then PDu(D): %
is order-preserving:
define #u(H) = 0+H.. ii indeed, if H ~ K then for each i there exists j with 0n the other hand, suppose ~ + H i ~ ~+~j. We consider
[20]) whose finite paths are all the sequences <b0,...,bn> , The cross-sections of this tree are (multisets whose
Kj;
sets are) the K.. For each i there must be a cross-section K. such 3 J for if not, we could by KSnig's Lemma find an infinite path ~ +Hi, h e n c e ~ b .
J 33
~ +Hi, h e n c e ~
J
K
3
~ +X i
-"
This shows
by Lemma I, we have only to choose an H cofinal with UQ. + mines an isomorphism of PDu(D) onto PSu(D). (iii)
#(H) where
PDc(D) :
= ~u(H)
in (i).
First,
obviously
Similarly,
to-right inclusion is again trivial, while if a @ #L([H]) we have a ~ a i (for some a i ~ H.)l and a i ~ }(H) ~ ai+ I --~ ... (for suitable ai+ k E Hi+ k ), so that a ~.a._l @ ~(H). l ~u(K) and #L([H]) ~L }L (~EK])" At the same time, it is Thus
r (H) ~C r (K).
For surjectivity, Lemma i); + suppose Q ~ PSc(D). Further, Let H be an ~-chain cofinal with CQ (see it is clear that ~L([H]) c Q. Then {a} U H 0 ~ C Q. Hence, To show that for some j,
672
{a} U Z 0 ~
Z j.
Thus a ~ ~L([H]);
we have s h o w n t h a t #(H) = Q.
[]
P l o t k i n has o b s e r v e d that the p o w e r d o m a i n s over an algebraic cpo have a c o n v e n i e n t u n i v e r s a l characterisation, n a m e l y as free c o n t i n u o u s semilattices (see [8]). One
n a t u r a l l y tries to extend this to p o w e r spaces, in terms of free t o p o l o g i c a l semilattices. U n f o r t u n a t e l y this does not work, except for the r e l a t i v e l y u n i n t e r e s t i n g (for details, see [21])'. It seems that the j u s t i f i c a t i o n of the A little has b e e n
lower p o w e r space
p o w e r spaces, in the general case, has to be rather indirect. said above to j u s t i f y the choice of c o m p a c t sets; in terms of "specifications".
(intersection)
(inclusion), we may as well say t h a t a s p e c i f i c a t i o n is a c o u n t a b l y - g e n e r a t e d filter of open sets. We shall say that a specification, ~, is finitary if the f o l l o w i n g .... is
c o n d i t i o n holds: in ~ ,
some 0 i is already in ~ .
is finitary is
thus e q u i v a l e n t to saying that it is itself an o p e n set in the complete lattice ~(X), taken w i t h the Scott topology; computable, or, f o l l o w i n g the ideas of Section i, that it is (the indices in
Moreover, if ~ i s
Scott topology,
O p e n filters p r o v i d e the link by w h i c h we c o n n e c t the upper p o w e r space w i t h w e a k e s t p r e c o n d i t i o n semantics, in the n e x t section. An e q u a l l y satisfactory d e s c r i p t i o n does not s e e m to be available for the convex p o w e r space, in the general case; these m a t t e r s are e x p l o r e d in [21].
We conclude this section w i t h some brief remarks on the i n f i n i t a r y p o w e r d o m a i n s i n t r o d u c e d r e c e n t l y by Apt and Plotkin (countable) as in [i]. upper nondeterminism. [i], P l o t k i n [17] for h a n d l i n g u n b o u n d e d
T h e n the upper t o p o l o g y on ~(S I) - {~} gives e x a c t l y the i n f i n i t a r y This upper t o p o l o g y is not sober, nor is the
~tthe same time, the V i e t o r i s t o p o l o g y gives e x a c t l y the c o n v e x (~(SI) - {@}, E g l i - M i l n e r ordering); in this case the
673
As for general domains, one suggestion is to treat the i n f i n i t a r y p o w e r spaces/ domains a n a l o g o u s l y to the finitary ones, r e p l a c i n g finite sets b y countable sets. That is, one observes that the (finitary) convex p o w e r space of an algebraic cpo, D, and similarly for the
For the infinitary construct, then, one could try the B u t w h e t h e r this leads anywhere is
3.
Predicate Transformers
R e c a l l that w e have d e f i n e d the "upper" inverse f+ of a (multi-)map f: X -> Y as f+: ~ Y -> ~X: S -> {xlf(x ) c S}. W h e n f is usc, f+ cuts down to a function from ~(Y) the p o i n t b e i n g that, just as ~ is a is a functor from the category But we w i l l not dwell on
(with ~+ = ~ o n objects)
of spaces and usc maps into a m o d i f i e d category of frames. the c a t e g o r i c a l aspect here. Since we i d e n t i f y predicates, are
In j u s t i f i c a t i o n of these remarks, consider the p r e d i c a t e t r a n s f o r m e r s as i n t r o d u c e d by Dijkstra [6] and their correspondence, investigated by Plotkin [16], w i t h non-
conditions,
P l o t k i n observes that there is an order i s o m o r p h i s m b e t w e e n the ~ p o of) h e a l t h y p r e d i c a t e t r a n s f o r m e r s from Y to X and the domain o f n o n - d e t e r m i n i s t i c state transformations t a k e n as that of X is ~(X). [X -> PDu(YI)]. Now, the t o p o l o g y of Y 1 is 8(Y) U {YI}, w h i l e
m a p from ~(YI) to ~(X), then, w e have only to give it a v a l u e for the a r g u m e n t YI; naturally, w e assume P(YI) t r a n s f o r m e r s to be the = X. Thus, we consider the d o m a i n of (healthy) p r e d i c a t e
p o n d e n c e w i t h n o n - d e t e r m i n i s t i c maps can be e x t e n d e d far b e y o n d the case of d i s c r e t e spaces c o n s i d e r e d by D i j k s t r a and Plotkin; spaces. For Y a sober space, the p o i n t s of PSu(Y), as well as of Y itself, can be i d e n t i f i e d w i t h suitable filters in ~(Y), by the above FACT. m i n i s t i c and n o n - d e t e r m i n i s t i c ST's We w i l l be able to treat deterin a u n i f o r m way by (with indeed it extends to arbitrary sober
(state transformations)
r e g a r d i n g t h e m as maps f r o m X into the space Filt(~(Y)) b a s i c open sets the G0 = {~I0 s ~}, for 0 ~ ~(Y)).
of filters in ~(Y)
674
T h e o r e m 4. ~(f): ~(Y)
let
(predicate transformers)
[~(Y) -> ~(X)] w h i c h satisfy p is monotonic and strict, between and preserves finite meets. Moreover, ~ cuts down to (i) and
an o r d e r - i s o m o r p h i s m (2) p is continuous
[X -> PSu(Y)]
(i.e. preserves
directed
p preserves
between
p is completely additive
(i.e. preserves
arbitrary
sups). the
Remark.
(concerning
(well-known)
for any f: X -> Filt(~(Y)), one uses the fact -> ~(X)
for example,
satisfying
T(p) (x) = {0ix ~ p(0)}; again, one readily checks that condition (i) implies that T(p) (x) is a filter. (A) T is a right inverse of ~ To
(i.e. that
true on cutting down in the ways (i.e. T(p) ~ T(q) iff p ! q)"
T - z(f) (x) = {0ix ~ ~(f) (0)} = {010 s f(x)} = f(x). It remains to show that ~ and T cut down appropriately. f: X -> 0 Filt(Q(Y)) 01 c 02 c Suppose that
(recall that this codomain is identified with PSu(Y)) , and let sequence in ~(Y). Suppose also that x ~ ~(f) (U0i).
... be an increasing
This means that U0. ~ f(x). Since f(x) is (Scott-)open, 0 i 6 f(x) for some i; thus ll x ~ ~(f) (0.) for some i. This shows that ~(f) is continuous. One shows similarly l that if p satisfies (i) and (2), then T(p) maps X into 0 Filt(~(Y)). Suppose now that f: X -> Y (here we are of course identifying Y with the space of completely prime filters in ~(Y)). Let (QI)%6I be a family of open sets in Y.
Suppose that x ~ ~(f) ( U 0 ) , in other words U0 ~ f(x). Since f(x) is c o m p l e t e l y II 11 prime, some 0 q f(x). Thus x 6 ~(f) ( 0 ) for some %.. This shows that ~(f) is 1 1 additive. Again, it is easy to See that if p satisfies conditions (i) and (2'), then ~(p) maps X into Y. B) Suppose p ~ q, that is p(0) c q(0) for all 0 6 ~(Y). Then, for each x s X, On the
T(p) (x) = {0ix E p(0) } c {0ix 6 q(0) } = T(q) (x) ; other hand, x ~ q(0). suppose ~(p ~ q).
Then for some x ~ X, 0 E Y we have x ~ p(0) while that is, ~(T(p) ! T(q)) . Thus strict mono-
675
tonicity obtains;
the theorem is proved. (more precisely, of part (2) of the theorem) is that
using the upper power domain/space and axiomatic semantics in the manner of Dijkstra. The viewpoint of the upper powerdomain/predicate that a process passes a test transformer approach is, of course, iff all its possible computations
(satisfies a property)
do so - that is, it must pass the test. ponds to the lower topology two (convex topology).
specialization orders will give three preorders and equivalence notions for processes. It is interesting to note that (independently of the above) de Nicola and Hennessy have recently developed exactly this approach to the equivalence of processes. [5]
Acknowledgements Discussions with Gordon Plotkin have been very helpful. [7] has proved to be a continuing, almost inexhaustible, Financial support has been provided by the References I. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. Apt, K., Plotkin, G., A Cook's tour of countable non-determinism. Proc. ICALP 1981, Springer-Verlag LNCS 115, pp. 479-494 (1981). Berge, C., Espaces Topologiques: Fonctions Multivoques. Dunod, Paris (1959). Continuous Lattices, Proceedings Bremen 1979, ed. Banaschewski and Hoffman, Springer LN Math. 871 (1981). de Bakker, J., Zucker, J., Denotational semantics of concurrency, Proc. 14th ACM STOC, pp. 153-158 (1982). de Nicola, R., Hennessy, M., Testing equivalences for processes, CSR-123-82, Dept. of Computer Science, Edinburgh (1982). Dijkstra, E., A Discipline of Programming, Prentice-Hall (1976). Gierz, G., Hofmann, K., Keimel, K., Lawson, J., Mislove, M., Scott, D., A Compendium of Continuous Lattices. Springer (1980). Hennessy, M., Plotkin, G., Full abstraction for a simple parallel programming language. Proc. MFCS, Springer LNCS 74, pp. 108-120 (1979). Hofmann, K., Mislove, M., Local compactness and continuous lattices: in [3] (pp, 209-248). Johnstone, P., Scott is not always sober: in [3] (pp. 283-284). Johnstone, P., Tychonoff's theorem without the axiom of choice, Fund. Math. 113, pp. 21-35 (1981). Johnstone, P., Stone Spaces, Cambridge U.P. (198?). Kuratowski, K., Topology. Revised edition, Academic Press and PWN (1966). Michael, E., Topologies on spaces of subsets, Trans. AMS 71,pp.152-182 (1951). Plotkin, G., A powerdomain construction, SIAM J. Comput. 5,pp. 452-487 (1976). Plotkin, G., Dijkstra's predicate transformers and Smyth's powerdomains, Abstract Software Specifications (ed. D. Bj~rner) LNCS 86 (1980). Plotkin, G., A powerdomain for countable non-determinism, Proc. ICALP 1982. Plotkin, G., Domains: notes for lecture course, Edinburgh (1981). Rogers, H., Theory of Recursive Functions. Smyth, M., Power domains, JCSS 16 (1978). Smyth, M., Powerdomain and hyperspace. To appear. Vietoris, L., Monatsh. f. Math. u. Phys. 31, pp. 173-204 (1921). Winskel, G., Events in Computation, Thesis, Edinburgh (1980). (U.K.) SERC. The comprehensive treatise source of inspiration.