Advertisement

On the Algebraic Specification of Domains

  • Bernhard Möller
  • Walter Dosch
Conference paper
Part of the Informatik-Fachberichte book series (INFORMATIK, volume 116)

Abstract

We explore the possibilities for the algebraic specification of semantic domains by continuous abstract types, that is, by abstract types with monotonicity, continuity and completeness constraints. In this framework, a domain results from the ideal completion of a term-generated algebra constituting its finite part. Then by construction, all finite elements of a domain can be denoted by finite terms. These finite elements are specified algebraically by conditional order relations describing the characteristic properties of the operations manipulating them. Properties of infinite elements can be inferred by continuity from the properties that hold for their finite approximations. The approach is illustrated by giving algebraic specifications of various domains and domain constructions.

Keywords

Hierarchic Model Ground Term Abstract Data Type Infinite Element Power Domain 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Literature

  1. [Bauer, Wössner 82]
    Bauer, F.L., Wössner, H.: Algorithmic Language and Program Development. Berlin: Springer 1982MATHCrossRefGoogle Scholar
  2. [Bauer et al. 85]
    Bauer, F.L., Berghammer, R., Broy, M., Dosch, W., Gnatz, R., Geiselbrechtinger, F., Hangel, E., Hesse, W., Krieg-Bruckner, B., Laut, A., Matzner, T., Möller, B., Nicki, F., Partsch, H., Pepper, P., Samel son, K., Wirsing, M., Wossner, H.: The Munich Project CIP. Volume I: The Wide Spectrum Language CIP-L. Lecture Notes in Computer Science 183. Berlin: Springer 1985MATHCrossRefGoogle Scholar
  3. [Broy, Wirsing 83]
    Broy, M., Wirsing, M.: Algebraic Definition of a Functional Programming Language and its Semantic Models. R.A.I.R.O. Informatique théorique 17:2, 137–161 (1983)MathSciNetMATHGoogle Scholar
  4. [Courcelle, Nivat 76]
    Courcelle, B., Nivat, M.: Algebraic Families of Interpretations. 17th Annual IEEE Symposium on Foundations of Computer Science, 1976, 137–146Google Scholar
  5. [Dosch, Möller 84]
    Dosch, W., Möller, B.: Busy and Lazy FP with Infinite Objects. Proceedings 1984 ACM Symposium on LISP and Functional Programming, Austin, Texas, August, 5–8, 1984, 282–292Google Scholar
  6. [Dybjer 84]
    Dybjer, P.: Domain Algebras. In: J. Paredaens (ed.): Automata, Languages and Programming, 11th Colloquium, Antwerp, Belgium, July 16–20, 1984. Lecture Notes in Computer Science 172. Berlin: Springer 1984, 138–150Google Scholar
  7. [Enrich, Lipeck 83]
    Enrich, H.D., Lipeck, U.: Algebraic Domain Equations. Theoretical Computer Science 27, 167–196 (1983)MathSciNetCrossRefGoogle Scholar
  8. [Goguen et al. 77]
    Goguen, J.A., Thatcher, J.W., Wagner, E.G., Wright, J.B.: Initial Algebra Semantics and Continuous Algebras. Journal ACM 24, 68–95 (1977)MathSciNetMATHCrossRefGoogle Scholar
  9. [Goguen et al .78]
    Goguen, J.A., Thatcher, J.W., Wagner, E.G.: An Initial Algebra Approach to the Specification, Correctness, and Implementation of Abstract Data Types. In: Yeh, R.T. (ed.): Current Trends in Programming Methodology. Vol. 3: Data Structuring. Englewood Cliffs, N.J.: Prentice Hall 1978, 80–149Google Scholar
  10. [Guessarian 81]
    Guessarian, I.: Algebraic Semantics. Lecture Notes in Computer Science 99. Berlin: Springer 1981MATHCrossRefGoogle Scholar
  11. [Guttag 75]
    Guttag, J.V.: The Specification and Application to Programming of Abstract Data Types. Ph. D. Thesis, University of Toronto, Department of Computer Science, Report CSRG-59, 1975Google Scholar
  12. [Hennessy, Plotkin 1979]
    Hennessy, M., Plotkin, G.: Full Abstraction for a Simple Parallel Programming Language. Proc. Mathematical Foundations of Computer Science 1979. Lecture Notes in Computer Science 74. Berlin: Springer 1979, 108–120Google Scholar
  13. [Lehmann, Smyth 81]
    Lehmann, D.J., Smyth, M.B.: Algebraic Specification of Data Types: A Synthetic Approach. Math. Systems Theory 14, 97–139 (1981)MathSciNetMATHCrossRefGoogle Scholar
  14. [Möller 83]
    Möller, B.: An Algebraic Semantics for Busy (Data-driven) and Lazy (Demand-driven) Evaluation and its Application to a Functional Language. In: Diaz, J. (ed.): Automata, Languages and Programming, 10th Colloquium, Barcelona, Spain, July 18–22, 1983. Lecture Notes in Computer Science 154. Berlin: Springer 1983, 513–526CrossRefGoogle Scholar
  15. [Möller 85]
    Möller, B.: On the Algebraic Specification of Infinite Objects — Ordered and Continuous Models of Algebraic Types. Acta Informatica (to appear)Google Scholar
  16. [Mosses 83]
    Mosses, P.D.: Abstract Semantic Algebras! In: Bjørfrner, D. (ed.): Formal Description of Programming Concepts — II. Proc. IF IP TC2 Working Conference, Garmisch-Partenkirchen, June 1–4, 1982. Amsterdam: North-Holland 1983, 45–70Google Scholar
  17. [Plotkin 76]
    Plotkin, G.D.: A Powerdomain Construction. SIAM Journal on Computing 5:3, 452–487 (1976)MathSciNetMATHCrossRefGoogle Scholar
  18. [Plotkin 81]
    Plotkin, G.D.: Algebraic Domains. Lecture Notes, Department of Computer Science, University of Edinburgh, 1981Google Scholar
  19. [Scott 70]
    Scott, D.S.: Outline of a Mathematical Theory of Computation. Proc. 4th Annual Princeton Conference on Information Sciences and Systems, 1970, 169–176. Also: Technical Monograph PRG-2, Oxford University, Computing Laboratory, Programming Research Group, 1970Google Scholar
  20. [Scott 82]
    Scott, D.S.: Domains for Denotational Semantics. In: Nielsen, M., Schmidt, E.M. (eds.): Automata, Languages and Programming, 10th Colloquium, Aarhus, Denmark, July 12–17, 1982. Lecture Notes in Computer Science 140. Berlin: Springer 1982, 577–613CrossRefGoogle Scholar
  21. [Smyth, Plotkin 82]
    Smyth, M.B., Plotkin, G.D.: The Category-Theoretic Solution of Recursive Domain Equations. SIAM Journal on Computing 11:4, 761–783 (1982)MathSciNetMATHCrossRefGoogle Scholar
  22. [Tarlecki, Wirsing 85]
    Tarlecki, A., Wirsing, M.: Continuous Abstract Data Types — Basic Machinery and Results. Manuscript, Fakultät für Informatik, Universität Passau, January 85Google Scholar
  23. [Vuillemin 74]
    Vuillemin, J.: Correct and Optimal Implementation of Recursion in a Simple Programming Language. J. Computer Systems Sc. 9, 332–354 (1984)MathSciNetCrossRefGoogle Scholar
  24. [Winskel 83]
    Winskel, G.: Non-deterministic Recursive Program Schemes and Powerdomains. Carnegie-Mellon University, Deptartment of Computer Science, Report CMU-CS-83–169, December 1983Google Scholar
  25. [Wirsing et al. 83]
    Wirsing, M., Pepper, P., Partsch, H., Dosen, W., Broy, M.: On Hierarchies of Abstract Data Types. Acta Informatica 20, 1–33 (1983)MathSciNetMATHCrossRefGoogle Scholar
  26. [Wright et al. 78]
    Right, J.B., Wagner, E.G., Thatcher, J.W.: A Uniform Approach to Inductive Posets and Inductive Closure. Theoretical Computer Science 7:1, 57–77 (1978)MathSciNetCrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1985

Authors and Affiliations

  • Bernhard Möller
    • 1
  • Walter Dosch
    • 1
  1. 1.Institut für InformatikTechnische Universität MünchenMünchen 2Deutschland

Personalised recommendations