Constructive mathematics and computer programming
- 1 October 1984
- journal article
- Published by The Royal Society in Philosophical Transactions of the Royal Society of London. Series A, Mathematical and Physical Sciences
- Vol. 312 (1522) , 501-518
- https://doi.org/10.1098/rsta.1984.0073
Abstract
If programming is understood not as the writing of instructions for this or that computing machine but as the design of methods of computation that it is the computer’s duty to execute (a difference that Dijkstra has referred to as the difference between computer science and computing science), then it no longer seems possible to distinguish the discipline of programming from constructive mathematics. This explains why the intuitionistic theory of types (Martin-Lof 1975 In Logic Colloquium 1973 (ed. H. E. Rose & J. C. Shepherdson), pp. 73- 118. Amsterdam: North-Holland), which was originally developed as a symbolism for the precise codification of constructive mathematics, may equally well be viewed as a programming language. As such it provides a precise notation not only, like other programming languages, for the programs themselves but also for the tasks that the programs are supposed to perform. Moreover, the inference rules of the theory of types, which are again completely formal, appear as rules of correct program synthesis. Thus the correctness of a program written in the theory of types is proved formally at the same time as it is being synthesized.Keywords
This publication has 7 references indexed in Scilit:
- An Intuitionistic Theory of Types: Predicative PartPublished by Elsevier ,1975
- The programming language pascalActa Informatica, 1971
- The mathematical language AUTOMATH, its usage, and some of its extensionsPublished by Springer Nature ,1970
- Foundations of Constructive Analysis.The American Mathematical Monthly, 1968
- The Mechanical Evaluation of ExpressionsThe Computer Journal, 1964
- Untersuchungen ber das logische Schlie en. IMathematische Zeitschrift, 1935
- Zur Deutung der intuitionistischen LogikMathematische Zeitschrift, 1932