Skip to main content

Relational Semantics of Functional Programs

  • Chapter
Relational Methods in Computer Science

Part of the book series: Advances in Computing Sciences ((ACS))

Abstract

The natural meaning of a program written in a functional language like Lisp or ML is a (possibly partial) function. Functions are relations, and this chapter is a gentle introduction to the idea of regarding functional programs as elements of a relational algebra. Using relations rather than functions we avoid the complexity introduced by artificial bottom elements denoting undefinedness. Relations are also natural candidates for modelling non-determinate or set-valued functions. However, the main reason for using relations is that they can be calculated with so well. Using equational reasoning for functional programs, we can construct proofs that are intuitive, memorable and machine-checkable. One basic ingredient of functional programs — composition of functions — is a built-in operator of the relational calculus. Other control constructs as well as concrete data must be translated into the language of relations. We shall attempt to do this in a modular fashion, treating one construct at a time.

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.

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1997 Springer-Verlag Wien

About this chapter

Cite this chapter

Berghammer, R., von Karger, B. (1997). Relational Semantics of Functional Programs. In: Brink, C., Kahl, W., Schmidt, G. (eds) Relational Methods in Computer Science. Advances in Computing Sciences. Springer, Vienna. https://doi.org/10.1007/978-3-7091-6510-2_8

Download citation

  • DOI: https://doi.org/10.1007/978-3-7091-6510-2_8

  • Publisher Name: Springer, Vienna

  • Print ISBN: 978-3-211-82971-4

  • Online ISBN: 978-3-7091-6510-2

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics