Skip to main content
Log in

On the algebraic specification of infinite objects — ordered and continuous models of algebraic types

  • Published:
Acta Informatica Aims and scope Submit manuscript

Summary

The concept of algebraic types is adapted to allow axiomatic characterizations of ordered and continuous algebras; infinite objects are then limit points in the carriers of certain continuous algebras. We mainly study implicative types, i.e., types the axioms of which are conditional inequations describing partial orders. The isomorphism classes of termgenerated ordered models of an implicative type are shown to form a complete lattice under the homomorphism ordering; this includes the wellknown initiality results for equational and conditional types as special cases. For types whose axioms specify strictness of the operations, the initial models are shown to correspond to flat domains.

As a special kind of continuous algebras we consider inductively generated algebras, viz. the ideal completions of term-generated ordered algebras. For an inequational type, i.e., an implicative type where all axiom premises are empty, the completion of models always yields models again, whereas for implicative types this holds only in restricted cases. One such case is provided by hierarchic types which are complete and consistent relative to their primitive parts, and which satisfy certain conditions about limit points.

Examples of algebras that can be specified by such types include those of finite and infinite streams, of sets of atoms under the Egli-Milner ordering, Milner's synchronisation trees, and that of a simple functional language over the natural numbers.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Backus, J.: Can programming be liberated from the von Neumann style? A functional style and its algebra of programs. Commun. ACM 21, 613–641 (1978)

    Google Scholar 

  2. Bauer, F.L.: Algorithmische Sprachen. Vorlesungsskriptum, Kap. 1–3. Institut für Informatik der TU München, July 1977

  3. Bauer, F.L.: Detailization and lazy evaluation, infinite objects and pointer representation. In: Program construction (F.L. Bauer, M. Broy, eds.), pp. 406–420. Lect. Notes Comput. Sci., vol. 69. Berlin: Springer 1979

    Google Scholar 

  4. Bauer, F.L., Wössner, H.: Algorithmic Language and Program Development. Berlin: Springer 1982

    Google Scholar 

  5. Bauer, F.L., Berghammer, R., Broy, M., Dosch, W., Geiselbrechtinger, F., Gnatz, R., Hangel, E., Hesse, W., Krieg-Brückner, B., Laut, A., Matzner, T., Möller, B., Nickl, F., Partsch, H., Pepper, P., Samelson, K., Wirsing, M.: The Munich project CIP, vol. I: The wide spectrum language CIP-L. Lect. Notes Comput. Sci., vol. 183. Berlin: Springer 1985

    Google Scholar 

  6. Birkhoff, G.: Lattice theory (3rd edition). Am. Math. Soc. Coll. Publ., vol. XXV. Providence, R.I.: AMS 1967

    Google Scholar 

  7. Birkhoff, G., Lipson, J.D.: Heterogeneous algebras. J. Comb. Theory 8, 115–133 (1970)

    Google Scholar 

  8. Bleicher, M.N., Schneider, H.: Completions of partially ordered sets and universal algebras. Acta Math. Acad. Sci. Hung. Tomus 17 (3–4), 271–301 (1966)

    Google Scholar 

  9. Broy, M.: On the Herbrand Kleene universe for nondeterministic computations. In: Mathematical Foundations of Computer Science 1984 (M.P. Chytil, V. Koubek, eds.), pp. 214–222. Lect. Notes Comput. Sci., vol. 176. Berlin: Springer 1984

    Google Scholar 

  10. Broy, M., Wirsing, M.: Initial versus terminal algebra semantics for partially defined abstract types. Institut für Informatik der TU München, TUM-I8018, 1980

  11. Courcelle, B., Nivat, M.: Algebraic families of interpretations. Proc. 17th Annual IEEE Symposium on Foundations of Computer Science, Houston, Tex., 137–146 (Oct. 25–27, 1976)

  12. Delgado Kloos, C., Dosch, W., Möller, B.: An algebra of agents. Proc. VI Congreso de Informática y Automática, Madrid, 15–18 October (To appear). Extended version: Delgado Kloos, C., Dosch, W., Möller, B.: Algebraic specification of a Language for describing communicating agents. Institut für Informatik der TU München, TUM-I8510, 1985

  13. Dosch, W., Möller, B.: An algebraic semantics for Backus' functional programming language with infinite objects. In: GI-13. Jahrestagung (I. Kupka, ed.), pp. 67–85. Informatik-Fachberichte, vol. 73. Berlin: Springer 1983

    Google Scholar 

  14. Dosch, W., Möller, B.: Lazy and busy FP with infinite objects. Proc. 1984 ACM Symposium on LISP and Functional Programming, Austin, Tex., pp. 282–292 (August 6–8, 1984)

  15. Ehrich, H.-D., Lipeck, U.: Algebraic domain equations. Theor. Comput. Sci. 27, 167–196 (1983)

    Google Scholar 

  16. Friedman, D.P., Wise, D.S.: CONS should not evaluate its arguments. In: Automata, languages and programming (S. Michaelson, R. Milner, eds.), pp. 257–285. Edinburgh: Edinburgh University Press 1976

    Google Scholar 

  17. Goguen, J.A.: Abstract errors for abstract data types. In: Formal description of programming concepts (E.J. Neuhold, ed.), pp. 491–525. Amsterdam: North-Holland 1978

    Google Scholar 

  18. Goguen, J.A., Thatcher, J.W., Wagner, E.G., Wright, J.B.: Initial algebra semantics and continuous algebras. J. ACM 24, 68–95 (1977)

    Google Scholar 

  19. Goguen, J.A., Thatcher, J.W., Wagner, E.G.: An initial algebra approach to the specification, correctness, and implementation of abstract data types. In: Current trends in programming methodology, vol. 3: Data structuring (R.T. Yeh, ed.), pp. 80–149. Englewood Cliffs, N.J.: Prentice Hall 1978

    Google Scholar 

  20. Guttag, J.V.: The specification and application to programming of abstract data types. PH.D. Thesis, University of Toronto, Department of Computer Science, Rep. CSRG-59, 1975

  21. Henderson, P., Morris, J.H.: A lazy evaluator. Proc. 3rd ACM Symposium on Principles of Programming Languages, pp. 95–103 (1976)

  22. Hennessy, M., Milner, R.: Algebraic laws for nondeterminism and concurrency. University of Edinburgh, Department of Computer Science, Internal Report CSR-133–83, June 1983

  23. Laut, A.: Von abstrakter Syntax zu verketteten Bäumen — Entwicklung einer Rechenstruktur für die Programm-Manipulation. Institut für Informatik der TU München, TUM-I8114, 1981

  24. Laut, A.: Developing algebraic specifications of threaded data structure implementations. In: Werkzeuge der Programmiertechnik (G. Goos, ed.), pp. 28–40. Informatik-Fachberichte, vol. 43. Berlin: Springer 1981

    Google Scholar 

  25. Levy, M.R.: Data types with sharing and circularity. Ph.D. Thesis, University of Waterloo, Department of Computer Science 1978

  26. Levy, M.R., Maibaum, T.S.E.: Continuous data types. SIAM J. Comput. 11, 201–216 (1982)

    Google Scholar 

  27. Markowsky, G., Rosen, B.: Bases for chain-complete posets. Proc. 16th Annual Symposium on Foundations of Computer Science, Berkeley, pp. 34–47 (Oct. 13–15, 1975)

  28. McCarthy, J.: Recursive functions of symbolic expressions and their computation by machine, Part I. Commun. ACM 3, 184–195 (1960)

    Google Scholar 

  29. Milner, R.: A calculus of communicating systems. Lect. Notes Comput. Sci., vol. 92. Berlin: Springer 1980

    Google Scholar 

  30. Möller, B.: Unendliche Objekte und Geflechte. Fakultät für Mathematik und Informatik der TU München, Dissertation, TUM-I8213, 1982

  31. Möller, B.: An algebraic semantics for busy (data-driven) and lazy (demand-driven) evaluation and its application to a functional language. In: Automata, languages and programming (J. Diaz, ed.), pp. 513–526. Lect. Notes Comput. Sci., vol. 154. Berlin: Springer 1983

    Google Scholar 

  32. Möller, B., Dosch, W.: On the algebraic specification of domains. In: Proc. 3rd Workshop on Theory and Application of Abstract Data Types (H.-J. Kreowski, ed.). Informatik-Fachberichte. Berlin, Heidelberg, New York: Springer (To appear)

  33. Nivat, M.: On the interpretation of recursive polyadic program schemes. Istituto Nazionale di Alta Matematica, Symposia Matematica XV, pp. 255–281. London: Academic Press 1975

    Google Scholar 

  34. Nivat, M.: Nondeterministic programs: An algebraic overview. In: Information Processing 80 (S.H. Lavington, ed.), pp. 17–28. Amsterdam: North-Holland 1980

    Google Scholar 

  35. Pinegger, T.: Verzögerte Auswertung von Algorithmen über unendlichen Mengen. Institut für Informatik der TU München, Diplomarbeit 1982

  36. Plotkin, G.D.: A powerdomain construction. SIAM J. Comput. 5, 452–487 (1976)

    Google Scholar 

  37. Scott, D.S.: Outline of a mathematical theory of computation. Proc. 4th Annual Princeton Conference on Information Sciences and Systems, pp. 169–176 (1970); Technical Monograph PRG-2, Oxford University, Computing Laboratory, Programming Research Group 1970

  38. Scott, D.S.: The lattice of flow diagrams. In: Symposium on the semantics of programming languages (E. Engeler, ed.), pp. 311–372. Lect. Notes Math., vol. 188. Berlin: Springer 1971

    Google Scholar 

  39. Tarlecki, A., Wirsing, M.: Continuous abstract data types — Basic machinery and results. Universität Passau, Fakultät für Informatik, January 1985

  40. Thatcher, J.W., Wagner, E.G., Wright, J.B.: Specification of abstract data types using conditional axioms. IBM Research Report RC6814, 1976

  41. Vuillemin, J.: Correct and optimal implementations of recursion in a simple programming language. J. Comput. Syst. Sci. 9, 332–354 (1974)

    Google Scholar 

  42. Wand, M.: Final algebra semantics and data type extensions. J. Comput. Syst. Sci. 19, 27–44 (1979)

    Google Scholar 

  43. Wirsing, M., Pepper, P., Partsch, H., Dosch, W., Broy, M.: On hierarchies of abstract data types. Acta Inf. 20, 1–33 (1983)

    Google Scholar 

  44. Wright, J.B., Wagner, E.G., Thatcher, J.W.: A uniform approach to inductive posets and inductive closure. Theor. Comput. Sci. 7, 57–77 (1978)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Additional information

This research was carried out within the Sonderforschungsbereich 49 “Programmiertechnik”, Munich, Federal Republic of Germany

Rights and permissions

Reprints and permissions

About this article

Cite this article

Möller, B. On the algebraic specification of infinite objects — ordered and continuous models of algebraic types. Acta Informatica 22, 537–578 (1985). https://doi.org/10.1007/BF00267044

Download citation

  • Received:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF00267044

Keywords

Navigation