Skip to main content

A CALCULUS OF FUNCTIONS FOR PROGRAM DERIVATION

Richard Bird

Abstract

This paper is about how to calculate programs. We introduce a notation for describing functions, outline a calculus for manipulating function descriptions, and prove two general theorems for implementing certain functions efficiently. Like useful calculi in other branches of mathematics, the calculus of functions consists of a body of knowledge expressed as basic algebraic identities, technical lemmas and more general theorems. We illustrate the calculational approach to program construction by posing and solving a simple problem about coding sequences.

Institution
OUCL
Month
December
Number
PRG64
Pages
23
Year
1987