The semantics of clear, a specification language

  • R. M. Burstall
  • J. A. Goguen
Algebraic Semantics
Part of the Lecture Notes in Computer Science book series (LNCS, volume 86)


This paper gives a semantics for the Clear language for specifying problems and programs, described by Burstall and Goguen in 1977. A blend of denotational semantics with categorical ideas is used.


Data Theory Algebraic Theory Forgetful Functor Denotational Semantic 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. Abrial,J.R., Schuman, S.A. and Meyer, B. (1979) Specification Language Z, (unpublished draft) from Massachusetts Computer Associates Inc., Boston.Google Scholar
  2. Arbib, M.A. and Manes, E.G. (1975) Arrows, Structures and Functors: The Categorical Imperative. Academic Press, London.Google Scholar
  3. Burstall, R.M. and Goguen, J.A. (1977) Putting theories together to make specifications. Invited paper in Proc. of Fifth International Joint Conference on Artificial Intelligence, Cambridge, Mass., pp. 1045–1058.Google Scholar
  4. Burstall, R.M. and Goguen, J.A. (1978) Semantics of Clear, (unpublished notes handed out at the Symposium on Algebra and Applications, Danach Center, Warsaw).Google Scholar
  5. Burstall, R.M. and Rydeheard (1979) The free algebraic theory on a signature, (unpublished draft report), Dept. of Computer Science, University of Edinburgh.Google Scholar
  6. Caplain, M. (1978) Langage de specifications, Thesis, Lab. d'Informatique, IMAG, B.P. 53, Grenoble, France.Google Scholar
  7. Dahl, O-J. (1978) Can program proving be made practical?. In Les fondements de la programmation, (ed. Amirchahy and Neel) IRIA, B.P. 105, Le Chesnay, France.Google Scholar
  8. Ehrich, H.-D. and Lohberger, V.G. (1978) Parametric specification of abstract data types, parameter substitution and graph replacements. In Proc. of the Workshop ‘Graphentheoretische Konzepte in der Informatik', Applied Computer Science, Carl Hanser Verlag, Munich-Vienna 1978.Google Scholar
  9. Ehrig, H. Kreowski, H-J. and Padawitz, P. (1978) Stepwise specification and implementation of abstract data types. In Proc. of the Fifth International Conference on Automata Languages and Programming, Udine, Italy.Google Scholar
  10. Ehrig, H, Kreowski, H-J., Thatcher, J., Wagner, E. and Wright, J. (1979) Parameterised Data Types in Algebraic Specification Languages, (unpublished summary paper), from H. Ehrig, Fachbereich 20, Informatik, Technische Universität, W. Berlin.Google Scholar
  11. Eilenberg, S. and Moore, J.C. (1965) Adjoint functors and triples, Ill.J. Math. 9, 381–398.Google Scholar
  12. Genrich, H. (1976) The Petri Net Representation of Mathematical Knowledge. Interner Bericht ISF-76-5, GMD Bonn, W. Germany.Google Scholar
  13. Godement, R. (1958) Theorie des Faisceaux, Hermann.Google Scholar
  14. Goguen, J.A. (1977) Abstract errors for abstract data types. In Proc. of IFIP Working Conference on Formal Description of Programming Concepts (ed. Dennis, MIT). Published by North-Holland (ed. Neuhold, 1978).Google Scholar
  15. Goguen, J.A. (1979) Order sorted algebras: exception and error sorts, coercions and overloaded operators. Unpublished report, UCLA, Los Angeles.Google Scholar
  16. Goguen, J.A. and Burstall, R.M. (1978) Some fundamental properties of algebraic theories: a tool for semantics of computation. DAI Research Report No. 53, Dept. of Artificial Intelligence, University of Edinburgh.Google Scholar
  17. [ADJ] Goguen, J.A., Thatcher, J.W., Wagner, E.G. and Wright, J.B. (1975) An introduction to categories, algebraic theories and algebras. IBM Technical Report RC 5369, Thos. J. Watson Research Center, Yorktown Heights, N.Y.Google Scholar
  18. [ADJ] Goguen, J.A., Thatcher, J.W., and Wagner, E.G. (1978) An initial algebra approach to the correctness, and implementation of abstract data types. In Current Trends in Programming Methodology, IV (ed. Yeh) Prentice Hall, N.J.Google Scholar
  19. Gordon, M.J.C. (1979) The Denotational Description of Programming Languages: an Introduction. Springer-Verlag: New York, Heidelberg, Berlin.Google Scholar
  20. Guttag, J.V. and Horning, J.J. (1978) The algebraic specification of abstract data types. Acta Informatics, 10, 27–52.Google Scholar
  21. Herrlich, H. and Strecker, G.E. (1973) Category Theory. Allyn and Bacon.Google Scholar
  22. Honda, M. and Nakajima, R. (1979) Interactive theorem proving on hierarchically and modularly structured sets of very many axioms. RIMS Kokyuroku No. 363, Research Institute for Math. Science, Kyoto University.Google Scholar
  23. Lawvere, F.W. (1963) Functorial semantics of algebraic theories. Proc. of National Academy of Science, 50, 869–872.Google Scholar
  24. Lehman, D.J. and Smyth, M.B. (1977) Data types. Proc. of 18th Annual IEEE Symposium on F.O.C.S. (to appear in Math. Systems Theory).Google Scholar
  25. Levitt, K., Robinson, L. and Silverberg (1979) HDM Handbook 1, 2, 3, SRI Int. Computer Science Report.Google Scholar
  26. Liskov, B. and Berzins, V. (1977) An appraisal of program specification. MIT, Laboratory for Computer Science, Computation Structures Memo 141-1.Google Scholar
  27. Liskov, B.H. and Zilles, S.N. (1975) Specification techniques for data abstractions. Proc. of International Conference on Reliable Software, ACM, Los Angeles, Ca., 72–87.Google Scholar
  28. MacLane, S. (1971) Categories for the Working Mathematican. Springer-Verlag.Google Scholar
  29. Manes, E.G. (1976) Algebraic Theories. Springer-Verlag.Google Scholar
  30. Mosses, P. (1977) Making denotational semantics less concrete. Proc. of Bad Honnef Workshop on Semantics of Programming Languages.Google Scholar
  31. Reichel, H. (1980) Initially-restricting algebraic theories. Unpublished report. TH ‘Otto von Guericke', Sektion Math/Physik, Magdeburg, DDR.Google Scholar
  32. Reynolds, J.C. (1977) Reasoning about arrays. Report CSR-6-77/DAI-38. Dept. of Computer Science, University of Edinburgh.Google Scholar
  33. Spitzen, J.M., Levitt, K.N. and Robinson, L. (1978) An example of hierarchical design and proof. Comm. Assoc. Comp. Mach., 21, 12, 1064–1075.Google Scholar
  34. [ADJ] Thatcher, J.W., Wagner, E.G. and Wright, J. (1978) Data type specification: parameterisation and the power of specification techniques. Proc. of the SIGACT 10th Annual Symposium on Theory of Computing, May 1978, pp. 119–132.Google Scholar
  35. [ADJ] Wagner, E., Thatcher, J.W. and Wright, J. (1978) Free continuous theories. Unpublished report, IBM Laboratories, Yorktown Heights, N.Y.Google Scholar

For a recent bibliography on abstract data types see:-

  1. Dungan, Dona M. (1979) Bibliography on Data Types, SIGPLAN Notices 14, 11 pp. 31–59.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1980

Authors and Affiliations

  • R. M. Burstall
    • 1
  • J. A. Goguen
    • 2
  1. 1.Dept. of Computer ScienceUniversity of EdinburghUK
  2. 2.Dept. of Computer ScienceUniversity of California at Los AngelesUSA

Personalised recommendations