Summary
In denotational semantics the meaning of a construct of a programming language is modelled by an element of a (semantic) domain. Domains are essentially ordered sets, in which every element may be approximated by a directed set of compact elements. We propose a new approach to domain construction using directed systems of certain finite subsets of a domain called sprouts. Every element of the domain can be considered as growing out from the sprouts, i.e., it can be uniquely approximated by an element of any given sprout. Sprouts consist only of compact elements and every compact element is contained in some of the sprouts. The directed system of sprouts fits neatly to the usual domain constructions, so we are able to describe the approximations of an element of a composed domain by the corresponding approximations in the component domains very exactly. Furthermore, we get a constructive and less abstract description of profinite domains than given by C. Gunter with one added feature: Given a domain functional τ, the inverse limit of the retraction sequence1, τ[1,], τ2[1,], ... is indeed the least of a certain subset of fixed points of τ, namely of those being the vertex of a cone that is “definable” in some sense.
Similar content being viewed by others
References
Gunter, C.A.: Profinite solutions for recursive domain equations. CMU-CS-85-107, Carnegie-Mellon University, Pittsburgh, Pa 1985
Gunter, C.A.: Comparing categories of domains. CMU-CS-85-141, Carnegie-Mellon University, Pittsburgh, Pa 1985
Larsen, K.G., Winskel, G.: Using information systems to solve recursive domain equations effectively. In: Kahn, G., MacQueen, D.B., Plotkin, G. (eds.) Semantics of data types, pp. 109–130. Lect. Notes Comput. Sci.173. Heidelberg Berlin New York: Springer 1984
Plotkin, G.: LCF considered as a programming language. Theor. Comput. Sci.5, 223–255 (1977)
Schmidt, G.: Semantik der Programmiersprachen. Institut für Informatik, Technische Universität München 1985 (Unpublished lecture notes)
Schmidt, G., Berghammer, R., Zierer, H.: Describing semantic domains with sprouts. In: Brandenburg, F., Vidal-Naquet, G., Wirsing, M. (eds.) 4th Symposium on Theoretical Aspects of Computer Science, pp. 299–310. February, 19–21, 1987, Passau. Lect. Notes Comput. Sci.247. Heidelberg Berlin New York: Springer 1987
Scott, D.S.: Continuous lattices. In: Lawvere, F.W. (ed.) Proc. Dalhousie Conf. on Toposes, Algebraic Geometry and Logic, pp. 97–136. Lect. Notes Math.274. Heidelberg Berlin New York: Springer 1972
Scott, D.S.: Domains for denotational semantics. In: Nielsen, M., Schmidt, E.M. (eds.) 9th Int. Coll. on Automata, Languages and Programming, pp. 577–613. Lect. Notes Comput. Sci.140. Heideberg Berlin New York: Springer 1982
Smyth, M.B.: The largest cartesian closed category of domains. Theoret. Comput. Sci.27, 109–119 (1983)
Smyth, M.B., Plotkin, G.D.: The category-theoretic solution of recursive domain equations. SIAM J. Comput.11, 761–783 (1982)
Stoy, J.E.: Denotational semantics: The Scott-Strachey approach to programming language theory. MIT Press 1977
Zierer, H.: Programmierung mit Funktionsobjekten: Konstruktive Erzeugung semantischer Bereiche und Anwendung auf die partielle Auswertung. Dissertation, Institut für Informatik, Technische Universität München 1988
Author information
Authors and Affiliations
Additional information
Dedicated to F.L. Bauer on the occasion of his 65th birthday
Rights and permissions
About this article
Cite this article
Schmidt, G., Berghammer, R. & Zierer, H. Describing semantic domains with sprouts. Acta Informatica 27, 217–245 (1989). https://doi.org/10.1007/BF00572989
Received:
Issue Date:
DOI: https://doi.org/10.1007/BF00572989