# From denotational to operational and axiomatic semantics for ALGOL-like languages: An overview

Conference paper

First Online:

## Abstract

The advantages of denotational over operational semantics are argued. A denotational semantics is provided for an Algol-like language with finite-mode procedures, blocks with local storage, and sharing (aliasing). Procedure declarations are completely explained in the usual framework of complete partial orders, but cpo's are inadequate for the semantics of blocks, and a new class of store models is developed. Partial correctness theory over store models is developed for commands which may contain calls to global procedures, but do not contain function procedures returning storable values.

## Keywords

Operational Semantic Proof System Store Model Denotational Semantic Partial Correctness
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.

## Preview

Unable to display preview. Download preview PDF.

## References

- K. R. Apt, Equivalence of operational semantics for a fragment of Pascal, in
*Formal Descriptions of Programming Language Concepts*, E. J. Neuhold, ed., North Holland, 1978.Google Scholar - K. R. Apt, Ten years of Hoare's logic: a survey — part I,
*ACM Trans. Programming Languages and Systems***3**, 1981, 431–483.Google Scholar - K. R. Apt, Ten years of Hoare's logic, a survey, part II: nondeterminism,
*Foundations of Computer Science IV, Mathematical Center Tracts*,**159**, Mathematisch Centrum, Amsterdam, 1983, 101–132.Google Scholar - H. P. Barendregt,
*The Lambda Calculus: Its Syntax and Semantics*, Studies in Logic**103**, North Holland, 1981.Google Scholar - R. Cartwright and D. Oppen, The logic of aliasing,
*Acta Informatica***15**, 1981, 365–384.Google Scholar - E. M. Clarke, Programming language constructs for which it is impossible to obtain good Hoare-like axioms,
*J.ACM***26**, 1979, 129–147.Google Scholar - S. A. Cook, Soudness and completeness of an axiom system for program verification,
*SIAM J. Computing***7**, 1978, 70–90.Google Scholar - W. Damm and E. Fehr, A schematological approach to the procedure concept of Algol-like languages,
*Proc. 5ieme colloque sur les arbres en algebre et en programmation*, Lille, 1980, 130–134.Google Scholar - W. Damm and B. Josko, A sound and relatively* complete Hoare-logic for a language with higher type procedures, Lehrstuhl fur Informatik II, RWTH Aachen, Bericht No. 77, 1982, 94pp.Google Scholar
- J. De Bakker,
*Mathematical Theory of Program Correctness*, Prentice-Hall International, 1980, 505pp.Google Scholar - J. De Bakker, J. W. Klop, and J.-J.Ch. Meyer, Correctness of programs with function procedures,
*Logics of Programs*, D. Kozen, ed., Lecture Notes in Computer Science**131**, Springer, 1982, 94–112.Google Scholar - S. German, E. Clarke, and J. Halpern, Reasoning about procedures as parameters, 1983,
*this volume*.Google Scholar - I. Guessarian, Survey on some classes of interpretations and some their applications, Laboratoire Informatique Theorique et Programmation, 82-46, Univ. Paris 7, 1982.Google Scholar
- G. A. Gorelick, A complete axiom system for proving assertions about recursive and non-recursive programs, University of Toronto, Computer Science Dept. TR-75, 1975.Google Scholar
- J. Y. Halpern, A good Hoare axiom system for an Algol-like language, 1983, to appear.Google Scholar
- D. Harel, A. Pnueli, and J. Stavi, A complete axiomatic system for proving deductions about recursive programs,
*Proc. 9th ACM Symp. Theory of Computing*, 1977, 249–260.Google Scholar - C. A. R. Hoare, An axiomatic basis for computer programming,
*Comm. ACM*,**12**, 1969, 576–580.Google Scholar - T. M. V. Janssen and P. van Emde Boas, On the proper treatment of referencing, dereferencing and assignment,
*4th Int'l. Coll. Automata, Languages, and Programming*, Lecture Notes in Computer Science**52**, Springer, 1977, 282–300.Google Scholar - P. J. Landin, A correspondence between Algol 60 and Church's lambda notation,
*Comm. ACM***8**, 1965, 89–101 and 158–165.Google Scholar - H. Langmaack and E. R. Olderog, Present-day Hoare-like systems,
*7th Int'l. Coll. Automata, Languages, and Programming*, Lecture Notes in Computer Science**85**, Springer, 1980, 363–373.Google Scholar - Z. Manna and R. Waldinger, Problematic features of programming languages: a situational-calculus approach,
*Acta Informatica***16**, 1981, 371–426.Google Scholar - J. Meseguer, Completions, factorizations and colimits of ω-posets,
*Coll. Math. Soc. Janos Bolyai***26**.*Math. Logic in Computer Science*, Salgotarjan, Hungary, 1978, 509–545.Google Scholar - A. R. Meyer, What is a model of the λ-calculus?
*Information and Control***52**, 1982, 87–122.Google Scholar - A. R. Meyer and J. C. Mitchell, Axiomatic definability and completeness for recursive programs,
*9th ACM Symposium on Principles of Programming Languages*, 1982, 337–346. Revised as: Termination assertions for recursive programs: completeness and axiomatic definability, MIT/LCS/TM-214, MIT, Cambridge, Massachusetts, March, 1982; to appear*Information and Control*, 1982.Google Scholar - R. E. Milne and C. Strachey,
*A Theory of Programming Language Semantics*, 2 Vols., Chapman and Hall, 1976.Google Scholar - P. Naur et al., Revised report on the algorithmic language Algol 60,
*Computer J.***5**, 1963, 349–367.Google Scholar - E. R. Olderog, Sound and complete Hoare-like calculi based on copy rules,
*Acta Informatica***16**, 1981, 161–197.Google Scholar - E. R. Olderog, A characterization of Hoare's logic for programs with Pascal-like procedures,
*Proc. 15th ACM Symp. Theory of Computing*, 1983a, 320–329.Google Scholar - E. R. Olderog, Hoare's logic for program with procedures — what has been accomplished?,
*Proc. Logics of Programs*, Carnegie-Mellon Univ., Pittsburgh, 1983,*to appear, Lecture Notes in Computer Science*, Springer, 1983b.Google Scholar - F. J. Oles, Type algebras, functor categories, and block structure, Computer Science Dept., Aarhus Univ. DAIMI PB-156, Denmark, Jan. 1983.Google Scholar
- G. D. Plotkin, A Powerdomain for countable non-determinism,
*9th Int'l. Coll. Automata, Languages, and Programming*, Lecture Notes in Computer Science**140**, Springer, 1982, 412–428.Google Scholar - J. C. Reynolds, The essence of Algol,
*International Symposium on Algorithmic Languages*, de Bakker and van Vliet, eds., North Holland, 1981a, 345–372.Google Scholar - J. C. Reynolds, The Craft of Programming, Prentice Hall International Series in Computer Science, 1981b, 434pp.Google Scholar
- J. C. Reynolds, Idealized Algol and its specification logic, Syracuse University, Technical Report 1-81, 1981c.Google Scholar
- R. L. Schwartz, An axiomatic treatment of Algol 68 Routines,
*6th Int'l. Coll. Automata, Languages and Programming*, Lecture Notes in Computer Science**71**, Springer, 1979, 530–545.Google Scholar - D. S. Scott, Domains for Denotational Semantics,
*9th Int'l. Conf. Automata, Languages, and Programming*, Lecture Notes in Computer Science**140**, Springer, 1982, 577–613; to appear,*Information and Control*.Google Scholar - J. E. Stoy,
*Denotational Semantics: The Scott-Strachey Approach to Programming Language Theory*, MIT Press, Cambridge, Massachusetts, 1977.Google Scholar - B. A. Trakhtenbrot, On relaxation rules in algorithmic logic,
*Mathematical Foundations of Computer Science 1979*, (J. Becvar, ed.), Lecture Notes in Computer Science**74**, Springer, 1979, 453–462.Google Scholar

## Copyright information

© Springer-Verlag Berlin Heidelberg 1984