Power Domains
   HOME

TheInfoList



OR:

In
denotational semantics In computer science, denotational semantics (initially known as mathematical semantics or Scott–Strachey semantics) is an approach of formalizing the meanings of programming languages by constructing mathematical objects (called ''denotations'' ...
and
domain theory Domain theory is a branch of mathematics that studies special kinds of partially ordered sets (posets) commonly called domains. Consequently, domain theory can be considered as a branch of order theory. The field has major applications in computer ...
, power domains are domains of nondeterministic and
concurrent Concurrent means happening at the same time. Concurrency, concurrent, or concurrence may refer to: Law * Concurrence, in jurisprudence, the need to prove both ''actus reus'' and ''mens rea'' * Concurring opinion (also called a "concurrence"), a ...
computations. The idea of power domains for functions is that a nondeterministic function may be described as a deterministic
set Set, The Set, SET or SETS may refer to: Science, technology, and mathematics Mathematics *Set (mathematics), a collection of elements *Category of sets, the category whose objects and morphisms are sets and total functions, respectively Electro ...
-valued function, where the set contains all values the nondeterministic function can take for a given argument. For concurrent systems, the idea is to express the set of all possible computations. Roughly speaking, a power domain is a domain whose elements are certain
subset In mathematics, Set (mathematics), set ''A'' is a subset of a set ''B'' if all Element (mathematics), elements of ''A'' are also elements of ''B''; ''B'' is then a superset of ''A''. It is possible for ''A'' and ''B'' to be equal; if they are ...
s of a domain. Taking this approach naively, though, often gives rise to domains that don't quite have the desired properties, and so one is led to increasingly complicated notions of power domain. There are three common variants: the Plotkin, upper, and lower power domains. One way to understand these concepts is as free models of theories of nondeterminism. For most of this article we use the terms "domain" and "continuous function" quite loosely, meaning respectively some kind of ordered structure and some kind of limit-preserving function. This flexibility is genuine; for example, in some concurrent systems it is natural to impose the condition that every message sent must eventually be delivered. However, the limit of a chain of approximations in which a message was not delivered, would be a completed computation in which the message was never delivered! A modern reference to this subject is the chapter of Abramsky and Jung
994 Year 994 ( CMXCIV) was a common year starting on Monday (link will display the full calendar) of the Julian calendar. Events By place Byzantine Empire * September 15 – Battle of the Orontes: Fatimid forces, under Turkish gener ...
Older references include those of Plotkin 983, Chapter 8and Smyth
978 Year 978 ( CMLXXVIII) was a common year starting on Tuesday (link will display the full calendar) of the Julian calendar. Events By place Byzantine Empire * Battle of Pankaleia: Rebel forces under General Bardas Skleros are defeated ...


Power domains as free models of theories of non-determinism

Domain theorists have come to understand power domains abstractly as free models for theories of non-determinism. Just as the finite-powerset construction is the
free semilattice In mathematics, in the area of order theory, a free lattice is the free object corresponding to a lattice. As free objects, they have the universal property. Formal definition Any set ''X'' may be used to generate the free semilattice ''FX''. The ...
, the powerdomain constructions should be understood abstractly as free models of theories of non-determinism. By changing the theories of non-determinism, different power domains arise. The abstract characterisation of powerdomains is often the easiest way to work with them, because explicit descriptions are so intricate. (One exception is the Hoare powerdomain, which has a rather straightforward description.)


Theories of non-determinism

We recall three theories of non-determinism. They are variations of the theory of
semilattice In mathematics, a join-semilattice (or upper semilattice) is a partially ordered set that has a join (a least upper bound) for any nonempty finite subset. Dually, a meet-semilattice (or lower semilattice) is a partially ordered set which has a mee ...
s. The theories are not algebraic theories in the conventional sense, because some involve the order of the underlying domain. All theories have one sort ''X'', and one
binary operation In mathematics, a binary operation or dyadic operation is a rule for combining two elements (called operands) to produce another element. More formally, a binary operation is an operation of arity two. More specifically, an internal binary op ...
∪. The idea is that the operation takes two combinations and returns the non-deterministic choice of them. The Plotkin powertheory (after
Gordon Plotkin Gordon David Plotkin, (born 9 September 1946) is a theoretical computer scientist in the School of Informatics at the University of Edinburgh. Plotkin is probably best known for his introduction of structural operational semantics (SOS) and hi ...
) has the following axioms: * Idempotency: ''x'' ∪ ''x'' = ''x'' * Commutativity: ''x'' ∪ ''y'' = ''y'' ∪ ''x'' * Associativity: (''x'' ∪ ''y'') ∪ ''z'' = ''x'' ∪ (''y'' ∪ ''z'') The lower (or Hoare, after
Tony Hoare Sir Charles Antony Richard Hoare (Tony Hoare or C. A. R. Hoare) (born 11 January 1934) is a British computer scientist who has made foundational contributions to programming languages, algorithms, operating systems, formal verification, and c ...
) powertheory consists of the Plotkin powertheory augmented with the inequality * ''x'' ≤ ''x'' ∪ ''y''. The upper (or Smyth, after M. B. Smyth) powertheory consists of the Plotkin powertheory augmented with the inequality * ''x'' ∪ ''y'' ≤ ''x''.


Models of the powertheories

A model of the Plotkin powertheory is a continuous
semilattice In mathematics, a join-semilattice (or upper semilattice) is a partially ordered set that has a join (a least upper bound) for any nonempty finite subset. Dually, a meet-semilattice (or lower semilattice) is a partially ordered set which has a mee ...
: it is a semilattice whose carrier is a domain and for which the operation is continuous. Note that the operator need not be a meet or join for the order of the domain. A homomorphism of continuous semilattices is a continuous function between their carriers that respects the lattice operator. Models of the lower powertheory are called inflationary semilattices; there is an additional requirement that the operator behave a little like a join for the order. For the upper powertheory, models are called deflationary semilattices; here, the operator behaves a little like a meet.


Power domains as free models

Let ''D'' be a domain. The Plotkin powerdomain on ''D'' is the free model of the Plotkin powertheory over ''D''. It is defined to be (when it exists) a model ''P''(''D'') of the Plotkin powertheory (i.e. a continuous semilattice) equipped with a continuous function ''D'' → ''P''(''D'') such that for any other continuous semilattice ''L'' over ''D'', there is a unique continuous semilattice homomorphism ''P''(''D'') → ''L'' making the evident diagram commute. Other powerdomains are defined abstractly in a similar manner.


Explicit descriptions of power domains

Let ''D'' be a domain. The lower power domain can be defined by * ''P'' 'D''= where ::::''closure'' 'A''= . In other words, ''P'' 'D''is the collection of downward-closed subsets of ''D'' that are also closed under existing least upper bounds of directed sets in ''D''. Note that while the ordering on ''P'' 'D''is given by the subset relation, least upper bounds do not in general coincide with unions. It is important to check which properties of domains are preserved by the power domain constructions. For example, the Hoare powerdomain of an ω-complete domain is again ω-complete.


Power domains for concurrency and Actors


Clinger's power domain

Clinger
981 Year 981 ( CMLXXXI) was a common year starting on Saturday (link will display the full calendar) of the Julian calendar. Events Births * Abu'l-Qasim al-Husayn ibn Ali al-Maghribi, Arab statesman (d. 1027) * Giovanni Orseolo, Venetian ...
constructed a power domain for the
Actor model The actor model in computer science is a mathematical model of concurrent computation that treats ''actor'' as the universal primitive of concurrent computation. In response to a message it receives, an actor can: make local decisions, create more ...
building on the base domain of Actor event diagrams, which is incomplete. See Clinger's model.


Timed diagrams power domain

Hewitt 006constructed a power domain for the
Actor model The actor model in computer science is a mathematical model of concurrent computation that treats ''actor'' as the universal primitive of concurrent computation. In response to a message it receives, an actor can: make local decisions, create more ...
(which is technically simpler and easier to understand than Clinger's model) building on a base domain of timed Actor event diagrams, which is complete. The idea is to attach an arrival time for each message received by an Actor. See Timed Diagrams Model.


Connections with topology and the Vietoris space

Domains can be understood as
topological space In mathematics, a topological space is, roughly speaking, a geometrical space in which closeness is defined but cannot necessarily be measured by a numeric distance. More specifically, a topological space is a set whose elements are called points ...
s, and, in this setting, the power domain constructions can be connected with the ''space of subsets'' construction introduced by Leopold Vietoris. See, for instance, myth 1983


References

*Irene Greif. ''Semantics of Communicating Parallel Processes'' MIT EECS Doctoral Dissertation. August 1975. * Joseph E. Stoy, ''Denotational Semantics: The Scott-Strachey Approach to Programming Language Semantics''. MIT Press, Cambridge, Massachusetts, 1977. (A classic if dated textbook.) * Gordon Plotkin. ''A powerdomain construction''
SIAM Journal on Computing The ''SIAM Journal on Computing'' is a scientific journal focusing on the mathematical and formal aspects of computer science. It is published by the Society for Industrial and Applied Mathematics (SIAM). Although its official ISO abbreviation is ...
September 1976. *
Carl Hewitt Carl Eddie Hewitt () is an American computer scientist who designed the Planner programming language for automated planningCarl Hewitt''PLANNER: A Language for Proving Theorems in Robots''IJCAI. 1969. and the actor model of concurrent computing, ...
and Henry Baker ''Actors and Continuous Functionals'' Proceeding of IFIP Working Conference on Formal Description of Programming Concepts. August 1–5, 1977. * Henry Baker. ''Actor Systems for Real-Time Computation'' MIT EECS Doctoral Dissertation. January 1978. * Michael Smyth. ''Power domains''
Journal of Computer and System Sciences The ''Journal of Computer and System Sciences'' (JCSS) is a peer-reviewed scientific journal in the field of computer science. ''JCSS'' is published by Elsevier, and it was started in 1967. Many influential scientific articles have been publishe ...
. 1978. * George Milne and
Robin Milner Arthur John Robin Gorell Milner (13 January 1934 – 20 March 2010), known as Robin Milner or A. J. R. G. Milner, was a British computer scientist, and a Turing Award winner.
. ''Concurrent processes and their syntax''
JACM The ''Journal of the ACM'' is a Peer review, peer-reviewed scientific journal covering computer science in general, especially theoretical aspects. It is an official journal of the Association for Computing Machinery. Its current editor-in-chief is ...
. April, 1979. * CAR Hoare. ''Communicating Sequential Processes'' CACM. August, 1978. *
Nissim Francez Nissim Francez (Hebrew: נסים פרנסיז; born: 19 January 1944) is an Israeli professor, emeritus in the computer science faculty at the Technion, and former head of computational linguistics laboratory in the faculty. Early life an ...
, CAR Hoare, Daniel Lehmann, and Willem de Roever. ''Semantics of nondeterminism, concurrency, and communication'' Journal of Computer and System Sciences. December 1979. * Jerald Schwartz ''Denotational semantics of parallelism'' in Semantics of Concurrent Computation. Springer-Verlag. 1979. * William Wadge. ''An extensional treatment of dataflow deadlock'' Semantics of Concurrent Computation. Springer-Verlag. 1979. * Ralph-Johan Back. ''Semantics of Unbounded Nondeterminism''
ICALP ICALP, the International Colloquium on Automata, Languages, and Programming is an academic conference organized annually by the European Association for Theoretical Computer Science and held in different locations around Europe. Like most theoret ...
1980. * David Park. ''On the semantics of fair parallelism'' Proceedings of the Winter School on Formal Software Specification. Springer-Verlarg. 1980. * Will Clinger, ''Foundations of Actor Semantics''. MIT Mathematics Doctoral Dissertation, June 1981. * Gordon Plotkin. ''Domains (Pisa notes)''. 1983. Available fro

* M. B. Smyth, ''Power domains and predicate transformers: A topological view'', LNCS 154, Springer, 1983. * S. Abramsky, A. Jung: ''Domain theory''. In S. Abramsky, D. M. Gabbay, T. S. E. Maibaum, editors, Handbook of Logic in Computer Science, vol. III. Oxford University Press, 1994. ({{ISBN, 0-19-853762-X) (downloa
PDFPS.GZ
Denotational semantics