Stable Neighbourboods

A less standard but important framework for the denotational semantics of programming languages is the category of dI-domains with stable functions. Stable functions were discovered by Berry [2] from the study of the full-abstraction problem for typed lb-calculi. He introduced the category of dI-domains, which are special kinds of Scott domains with a more operational nature. The functions on dI-domains are stable functions under an order which takes into account the manner in which they compute. Stable functions have also found use in modelling concurrency. The stable event structures of Winskel [9] give a category in which constructions like the partially synchronous product can be used to model languages like CCS and CSP quite smoothly. Another important category which uses stable functions is the coherent spaces brought into popularity by Girard. They have been recently used to model system F [S], and for a semantics of linear logic [6]. Topological concepts have been shown to be very useful in computer science. We can think of a topological space as a data type, open sets as properties, and points in