Skip to main content

Operational Semantics and Program Equivalence

  • Conference paper
  • First Online:
Applied Semantics (APPSEM 2000)

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

Included in the following conference series:

Abstract

This tutorial paper discusses a particular style of operational semantics that enables one to give a ‘syntax-directed’ inductive definition of termination which is very useful for reasoning about operational equivalence of programs. We restrict attention to contextual equivalence of expressions in the ML family of programming languages, concentrating on functions involving local state. A brief tour of structural operational semantics culminates in a structural definition of termination via an abstract machine using ‘frame stacks’. Applications of this to reasoning about contextual equivalence are given.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. K. Aboul-Hosn and J. Hannan. Program equivalence with private state. Preprint., January 2002.

    Google Scholar 

  2. P. N. Benton and A. J. Kennedy. Monads, effects and transformations. In A. D. Gordon and A. M. Pitts, editors, HOOTS’ 99 Higher Order Operational Techniques in Semantics, Paris, France, September 1999, volume 26 of Electronic Notes in Theoretical Computer Science. Elsevier, 1999.

    Google Scholar 

  3. G. M. Bierman, A. M. Pitts, and C. V. Russo. Operational properties of Lily, a polymorphic linear lambda calculus with recursion. In Fourth International Workshop on Higher Order Operational Techniques in Semantics, Montréal, volume 41 of Electronic Notes in Theoretical Computer Science. Elsevier, September 2000.

    Google Scholar 

  4. L. Birkedal and R. Harper. Relational interpretation of recursive types in an operational setting (Summary). In M. Abadi and T. Ito, editors, Theoretical Aspects of Computer Software, Third International Symposium, TACS’97, Sendai, Japan, September 23–26, 1997, Proceedings, volume 1281 of Lecture Notes in Computer Science. Springer-Verlag, Berlin, 1997.

    Google Scholar 

  5. G. Cousineau and M. Mauny. The Functional Approach to Programming. Cambridge University Press, 1998.

    Google Scholar 

  6. R. Harper and C. Stone. An interpretation of Standard ML in type theory. Technical Report CMU-CS-97-147, Carnegie Mellon University, Pittsburgh, PA, 1997.

    Google Scholar 

  7. A. Jeffrey and J. Rathke. Towards a theory of bisimulation for local names. In 14th Annual Symposium on Logic in Computer Science, pages 56–66. IEEE Computer Society Press, Washington, 1999.

    Google Scholar 

  8. G. Kahn. Natural semantics. Rapport de Recherche 601, INRIA, Sophia-Antipolis, France, 1987.

    Google Scholar 

  9. R. Milner, M. Tofte, R. Harper, and D. MacQueen. The Definition of Standard ML (Revised). MIT Press, 1997.

    Google Scholar 

  10. P. W. O’Hearn and J. G. Riecke. Kripke logical relations and PCF. Information and Computation, 120:107–116, 1995.

    Article  MATH  MathSciNet  Google Scholar 

  11. A. M. Pitts. Operationally-based theories of program equivalence. In P. Dybjer and A. M. Pitts, editors, Semantics and Logics of Computation, Publications of the Newton Institute, pages 241–298. Cambridge University Press, 1997.

    Google Scholar 

  12. A. M. Pitts. Reasoning about local variables with operationally-based logical relations. In P. W. O’Hearn and R. D. Tennent, editors, Algol-Like Languages, volume 2, chapter 17, pages 173–193. Birkhauser, 1997. First appeared in Proceedings 11th Annual IEEE Symposium on Logic in Computer Science, Brunswick, NJ, July 1996, pp 152–163.

    Google Scholar 

  13. A. M. Pitts. Existential types: Logical relations and operational equivalence. In K. G. Larsen, S. Skyum, and G. Winskel, editors, Automata, Languages and Programming, 25th International Colloquium, ICALP’98, Aalborg, Denmark, July 1998, Proceedings, volume 1443 of Lecture Notes in Computer Science, pages 309–326. Springer-Verlag, Berlin, 1998.

    Google Scholar 

  14. A. M. Pitts. Parametric polymorphism and operational equivalence. Mathematical Structures in Computer Science, 10:321–359, 2000.

    Article  MATH  MathSciNet  Google Scholar 

  15. A. M. Pitts and I. D. B. Stark. Operational reasoning for functions with local state. In A. D. Gordon and A. M. Pitts, editors, Higher Order Operational Techniques in Semantics, Publications of the Newton Institute, pages 227–273. Cambridge University Press, 1998.

    Google Scholar 

  16. G. D. Plotkin. Lambda-definability and logical relations. Memorandum SAI-RM-4, School of Artificial Intelligence, University of Edinburgh, 1973.

    Google Scholar 

  17. G. D. Plotkin. A structural approach to operational semantics. Technical Report DAIMI FN-19, Aarhus University, 1981.

    Google Scholar 

  18. A. K. Wright and M. Felleisen. A syntactic approach to type soundness. Information and Computation, 115:38–94, 1994.

    Article  MATH  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2002 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Pitts, A.M. (2002). Operational Semantics and Program Equivalence. In: Barthe, G., Dybjer, P., Pinto, L., Saraiva, J. (eds) Applied Semantics. APPSEM 2000. Lecture Notes in Computer Science, vol 2395. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45699-6_8

Download citation

  • DOI: https://doi.org/10.1007/3-540-45699-6_8

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-44044-4

  • Online ISBN: 978-3-540-45699-5

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics