Light Functional Interpretation

An Optimization of Gödel’s Technique Towards the Extraction of (More) Efficient Programs from (Classical) Proofs
  • Mircea-Dan Hernest
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3634)


We give a Natural Deduction formulation of an adaptation of Gödel’s functional (Dialectica) interpretation to the extraction of (more) efficient programs from (classical) proofs. We adapt Jørgensen’s formulation of pure Dialectica translation by eliminating his “Contraction Lemma” and allowing free variables in the extracted terms (which is more suitable in a Natural Deduction setting). We also adapt Berger’s uniform existential and universal quantifiers to the Dialectica-extraction context. The use of such quantifiers without computational meaning permits the identification and isolation of contraction formulas which would otherwise be redundantly included in the pure-Dialectica extracted terms. In the end we sketch the possible combination of our refinement of Gödel’s Dialectica interpretation with its adaptation to the extraction of bounds due to Kohlenbach into a light monotone functional interpretation.


Program extraction from (classical) proofs Complexity of extracted programs Berger’s uniform quantifiers Gödel’s Functional interpretation Proof-Carrying Code Proof Mining 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Avigad, J.: Interpreting classical theories in constructive ones. The Journal of Symbolic Logic 65(4), 1785–1812 (2000)zbMATHCrossRefMathSciNetGoogle Scholar
  2. 2.
    Avigad, J., Feferman, S.: Gödel’s functional (‘Dialectica’) interpretation. In: Buss, S.R. (ed.) Handbook of Proof Theory. Studies in Logic and the Foundations of Mathematics, vol. 137, pp. 337–405. Elsevier, Amsterdam (1998)CrossRefGoogle Scholar
  3. 3.
    Barbanera, F., Berardi, S.: Extracting constructive content from classical logic via control–like reductions. In: Bezem, M., Groote, J.F. (eds.) TLCA 1993. LNCS, vol. 664, pp. 45–59. Springer, Heidelberg (1993)CrossRefGoogle Scholar
  4. 4.
    Bates, J.L., Constable, R.L.: Proofs as programs. ACM Transactions on Programming Languages and Systems 7(1), 113–136 (1985)zbMATHCrossRefGoogle Scholar
  5. 5.
    Berger, U.: Uniform Heyting Arithmetic. Annals of Pure and Applied Logic 133(1-3), 125–148 (2005); Festschrift for H. Schwichtenberg’s 60th birthdayzbMATHCrossRefMathSciNetGoogle Scholar
  6. 6.
    Berger, U., Buchholz, W., Schwichtenberg, H.: Refined program extraction from classical proofs. Annals of Pure and Applied Logic 114, 3–25 (2002)zbMATHCrossRefMathSciNetGoogle Scholar
  7. 7.
    Berger, U., Schwichtenberg, H., Seisenberger, M.: The Warshall algorithm and Dickson’s lemma: Two examples of realistic program extraction. Journal of Automated Reasoning 26, 205–221 (2001)zbMATHCrossRefMathSciNetGoogle Scholar
  8. 8.
    Constable, R.L., Murthy, C.: Finding computational content in classical proofs. In: Huet, G., Plotkin, G. (eds.) Logical Frameworks, pp. 341–362. Cambridge University Press, Cambridge (1991)CrossRefGoogle Scholar
  9. 9.
    Coquand, T., Hofmann, M.: A new method for establishing conservativity of classical systems over their intuitionistic version. Mathematical Structures in Computer Science 9(4), 323–333 (1999)zbMATHCrossRefMathSciNetGoogle Scholar
  10. 10.
    Diller, J., Nahm, W.: Eine Variante zur Dialectica Interpretation der Heyting Arithmetik endlicher Typen. Archiv für Mathematische Logik und Grundlagenforschung 16, 49–66 (1974)zbMATHCrossRefMathSciNetGoogle Scholar
  11. 11.
    Ferreira, F., Oliva, P.: Bounded Functional Interpretation. Annals of Pure and Applied Logic, 48 pp., see Elseviers’s Science Direct on the Internet (to appear)Google Scholar
  12. 12.
    Friedman, H.: Classical and intuitionistically provably recursive functions. In: Bird, R.S., Woodcock, J.C.P., Morgan, C.C. (eds.) MPC 1992. LNCS, vol. 669, pp. 21–27. Springer, Heidelberg (1993)Google Scholar
  13. 13.
    Gödel, K.: Über eine bisher noch nicht benützte Erweiterung des finiten Standpunktes. Dialectica 12, 280–287 (1958)zbMATHCrossRefMathSciNetGoogle Scholar
  14. 14.
    Hernest, M.-D.: Technical Appendix to this paper. See the author’s web-pageGoogle Scholar
  15. 15.
    Hernest, M.-D.: A comparison between two techniques of program extraction from classical proofs. In: Baaz, M., Makovsky, J., Voronkov, A. (eds.) CSL 2003. Kurt Gödel Society’s Collegium Logicum, vol. VIII, pp. 99–102. Springer, Heidelberg (2004)Google Scholar
  16. 16.
    Hernest, M.-D., Kohlenbach, U.: A complexity analysis of functional interpretations. Theoretical Computer Science 338(1-3), 200–246 (2005)zbMATHCrossRefMathSciNetGoogle Scholar
  17. 17.
    Howard, W.A.: Hereditarily majorizable functionals of finite type. In: [38], pp. 454–461Google Scholar
  18. 18.
    Johansson, I.: Der Minimalkalkül, ein reduzierter intuitionistischer Formalismus. Compositio Matematica 4, 119–136 (1936)zbMATHMathSciNetGoogle Scholar
  19. 19.
    Jørgensen, K.F.: Finite type arithmetic. Master’s thesis, Departments of Mathematics and Philosophy, University of Roskilde, Roskilde, Denmark (2001)Google Scholar
  20. 20.
    Kohlenbach, U.: Proof Interpretations and the Computational Content of Proofs. Lecture Course, latest version in the author’s web pageGoogle Scholar
  21. 21.
    Kohlenbach, U.: Analysing proofs in Analysis. In: Hodges, W., Hyland, M., Steinhorn, C., Truss, J. (eds.) Logic: from Foundations to Applications, Keele, 1993. European Logic Colloquium, pp. 225–260. Oxford University Press, Oxford (1996)Google Scholar
  22. 22.
    Kohlenbach, U., Oliva, P.: Proof mining: a systematic way of analysing proofs in Mathematics. Proc. of the Steklov Institute of Mathematics 242, 136–164 (2003)MathSciNetGoogle Scholar
  23. 23.
    Kreisel, G.: Interpretation of analysis by means of constructive functionals of finite types. In: Heyting, A. (ed.) Constructivity in Mathematics, pp. 101–128. North-Holland Publishing Company, Amsterdam (1959)Google Scholar
  24. 24.
    Krivine, J.-L.: Classical logic, storage operators and second-order lambda-calculus. Annals of Pure and Applied Logic 68, 53–78 (1994)zbMATHCrossRefMathSciNetGoogle Scholar
  25. 25.
    Leivant, D.: Syntactic translations and provably recursive functions. The Journal of Symbolic Logic 50(3), 682–688 (1985)zbMATHCrossRefMathSciNetGoogle Scholar
  26. 26.
    Luckhardt, H.: Extensional Gödel Functional Interpretation. Lecture Notes in Mathematics, vol. 306. Springer, Heidelberg (1973)zbMATHGoogle Scholar
  27. 27.
    Luckhardt, H.: Bounds extracted by Kreisel from ineffective proofs. In: Odifreddi, P. (ed.) Kreiseliana: About and around Georg Kreisel, pp. 289–300. A.K. Peters, Wellesley (1996)Google Scholar
  28. 28.
    Murthy, C.: Extracting constructive content from classical proofs. Tech. Report 90– 1151, Dep.of Comp.Science, Cornell Univ., Ithaca, NY, U.S.A, PhD thesis (1990)Google Scholar
  29. 29.
    Ostrin, G.E., Wainer, S.S.: Elementary arithmetic. Annals of Pure and Applied Logic 133(1-3), 275–292 (2005); Festschrift for H. Schwichtenberg’s 60szbMATHCrossRefMathSciNetGoogle Scholar
  30. 30.
    Parigot, M.: λμ–calculus: an algorithmic interpretation of classical natural deduction. In: Voronkov, A. (ed.) LPAR 1992. LNCS, vol. 624, pp. 190–201. Springer, Heidelberg (1992)CrossRefGoogle Scholar
  31. 31.
    Paulin-Mohring, C., Werner, B.: Synthesis of ML programs in the system Coq. Journal of Symbolic Computation 15(5/6), 607–640 (1993)zbMATHCrossRefMathSciNetGoogle Scholar
  32. 32.
    Raffalli, C.: Getting results from programs extracted from classical proofs. Theoretical Computer Science 323(1-3), 49–70 (2004)zbMATHCrossRefMathSciNetGoogle Scholar
  33. 33.
    Rath, P.: Eine verallgemeinerte Funktionalinterpretation der Heyting Arithmetik endlicher Typen. PhD thesis, Universität Münster, Germany (1978)Google Scholar
  34. 34.
    Schwichtenberg, H.: Minimal logic for computable functions. Lecture course on program-extraction from (classical) proofs. Author’s page or Minlog distrib. In: [36]Google Scholar
  35. 35.
    Schwichtenberg, H.: Monotone majorizable functionals. Studia Logica 62, 283–289 (1999)zbMATHCrossRefMathSciNetGoogle Scholar
  36. 36.
    Schwichtenberg, H., et al.: Proof- and program-extraction system Minlog, Free code and documentation at
  37. 37.
    Stein, M.: Interpretation der Heyting-Arithmetik endlicher Typen. PhD thesis, Universit ät Münster, Germany (1976)Google Scholar
  38. 38.
    Troelstra, A.S. (ed.): Metamathematical investigation of intuitionistic Arithmetic and Analysis. Lecture Notes in Mathematics, vol. 344. Springer, Heidelberg (1973)zbMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Mircea-Dan Hernest
    • 1
  1. 1.Laboratoire d’Informatique (LIX)École PolytechniquePalaiseauFrance

Personalised recommendations