Constructive Mathematics as a Programming Logic I: Some Principles of Theory

http://techreports.library.cornell.edu:8081/Dienst/UI/1.0/Display/cul.cs/TR83-554
unofficial copies [PDF], [PS]


by Robert L. Constable

Annals of Mathematics, vol. 24, Elsevier Science Publishers BV: North-Holland, (Reprinted from Topics in the Theory of Computation Selected Papers of the International Conference on Foundations of Computation Theory, FCT '83), (also Cornell TR 83-554), 1985.

Abstract

The design of a programming system is guided by certain beliefs, principles, and practical constraints. These considerations are not always manifest from the rules defining the system. In this paper, the author discusses some of the principles which have guided the design of the programming logics built at Cornell in the last decade. Most of the necessarily brief discussion concerns type theory with stress on the concepts of function space and quotient types.

Key Words and Phrases: automated logic, combinators, Edinburgh LCF, partial recursive functions, programming languages and logics, PL/CV, PRL, propositions-as-types, quotient types, strong intensionality, type theory.