Skip to main content
Book cover

Workshop on Logic of Programs

Logic of Programs 1983: Logics of Programs pp 474–500Cite as

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

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 164))

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.

A shorter version of this paper was presented by the third author under the title “Understanding Algol: The View of a Recent Convert to Denotational Semantics,” in 1989 IFIPS Proceedings, R. E. Mason, ed., North Holland.

The research reported here was supported in part by NSF Grant MCS80-10707, a grant to the MIT Lab. for Computer Science from the IBM Corporation, and a grant from the National Science and Engineering Research Council of Canada. A portion of this research was performed while the second author was a visiting scientist jointly at the MIT Lab. for Computer Science and the Aiken Computation Lab., Harvard Univ.

This is a preview of subscription content, log in via an institution.

Preview

Unable to display preview. Download preview PDF.

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, The IO-and OI-hierarchies, Theoretical Computer Science 20, 1982, 95–207.

    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, On procedures as open subroutines, Acta Informatica 2, 1973, 311–333.

    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 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Edmund Clarke Dexter Kozen

Rights and permissions

Reprints and permissions

Copyright information

© 1984 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Trakhtenbrot, B.A., Halpern, J.Y., Meyer, A.R. (1984). From denotational to operational and axiomatic semantics for ALGOL-like languages: An overview. In: Clarke, E., Kozen, D. (eds) Logics of Programs. Logic of Programs 1983. Lecture Notes in Computer Science, vol 164. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-12896-4_382

Download citation

  • DOI: https://doi.org/10.1007/3-540-12896-4_382

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-12896-0

  • Online ISBN: 978-3-540-38775-6

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics