Skip to main content
Log in

Propositions and specifications of programs in Martin-Löf's type theory

  • Part I Computer Science
  • Published:
BIT Numerical Mathematics Aims and scope Submit manuscript

Abstract

The constructive meaning of mathematical propositions makes it possible to identify specifications for computer programs with propositions. In Martin-Löf's type theory, constructing a program satisfying a specification corresponds to proving the proposition expressing the specification. These ideas are explained and some examples of specifications are given.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. J. Backus,Can programming be liberated from the von Neuman style? A functional style and its algebra of programs, Comm. ACM, Vol. 21 no. 8 pp. 613–641 (August 1978).

    Google Scholar 

  2. E. Bishop,Foundations of Constructive Analysis, McGraw-Hill, New York (1967).

    Google Scholar 

  3. E. Bishop,Mathematics as a numerical language, pp. 53–71 inIntuitionism and Proof Theory, ed. Myhill, Kino, Vesley, North Holland, Amsterdam (1970).

    Google Scholar 

  4. N. G. de Bruijn,A Survey of the project Automath, pp. 579–606 in To H. B. Curry:Essays on Combinatory Logic, Lambda Calculus and Formalism, ed. J. P. Seldin and J. R. Hindley, Academic Press, London (1980).

    Google Scholar 

  5. R. M. Burstall and J. Darlington,A transformation system for developing recursive programs, J. of the ACM, Vol. 24 no. 1 (January 1977).

  6. R. L. Constable,Constructive mathematics and automatic program writers, pp. 229–233 in Proceedings of IFIP Congress, North-Holland, Ljubljana (1971).

    Google Scholar 

  7. H. B. Curry and R. Feys,Combinatory Logic, Vol. 1, North-Holland, Amsterdam (1958).

    Google Scholar 

  8. S. Goto,Program Synthesis from Natural Deduction Proofs, IJICAI 1979, Tokyo.

  9. K. Gödel,Über eine bisher noch nicht benützte Erweiterung des finiten Standpunktes, Dialectica, Vol. 37 pp. 280–287 (1958).

    Google Scholar 

  10. A. Heyting,Intuitionism, an Introduction, North-Holland (1956).

  11. W. A. Howard,The Formulae-as-types notion of construction, pp. 479–490 in To H. B. Curry:Essays on Combinatory Logic, Lambda Calculus and Formalism, ed. J. P. Seldin and J. R. Hindley, Academic Press, London (1980).

    Google Scholar 

  12. S. C. Kleene,On the interpretation of intuitionistic number theory, Journal of Symbolic Logic, Vol. 10 pp. 109–124 (1945).

    Google Scholar 

  13. A. N. Kolmogorov,Zur Deutung der intuitionistischen Logik, Mathematische Zeitschrift, Vol. 35 pp. 58–65 (1932).

    Google Scholar 

  14. H. Lauchli,An abstract notion of realizability for which intuitionistic predicate logic is complete in Intuitionism and Proof Theory, ed. Myhill, Kino and Vesley, North Holland, Amsterdam (1970).

    Google Scholar 

  15. P. Martin-Löf,An intuitionistic theory of types: predicative part, pp. 73–118 inLogic Colloquium 1973, ed. H. E. Rose and J. C. Shepherdson, North-Holland, Amsterdam (1975).

    Google Scholar 

  16. P. Martin-Löf,Constructive mathematics and computer programming, pp. 153–175 inLogic, Methodology and Philosophy of Science, VI, North-Holland Publishing Company, Amsterdam (1982), Proc. of the 6th Int. Cong., Hannover, 1979.

    Google Scholar 

  17. B. Nordström,Programming in constructive set theory: some examples inProc. ACM 1981Conference on Functional Languages and Computer Architecture, Wentworth-by-the-Sea, Portsmouth, New Hampshire (October 1981).

    Google Scholar 

  18. B. Nordström, K. Petersson, and J. Smith,An Introduction to Type Theory, Programming Methodology Group, Chalmers University of Technology, Göteborg. In preparation.

  19. M. J. O'Donnell,A Critique of the Foundations of Hoare-style Programming Logic, CACM, Vol. 25 no. 12 pp. 927–934 (December 1982).

    Google Scholar 

  20. K. Petersson,A Programming System for Type Theory, Memo 21, Programming Methodology Group, Chalmers University of Technology, Göteborg (1982).

    Google Scholar 

  21. M. Sato,Toward a mathematical theory of program synthesis, Proc. of the 6-th IJICAI 1979.

  22. D. Scott,Constructive validity, pp. 237–275 inSymposium on Automatic Demonstration, Lecture Notes in Mathematics, Vol. 125, Springer Verlag, Berlin (1970).

    Google Scholar 

  23. J. Smith,The identification of propositions and types in Martin-Löf's type theory: A programming example inInternational Conference on Foundations of Computation Theory, Borgholm, Sweden (August 21–27, 1983). Lecture notes in Computer Science, Vol. 158, Springer Verlag.

  24. J. Staunsrup,Proceedings of a Workshop on Program Specification, Aarhus, Denmark (August 1981). Lecture Notes in Computer Science, Vol. 134, Springer Verlag.

  25. G. Sundholm,Constructions, proofs and the meaning of the logical constants, Journal of Philosophical Logic 12 (1983) pp. 151–172.

    Google Scholar 

  26. S. Takasu,Proofs and Programs, Proc. of the 3rd IBM Symp. on Math. Foundations of Computer Science 1978, IBM Japan.

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Nordström, B., Smith, J. Propositions and specifications of programs in Martin-Löf's type theory. BIT 24, 288–301 (1984). https://doi.org/10.1007/BF02136027

Download citation

  • Received:

  • Revised:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF02136027

Keywords

Navigation