Partial algebras flow from algebraic specifications

  • Hans-Jörg Kreowski
Petri Nets, Algebraic Specification
Part of the Lecture Notes in Computer Science book series (LNCS, volume 267)


The aim of this paper is to introduce and to investigate a method for specifying algebras with partial functions, while maintaining the simpler framework of total algebras and conventional specifications. For this purpose, an ordinary algebraic specification SPEC is equipped with a subspecification BASE, and each SPEC-algebra is equipped with a BASE-homomorphism distinguishing a BASE-part of the SPEC-algebra. These modifications, yielding the notions of based specification and of based algebra, do not seriously affect the semantic properties of algebraic specifications. In particular, the initial SPEC-algebra can simply be transformed into an initial based algebra. Then one can restrict a SPEC-algebra to its distinguished BASE-part. In this way, one gets a SPEC-algebra with operations that may be partial. The construction applies especially to the initial based algebra, the operations of which can be shown to be computable in a certain sense. Conversely, it turns out that each computable function on natural numbers can be specified as an operation of the initial based algebra of a based specification.


Data Type Partial Function Computable Function Partial Algebra Abstract Data Type 
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.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    M. Broy, P. Pepper, M. Wirsing: On the Algebraic Definition of Programming Languages, to appear in TOPLAS.Google Scholar
  2. [2]
    M. Broy, M. Wirsing: Partial Abstract Types, Acta Informatica 18 (1982), 47–64.CrossRefGoogle Scholar
  3. [3]
    P. Burmeister: Free partial algebras, J. reine u. angewandte Math. 241 (1970), 75–86.Google Scholar
  4. [4]
    P. Burmeister: Quasi-Equational Logic for Partial Algebras, Lect. Notes in Comp. Sci. 117 (1981), 71–80.Google Scholar
  5. [5]
    H. Ehrig, B. Mahr: Fundamentals of Algebraic Specification 1 — Equations and Initial Semantics, Springer (1985).Google Scholar
  6. [6]
    J.A. Goguen, K. Parsaye-Ghomi: Algebraic Denotational Semantics Using Parameterized Abstract Modules, Lect. Not. Comp. Sci. 107 (1981), 292–309.Google Scholar
  7. [7]
    J.A. Goguen, J.W. Thatcher, E.G. Wagner: An Initial Algebra Approach to the Specification, Correctness and Implementation of Abstract Data Types, in: R. Yeh (ed.): Current Trends in Programming Methodology, Vol.4, Prentice-Hall (1978), 80–149.Google Scholar
  8. [8]
    G. Grätzer: Universal Algebra, Princeton, van Nostrand (1968).Google Scholar
  9. [9]
    J.V. Guttag: The Specification and Application to Programming of Abstract Data Types, Ph.D. Thesis, University of Toronto (1975).Google Scholar
  10. [10]
    C.A.R. Hoare: Proof of Correctness of Data Representations, Acta Informatica 1 (1972), 271–281.CrossRefGoogle Scholar
  11. [11]
    H. Höft: Weak and Strong Equations in Partial Algebras, Algebra universalis 3 (1973), 203–215.Google Scholar
  12. [12]
    R. John: Gültigkeitsbegriffe für Gleichungen in partiellen Algebren, Math. Zeitschrift 159 (1978), 25–35.CrossRefGoogle Scholar
  13. [13]
    A.J. Kfoury, R.N. Moll, M.A. Arbib: A Programming Approach to Computability, Springer (1982).Google Scholar
  14. [14]
    H. Klaeren: Algebraische Spezifikation — eine Einführung, Springer (1983).Google Scholar
  15. [15]
    H.-J. Kreowski, H.W. Schmidt: Some Algebraic Concepts of the Specification Language SEGRAS and Their Initial Semantics, GMD-Studie Nr.93 (1984).Google Scholar
  16. [16]
    P. Mosses: A Basic Abstract Semantic Algebra, Lect. Not. Comp.Sci. 173 (1984), 87–104.Google Scholar
  17. [17]
    H. Reichel: Theorie der Äquoide, Dissertation B, Humboldt University, Berlin 1979.Google Scholar
  18. [18]
    H. Reichel: Structural Induction on Partial Algebras, Mathematical Research · Mathematische Forschung Band 18, Akademie-Verlag, Berlin 1984.Google Scholar
  19. [19]
    J. Schmidt: A General Existence Theorem on Partial Algebras and its Special Cases, Coll. Math.14 (1966), 73–87.Google Scholar
  20. [20]
    J. Slomiński: Peano-Algebras and Quasi-Algebras, Dissertationes Math. 62 (1968).Google Scholar
  21. [21]
    J.W. Thatcher, E.G. Wagner, J.B. Wright: More on Advice on Structuring Compilers and Proving Them Correct, Theoretical Computer Science 15 (1981), 223–249.CrossRefGoogle Scholar
  22. [22]
    J.W. Thatcher, E.G. Wagner, J.B. Wright: Data Type Specification: Parameterization and the Power of Specification Techniques, ACM TOPLAS 4 (1982), 711–732.CrossRefGoogle Scholar
  23. [23]
    S. Zilles: Algebraic Specification of Data Types, MIT-Proj. MAC Progr.Rep.11(1974).Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1987

Authors and Affiliations

  • Hans-Jörg Kreowski
    • 1
  1. 1.Fachbereich Mathematik und InformatikUniversität BremenBremen 33

Personalised recommendations