Advertisement

Journal of Automated Reasoning

, Volume 5, Issue 3, pp 363–397 | Cite as

The foundation of a generic theorem prover

  • Lawrence C. Paulson
Article

Abstract

Isabelle [28, 30] is an interactive theorem prover that supports a variety of logics. It represents rules as propositions (not as functions) and builds proofs by combining rules. These operations constitute a meta-logic (or ‘logical framework’) in which the object-logics are formalized. Isabelle is now based on higher-order logic-a precise and well-understood foundation.

Examples illustrate the use of this meta-logic to formalize logics and proofs. Axioms for first-order logic are shown to be sound and complete. Backwards proof is formalized by meta-reasoning about object-level entailment.

Higher-order logic has several practical advantages over other meta-logics. Many proof techniques are known, such as Huet's higher-order unification procedure.

Key words

Higher-order logic higher-order unification Isabelle LCF logical frameworks meta-reasoning natural deduction 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Andrews, P. B.: An Introduction to Mathematical Logic and Type Theory: To Truth Through Proof, Academic Press (1986).Google Scholar
  2. 2.
    Andrews, P. B., Miller, D. A., Cohen, E. L., and Pfenning, F.: ‘Automating higher-order logic’, in: Bledsoe, W. W. and Loveland, D. W. (eds.) Automated Theorem Proving: After 25 Years, American Mathematical Society (1984) pp. 169–192.Google Scholar
  3. 3.
    Avron, A., Honsell, F. A., and Mason, I. A.: ‘Using typed lambda calculus to implement formal systems on a machine.’ Report ECS-LFCS-87-31, Computer Science Department, University of Edinburgh (1987).Google Scholar
  4. 4.
    Barwise, J. (ed.): Handbook of Mathematical Logic, North-Holland (1977).Google Scholar
  5. 5.
    Barwise, J.: ‘An introduction to first-order logic’, in: Barwise [4], pp. 5–46.Google Scholar
  6. 6.
    Birtwistle, G. and Subrahmanyam, P. A. (eds.): VLSI Specification, Verification and Synthesis, Kluwer Academic Publishers (1988).Google Scholar
  7. 7.
    de Bruijn, N. G.: ‘A survey of the project AUTOMATH’, in: Seldin and Hindley [35], pp. 579–606.Google Scholar
  8. 8.
    Constable, R. L., et al.: Implementing Mathematics with the Nuprl Proof Development System, Prentice-Hall (1986).Google Scholar
  9. 9.
    Coquand, Th. and Huet, G.: ‘The calculus of constructions’, Information and Computation 76, 95–120 (1988).Google Scholar
  10. 10.
    Coquand, Th. and Huet, G., ‘Constructions: a higher order proof system for mechanizing mathematics’, in: Buchberger, B., editor, EUROCAL '85: European Conference on Computer Algebra, Volume 1: Invited lectures, Springer (1985), 151–184.Google Scholar
  11. 11.
    Dummett, M.: Elements of Intuitionism, Oxford University Press (1977).Google Scholar
  12. 12.
    Felty, A. and Miller, D.: ‘Specifying theorem provers in a higher-order logic programming language’, in Ninth Conference on Automated Deduction, Lusk, E. and Overbeek, R. (eds.), Springer (1988), pp. 61–80.Google Scholar
  13. 13.
    Gordon, M. J. C., ‘HOL: A proof generating system for higher-order logic’, in: Birtwistle and Subrahmanyam [6], pp. 79–128.Google Scholar
  14. 14.
    de Groote, Ph., ‘How I spent my time in Cambridge with Isabelle’, Report RR 87–1, Unité d'informatique, Université Catholique de Louvain, Belgium (1987).Google Scholar
  15. 15.
    Harper, R., Honsell, F., and Plotkin, G.: ‘A Framework for Defining Logics’, Proceedings of a symposium on Logic in Computer Science (IEEE, 1987), pp. 194–204.Google Scholar
  16. 16.
    Hindley, J. R. and Seldin, J. P.: Introduction to Combinators and λ-calculus, Cambridge University Press (1986).Google Scholar
  17. 17.
    Hoare, C. A. R. and Shepherdson, J. C. (eds.); Mathematical Logic and Programming Languages, Prentice-Hall (1985).Google Scholar
  18. 18.
    Howard, W. A.: ‘The formulae-as-types notion of construction’, in: Seldin and Hindley [35], pp. 479–490.Google Scholar
  19. 19.
    Huet, G. P.: ‘A unification algorithm for typed λ-calculus’, Theoretical Computer Science 1, 27–57 (1975).Google Scholar
  20. 20.
    Huet, G. P. and Lang, B.: ‘Proving and applying program transformations expressed with second-order patterns’, Acta Informatica 11 (1978) 31–55.Google Scholar
  21. 21.
    Jutting, L. S.: Checking Landau's ‘Grundlagen’ in the AUTOMATH system, Ph.D. Thesis, Technische Hogeschool, Eindhoven (1977).Google Scholar
  22. 22.
    Lambek, J. and Scott, P. J.: Introduction to Higher Order Categorical Logic, Cambridge University Press (1986).Google Scholar
  23. 23.
    Martin-Löf, P.: ‘Constructive mathematics and computer programming’, in: Hoare and Shepherdson [17], pp. 167–184.Google Scholar
  24. 24.
    Martin-Löf, P.: ‘On the meanings of the logical constants and the justifications of the logical laws,’ Report, Department of Mathematics, University of Stockholm (1986).Google Scholar
  25. 25.
    Martin-Löf, P.: ‘Amendment to intuitionistic type theory’, Lecture notes obtained from P. Dybjer, Computer Science Department, Chalmers University, Gothenburg (1986).Google Scholar
  26. 26.
    Milner, R.: ‘The use of machines to assist in rigorous proof’, in: Hoare and Shepherdson [17], pp. 77–88.Google Scholar
  27. 27.
    Nordström, B. and Smith, J. M.: ‘Propositions and specifications of programs in Martin-Löf's type theory’, BIT 24 (1984) 288–301.Google Scholar
  28. 28.
    Paulson, L. C.: ‘Natural deduction as higher-order resolution’, Journal of Logic Programming 3 (1986) 237–258.Google Scholar
  29. 29.
    Paulson, L. C.: Logic and Computation: Interactive Proof with Cambridge LCF, Cambridge University Press (1987).Google Scholar
  30. 30.
    Paulson, L. C.: ‘A preliminary user's manual for Isabelle’, Report 133, Computer Laboratory, University of Cambridge (1988).Google Scholar
  31. 31.
    Prawitz, D.: Natural Deduction: A Proof-theoretical Study, Almquist and Wiksell (1965).Google Scholar
  32. 32.
    Prawitz, D.: ‘Ideas and results in proof theory’, in: Fenstad, J. E. (ed.): Proceedings of the Second Scandinavian Logic Symposium, North-Holland (1971), pp. 235–308.Google Scholar
  33. 33.
    Schroeder-Heister, P.: ‘A natural extension of natural deduction’, Journal of Symbolic Logic 49 (1984) 1284–1300.Google Scholar
  34. 34.
    Schroeder-Heister, P.: ‘Generalized rules for quantifiers and the completeness of the intuitionistic operators &, ∨, ⊃, ⊥, ⊥, ∃’, in: M. M. Richter et al. (eds.): Logic Colloquium '83, Springer Lecture Notes in Mathematics 1104 (1984).Google Scholar
  35. 35.
    Seldin, J. P. and Hindley, J. R.: To H. B. Curry: Essays on Combinatory Logic, Lambda Calculus and Formalism, Academic Press (1980).Google Scholar
  36. 36.
    Takeuti, G.: Proof Theory (2nd edition), North Holland (1987).Google Scholar
  37. 37.
    Whitehead, A. N. and Russell, B.: Principia Mathematica, Paperback edition to 56, Cambridge University Press (1962).Google Scholar

Copyright information

© Kluwer Academic Publishers 1989

Authors and Affiliations

  • Lawrence C. Paulson
    • 1
  1. 1.Computer LaboratoryUniversity of CambridgeCambridgeUK

Personalised recommendations