Retrieval in a module library using formal specifications: Preliminary search using syntactic properties

  • Werner Gaube
  • Heinrich C. Mayr
  • Peter C. Lockemann
Constructive And Combinatory Logic
Part of the Lecture Notes in Computer Science book series (LNCS, volume 204)


The paper addresses a problem that is urgent in industrial software manufacturing: the retrieval of reusable software components in a module base. Given the formal specification of a software task and a library of software modules together with their formal specifications (specification base), how to identify the modules that come closest to satisfying the task. It is argued that the problem is best solved in a stepwise fashion, where the first few steps deal entirely with the syntactic aspects of the specifications and the final steps with their semantic aspects. The paper concentrates on the former. Based on the specification technique of Operational Replacement Schemes (a close relative of algebraic specification techniques), a sequence of search steps are introduced starting with the comparison of some simple characteristics, and ending with a decision procedure on structural equivalence. Each step uses symbolic computation and resolution techniques. The discussion is mainly restricted to isomorphic specifications, some aspects of ‘similarity’ between specifications are outlined in the paper's conclusions.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. KuLi83.
    Kutzler, B; Lichtenberger, F: Bibliography On Abstract Data Types Informatik Fachberichte 68. Springer Verlag 1983Google Scholar
  2. Kla83.
    Klaeren, H. A.: Algebraische Spezifikation, Springer-Verlag Berlin Heidelberg New York 1983Google Scholar
  3. GHM78.
    Guttag, J. V; Horowitz, E; Musser D. R: The Design of Data Type Specifications in: Yeh, R. T. (ed.): Current Trends in Programming Methodology, Vol. IV Data Structuring, Prentice-Hall 1978, pp. 60–79Google Scholar
  4. GTWW75.
    Goguen, J. A; Thatcher, J. W; Wagner E. G; Wrigth, J. B: Abstract data types as initial algebras and the correctness of data representations Proc. of Confr. on Computer Graphics, Pattern Recognition and Data Structures, 1975Google Scholar
  5. BeDe81.
    Bergman, M; Deransart, P: Abstract Data Types and Rewriting Systems: Application to the programming of algebraic abstract data types in PROLOG. In: Astesiano, E; Böhm, C: CAAP81, LNCS 112Google Scholar
  6. LMD79.
    Lockermann, P. C.; Mayr, H. C.; Dittrich, K. R.: A Pragmatic Approach To The Algebraic Specification Of Software Modules. Universität Karlsruhe, Fakultät für Informatik, Interner Bericht 1979Google Scholar
  7. MLD80.
    Mayr, H. C.; Lockemann, P. C.; Dittrich, K. R.: Operational Replacement Schemes: A Practice Oriented Approach To The Specification Of Abstract Data Types. Universität Karlsruhe, Fakultät für Informatik, Interner Bericht 1979Google Scholar
  8. Herz83.
    Herzog, W: Eindeutigkeit und Vollständigkeit von ORS-Spezifikationen. Diplomarbeit, Fakultät für Informatik, Universität Karlsruhe, 1983Google Scholar
  9. GLM84a.
    Gaube, W.; Lockemann, P. C.; Mayr, H. C.: ORS-Spezifikationslabor: Generierung von PROLOG-Programmen aus Definitionen Abstrakter Datentypen. Universität Karlsruhe, Fakultät für Informatik, Interner Bericht 1984Google Scholar
  10. GLM84b.
    Gaube, W.; Lockemann, P. C.; Mayr, H. C.: ORS-Spezifikationslabor: Grobrecherche zur Bestimmung isomorpher Spezifikationen. Universität Karlsruhe, Fakultät für Informatik, Interner Bericht 1984Google Scholar
  11. Pro82.
    Proche, K: ORSEC: Un Outil de Recherche des Specifications equivalents par comparaison d'exemples These, Universite de Nancy 1, 1982Google Scholar
  12. DrEh84.
    Drosten, K; Ehrich, H.-D.: Translating Algebraic Specifications to Prolog Programs, Technische Universität Braunschweig, Informatik-Berichte, Bericht Nr. 84-08Google Scholar
  13. ReVe82.
    Remy, J. L; Veloso, P. A. S: Comparing Data Type Specifications via Their Normal Forms, Int. J. of Computer and Information Sciences, Vol. 11, No. 3, 1982Google Scholar
  14. LBFG83.
    Leibrandt, U; Bernhardt, L; Folkjaer, P; Geldmacher, W: IF Prolog User's Manual, Version 1.0, InterFace Computer GmbH, München, 1983Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1985

Authors and Affiliations

  • Werner Gaube
    • 1
  • Heinrich C. Mayr
    • 1
  • Peter C. Lockemann
    • 1
  1. 1.Institut für Informatik IIUniversität KarlsruheGermany

Personalised recommendations