Towards executable specifications using conditional axioms

  • K. Drosten
Contibuted Papers
Part of the Lecture Notes in Computer Science book series (LNCS, volume 166)

Abstract

Executing algebraic specifications is done by considering the equations as directed rules from left to right in order to compute normal forms. To improve the expressiveness of algebraic specifications, we not only admit pure equations but conditional ones having the form of positive Horn clauses. Based on a hierarchical approach where conditions have to be evaluated by means of axioms at lower levels, syntactical criteria are provided which guarantee the Church-Rosser property and, therefore, the well-definedness of the operational semantics. Besides, these criteria turn out to be sufficient for the termination of the full substitution strategy as well. Automatic computation of normal forms is possible if each proper subspecification has the finite termination property additionally.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. ADJ 78.
    Goguen, J.A./ Thatcher, J.W./Wagner, E.G.: An Initial Algebra Approach to the Specification, Correctness and Implementation of Abstract Data Types. Current Trends in Programming Methodology, Vol.IV (R.T. Yeh ed.), Prentice Hall, Englewood Cliffs, 1978Google Scholar
  2. ADJ 79.
    Thatcher, J.W./ Wagner, E.G./ Wright, J.B.: Data Type Specification: Parameterization and the Power of Specification Techniques. ACM Transactions on Programming Languages and Systems, Vol.4, 1982 also: IBM Research Report RC 7757, 1979Google Scholar
  3. BG 81.
    Burstall, R.M./ Goguen, J.A.: An Informal Introduction to Specifications Using CLEAR. The Correctness Problem in Computer Science (R. Boyer/J. Moore eds.), Academic Press, New York, 1981Google Scholar
  4. BK 82.
    Bergstra, J.A./ Klop, J.W.: Conditional Rewrite Rules: Confluency and Termination. Report No. IW 198/82, Dept. of Computer Science, Mathematisch Centrum Amsterdam, 1982Google Scholar
  5. DGEL 82.
    Drosten,K./ Gogolla,M./ Ehrich,H.-D./ Lipeck,U.: A Hierarchical Approach to an Operational Semantics for Conditional Algebraic Specifications. Forschungsbericht Nr. 144/82, Abt. Informatik, Univ. Dortmund, 1982Google Scholar
  6. Dr 83.
    Drosten,K.: Towards Executable Specifications Using Conditional Axioms. Bericht Nr. 83-01, Institut fuer Informatik, TU Braunschweig, 1983Google Scholar
  7. Eh 79.
    Ehrich,H.-D.: On the Theory of Specification, Implementation and Parameterization of Abstract Data Types. Journal ACM, Vol.29, 1982 also: Bericht Nr. 82/79, Abt. Informatik, Univ. Dortmund, 1979Google Scholar
  8. EKMP 80.
    Ehrig,H./ Kreowski,H.-J./ Mahr,B./ Padawitz,P.: Algebraic Implementation of Abstract Data Types. Theoretical Computer Science, Vol.20, 1982 also: Bericht Nr. 80-32, Fachbereich 20, TU Berlin, 1980Google Scholar
  9. EKTWW 81.
    Ehrig, H./ Kreowski, H.-J./ Thatcher, J.W./ Wagner, E.G./ Wright, J.B.: Parameter Passing in Algebraic Specification Languages. Proc. Workshop on Program Specification 1981 (J. Staunstrup ed.), LNCS 134, Springer-Verlag, Berlin, 1982Google Scholar
  10. GT 79.
    Goguen, J.A./ Tardo, J.J.: An Introduction to OBJ: a Language for Writing and Testing Formal Algebraic Program Specifications. Specification of Reliable Software, IEEE, Cambridge (Mass.), 1979Google Scholar
  11. Gu 75.
    Guttag, J. V.: The Specification and Application to Programming of Abstract Data Types. Technical Report CSRG-59, Univ. of Toronto, 1975Google Scholar
  12. Hu 77.
    Huet, G.: Confluent Reductions: Abstract Properties and Applications to Term Rewriting Systems, Journal ACM, Vol.27, 1980 also: Proc. 18th IEEE Symposium on Foundations of Computer Science, 1977Google Scholar
  13. KB 70.
    Knuth,D.E./ Bendix,P.: Simple Word Problems in Universal Algebras. Computational Problems in Abstract Algebra (J.Leech ed.), Pergamon Press, 1970Google Scholar
  14. LZ 74.
    Liskov,B./ Zilles,S.: Programming with Abstract Data Types. SIGPLAN Notices, Vol.9, 1974Google Scholar
  15. O'D 77.
    O'Donnell, M.: Computing in Systems Described by Equations. LNCS 58, Springer-Verlag, Berlin, 1977Google Scholar
  16. PEE 81.
    Pletat,U./ Engels,G./ Ehrich,H.-D.: Operational Semantics of Algebraic Specifications with Conditional Equations. 7th CAAP, Lille, 1982 also: Forschungsbericht Nr. 118/81, Abt. Informatik, Univ. Dortmund, 1981Google Scholar
  17. Re 82.
    Remy, J.L.: Proving Conditional Identities by Equational Case Reasoning, Rewriting and Normalization. Technical Report, C.R.I.N., Nancy, 1982Google Scholar
  18. Ro 73.
    Rosen,B.K.: Tree Manipulating Systems and Church-Rosser Theorems. Journal ACM, Vol.20, 1973Google Scholar
  19. SW 82.
    Sannella, D./ Wirsing, M.: Implementation of Parameterized Specifications. Proc. 9th ICALP (M. Nielsen-E.M. Schmidt eds.), LNCS 140, Springer-Verlag, Berlin, 1982Google Scholar
  20. Wa 77.
    Wand,M.: Algebraic Theories and Tree Rewriting Systems. Technical Report No.66, Indiana University, Bloomington, 1977Google Scholar
  21. WB 82.
    Wirsing, M./ Broy, M.: An Analysis of Semantics Models for Algebraic Specifications. Theoretical Foundations of Program Nethodology (M. Broy/G. Schmidt eds.), Reidel Publ. Co., Dordrecht, 1982Google Scholar

Copyright information

© Springer-Verlag 1984

Authors and Affiliations

  • K. Drosten
    • 1
  1. 1.TU Braunschweig, Institut fuer InformatikBraunschweig

Personalised recommendations