Skip to main content

Formal theories and software systems: Fundamental connections between Computer Science and Logic

  • II. Symbolic Computation, Programming, and Software Engineering
  • Conference paper
  • First Online:
Future Tendencies in Computer Science, Control and Applied Mathematics (INRIA 1992)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 653))

Included in the following conference series:

  • 134 Accesses

Abstract

A formal Theory of Logics is sketched using concepts from a modern proof development system (like Nuprl, Coq or other such software systems). The Theory can be applied to understanding these software systems, and the application suggests a design principle called the theories-as-systems notion. Applications of the Theory to automated reasoning have led to an empirical study of the notion of obvious inference. Experimental results are cited to explain key constants of a scientific theory of obvious inference. The constants appear in what is called here the deBruijn equation.

This research supported by NSF grant CCR-9244739 and ONR grant N00014-92J-1764.

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. M. Aagaard and M. Leeser. Verifying a logic synthesis tool in Nuprl. In G. Bochmann and D. Probst, editors, Participants copy of Proceedings of Workshop on Computer-Aided. Verification, pages 72–83. Springer-Verlag, June 1992. To appear by Springer-Verlag, 1993.

    Google Scholar 

  2. S. Abramsky. Computational interpretations of linear logic. TCS, 1992. To appear.

    Google Scholar 

  3. W. Aitken and R. C. Constable. Reflecting on Nuprl Lessons 1–4. Technical report, Cornell University, Computer Science Dept., 1992. To appear.

    Google Scholar 

  4. S. Allen, R. Constable, D. Howe, and W. Aitken. The semantics of reflected proof. Proc. of Fifth Symp. on Logic in Comp. Sci., IEEE, pages 95–197, June 1990.

    Google Scholar 

  5. S. F. Allen. A non-type-theoretic definition of Martin-Löf's types. Proc. of Second Symp. on Logics in Computer Science, IEEE, pages 215–224., June 1987.

    Google Scholar 

  6. A. Appel. Compiling with Continuations. Cambridge University Press, 1992.

    Google Scholar 

  7. D. Basin. An environment for automated reasoning about partial functions. In 9th International Conference on Automated Deduction, pages 101–110. Springer-Verlag, NY, 1988.

    Google Scholar 

  8. D. Basin, G. Brown, and M. Leeser. Formally Verified Synthesis of Combinational CMOS Circuits. Integration: The International Journal of VLSI Design, 11:235–250, 1991.

    Google Scholar 

  9. E. Bishop. Mathematics as a Numerical Language. In Intuitionism and Proof Theory., pages 53–71. North-Holland, NY, 1970.

    Google Scholar 

  10. W. W. Bledsoe. A new method for proving certain Presburger formulas. Fourth IJCAI, September 1975. Tblisi, USSR.

    Google Scholar 

  11. N. Bourbaki. Elements of Mathematics, Algebra, Volume 1. Addison-Wesley, Reading, MA, 1968.

    Google Scholar 

  12. W. Chen. Tactic-based theorem proving and knowledge-based forward chaining. In D. Kapur, editor, Eleventh International Conference on Automated Deduction, pages 552–566. Springer-Verlag, June 1992.

    Google Scholar 

  13. J. Chirimar and D. Howe. Implementing constructive real analysis: a preliminary report. In Symposium on Constructivity in Computer Science. Springer-Verlag, 1991. To appear.

    Google Scholar 

  14. R. C. Cleaveland. Type-Theoretic Models of Concurrency. PhD thesis, Cornell University, 1987.

    Google Scholar 

  15. R. Constable, S. Johnson, and C. Eichenlaub. Introduction to the PL/CV2 Programming Logic, LNCS, volume 135. Springer-Verlag, NY, 1982.

    Google Scholar 

  16. R. Constable, T. Knoblock, and J. Bates. Writing programs that construct proofs. J. Automated Reasoning, 1(3):285–326, 1984.

    MathSciNet  Google Scholar 

  17. R. L. Constable. Constructive mathematics and automatic program writers. In Proc. IFP Congr., pages 229–33, Ljubljana, 1971.

    Google Scholar 

  18. R. L. Constable. Lectures on: Classical proofs as programs. NATO ASI Series, Constructive Methods of Computing Science, F, 1991.

    Google Scholar 

  19. R. L. Constable et al. Implementing Mathematics with the Nuprl Development System. Prentice-Hall, NJ, 1986.

    Google Scholar 

  20. R. L. Constable and D. J. Howe. Implementing metamathematics as an approach to automatic theorem proving. In R. Banerji, editor, Formal Techniques in Artificial Intelligence: A Source Book, pages 45–76. Elsevier Science Publishers (North-Holland), 1990.

    Google Scholar 

  21. S. Cook. The complexity of theorem proving procedures. In Proc. of the 3rd ACM Symposium on Theory of Computation, pages 151–158. ACM, NY, 1971.

    Google Scholar 

  22. H. Curry, R. Feys, and W. Craig. Combinatory Logic, Vol. 1. Amsterdam:North-Holland, 1968.

    Google Scholar 

  23. M. Davis. The prehistory and early history of automated deduction. In Automation of Reasoning 1, pages 1–28. Springer-Verlag, NY, 1983.

    Google Scholar 

  24. N. deBruijn. The mathematical language Automath, its usage and, some of its extensions. Symp. on Automatic Demonstration, Lecture Notes in Math, 125:29–61, 1968.

    Article  Google Scholar 

  25. N. deBruijn. A survey of the project Automath. In To H.B. Curry: Essays in Combinatory Logic, Lambda Calculus, and Formalism., pages 589–606. Academic Press, 1980.

    Google Scholar 

  26. S. Feferman. A language and axioms for explicit mathematics. In Algebra and Logic, Lecture Notes in Mathematics, pages 87–139. Springer-Verlag, 1975.

    Google Scholar 

  27. S. Feferman. Polymorphic typed lambda-calculi in a type free axiomatic framework. Contemporary Mathematics, 106:101–135, 1990.

    MathSciNet  Google Scholar 

  28. G. Frege. Begriffsschrift, a formula language, modeled upon that for arithmetic for pure thought. In From Frege to Godel: A Source Book in Mathematical Logic, 1879–1931, pages 1–82. Harvard University Press, Cambridge, Mass., 1967.

    Google Scholar 

  29. J.-Y. Girard. Une extension de l'interpretation de godel a l'analyse, et son application a l'elimination des coupures dans l'analyse et la theorie des types. In 2nd Scandinavian Logic Symp., pages 63–69. Springer-Verlag, NY, 1971.

    Google Scholar 

  30. J.-Y. Girard. On the unity of logic. In Proceedings of Computer and Systems Sciences, NATO Advanced Science Institute Series F, 1991.

    Google Scholar 

  31. K. Gödel. On intuitionistic arithmetic and number theory. In M. Davis, editor, The Undecidable, pages 75–81. Raven Press, 1965.

    Google Scholar 

  32. M. Gordon. HOL: A machine oriented formalization of higher order logic. Technical Report 68, Cambridge University, 1985.

    Google Scholar 

  33. M. Gordon, R. Milner, and C. Wadsworth. Edinburgh LCF: a mechanized logic of computation, volume 78 of Lecture Notes in Computer Science. Springer-Verlag, NY, 1979.

    Google Scholar 

  34. J. Hartmanis. Feasible Computations and Provable Complexity Properties. SIAM, Philadelphia, PA, 1978.

    MATH  Google Scholar 

  35. J. Hartmanis and R. Stearns. On the computational complexity of algorithms. Transactions of the American Mathematics Society, 117:285–306, 1965.

    Article  MATH  MathSciNet  Google Scholar 

  36. W. Howard. The formulas-as-types notion of construction. In To H.B. Curry: Essays on Combinatory Logic, Lambda-Calculus and Formalism, pages 479–490. Academic Press, NY, 1980.

    Google Scholar 

  37. D. Howe. The computational behaviour of Girard's paradox. Proc. of Second Symp. on Logic in Comp. Sci., IEEE, pages 205–214, June 1987.

    Google Scholar 

  38. D. Howe. Implementing number theory: An experiment with Nuprl. 8th International Conference on Automated Deduction, pages 404–415, July 1987.

    Google Scholar 

  39. D. Howe. Equality in lazy computation systems. In Proc. of Second Symp. on Logic in Comp. Sci., pages 198–203. IEEE Computer Society, June 1989.

    Google Scholar 

  40. D. Howe. A simple type theory for reasoning about functional programs. pre print, 1992.

    Google Scholar 

  41. D. Howe. Reasoning about functional programs in Nuprl. Functional Programming, Concurrency, Simulation and Automated Reasoning, LNCS, 1993. To appear.

    Google Scholar 

  42. G. Huet. Theorem proving systems of the Formel project. In Proc. of the 8th International Conference on Automated Deduction, Lecture Notes in Computer Science, pages 687–688. Springer-Verlag, 1986.

    Google Scholar 

  43. G. Huet. A uniform approach to type theory. In G. Huet, editor, Logical Foundations of Functional Programming, pages 337–398. Addison-Wesley, 1990.

    Google Scholar 

  44. P. B. Jackson. Nuprl and its use in circuit design. In V. Stavridou, T. Melham, and R. Boute, editors, Proceedings of the IFIP TC10/WG10.2 International Conference on Theorem Provers in Circuit Design: Theory, Practice and Experience, pages 311–336. North-Holland, The Netherlands, June 1992.

    Google Scholar 

  45. S. C. Kleene. Introduction to Metamathematics. D. Van Nostrand, Princeton, 1952.

    MATH  Google Scholar 

  46. A. Kolmogorov. Three approaches to the concept of 'the amount of information'. Probl. Inf. Tramsm., 1:1–7, 1965.

    MathSciNet  Google Scholar 

  47. C. Kreitz. Constructive automata theory implemented with the Nuprl proof development system. Technical Report TR 86-779, Cornell University, Ithaca, New York, September 1986.

    Google Scholar 

  48. H. Lauchli. An abstract notion of realizability for which intuitionistic predicate calculus is complete. In Intuitionism and Proof Theory., pages 227–34. North-Holland, Amsterdam, 1970.

    Google Scholar 

  49. M. Leeser. Using Nuprl for the verification and synthesis of hardware. Phil. Trans. R. Soc. Lond., 339:49–68, 1992.

    Article  Google Scholar 

  50. G. Leibniz. Logical Papers: A Selection. Clarendon Press, Oxford, 1966.

    Google Scholar 

  51. L. Levin. Universal search problems. Problemy Peredaci Informacii 9, pages 115–116, 1973.

    MathSciNet  Google Scholar 

  52. P. Martin-Löf. Constructive mathematics and computer programming. In Sixth International Congress for Logic, Methodology, and Philosophy of Science, pages 153–75. North-Holland, Amsterdam, 1982.

    Google Scholar 

  53. D. A. McAllester. ONTIC: A Knowledge Representation System for Mathematics. MIT Press, Cambrige, Mass., 1989.

    MATH  Google Scholar 

  54. J. McCarthy. Computer programs for checking mathematical proofs. In Proceedings of the Symposium in Pure Math, Recursive Function Theory, Vol V, pages 219–228. AMS, Providence, RI, 1962.

    Google Scholar 

  55. R. Milner, J. Parrow, and D. Walker. A calculus of mobile processes, part 1. Technical Report CSR-302-89, LFCS, University of Edinburgh, June 1989.

    Google Scholar 

  56. R. Milner, M. Tofte, and R. Harper. The Definition of Standard ML. The MIT Press, 1991.

    Google Scholar 

  57. C. Murthy. An evaluation semantics for classical proofs. In LICS, '91, pages 96–107, Amsterdam, The Netherlands, July 1991.

    Google Scholar 

  58. B. Nordstrom, K. Petersson, and J. Smith. Programming in Martin-Lof 's Type Theory. Oxford Sciences Publication, Oxford, 1990.

    Google Scholar 

  59. C. Paulin-Mohring. Extracting F′ws programs from proofs in the calculus of constructions. In Proceedings of POPL, 1989.

    Google Scholar 

  60. B. Russell. Mathematical logic as based on a theory of types. Am. J. Math., 30:222–62, 1908.

    Article  Google Scholar 

  61. N. Shankar. Towards mechanical metamathematics. J. Automated Reasoning, 1(4):407–434, 1985.

    Article  MATH  MathSciNet  Google Scholar 

  62. R. Shostak. A practical decision procedure for arithmetic with function symbols. JACM, 26:351–360, 1979.

    Article  MATH  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

A. Bensoussan J. -P. Verjus

Rights and permissions

Reprints and permissions

Copyright information

© 1992 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Constable, R.L. (1992). Formal theories and software systems: Fundamental connections between Computer Science and Logic. In: Bensoussan, A., Verjus, J.P. (eds) Future Tendencies in Computer Science, Control and Applied Mathematics. INRIA 1992. Lecture Notes in Computer Science, vol 653. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-56320-2_55

Download citation

  • DOI: https://doi.org/10.1007/3-540-56320-2_55

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-56320-4

  • Online ISBN: 978-3-540-47520-0

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics