Abstract
This talk is an introduction to the Type Theoretical approach to the Mathematics of Program Construction.
The basic idea of this approach can be summarized briefly. It was realized by Bishop (1967) that a constructive proof of an existential statement is an algorithm for computing a witness of this statement. Furthermore, a specification of a functional program can be thought of as an existential proposition which may have parameters. The potential of these remarks for the problem of Program Construction is the following: to constructively prove such a proposition can be seen as a systematic and elegant way to achieve a “hand-in-hand” development of programs together with a proof that they satisfy their specification.
Type Theory is a particular formal language designed by P. Martin-Löf to express proofs in constructive mathematics. Type Theory has strong connections with functional programming and it is thus a natural candidate for actualizing this approach of Program Construction on computers.
We survey the recent development in this field and base the presentation on a particular implementation of Type Theory that emphasizes these connections. Type Theory is there seen as a functional programming language with dependent types, and proofs are functional programs.
We present some implemented examples where this type theoretical approach is particularly elegant, among others a representation of constructive geometry due to J. von Plato (Helsinki). We also compare it on one example with constructive (or transformational) programming.
Similar content being viewed by others
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1995 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Coquand, T. (1995). Program construction in intuitionistic Type Theory. In: Möller, B. (eds) Mathematics of Program Construction. MPC 1995. Lecture Notes in Computer Science, vol 947. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-60117-1_4
Download citation
DOI: https://doi.org/10.1007/3-540-60117-1_4
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-60117-3
Online ISBN: 978-3-540-49445-4
eBook Packages: Springer Book Archive