Simple Types in Type Theory: Deep and Shallow Encodings

  • François Garillot
  • Benjamin Werner
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4732)


We present a formal treatment of normalization by evaluation in type theory. The involved semantics of simply-typed λ-calculus is exactly the simply typed fragment of the type theory. This means we have constructed and proved correct a decompilation function which recovers the syntax of a program, provided it belongs to the simply typed fragment. The development runs and is checked in Coq. Possible applications include the formal treatment of languages with binders.


Normal Form Free Variable Type Theory Formal Treatment Simple Type 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Altenkirch, T., Dybjer, P., Hofmann, M., Scott, P.J.: Normalization by evaluation for typed lambda calculus with coproducts. In: LICS, pp. 303–310 (2001)Google Scholar
  2. 2.
    Berger, U.: Program extraction from normalization proofs. In: Bezem, M., Groote, J.F. (eds.) TLCA 1993. LNCS, vol. 664, pp. 91–106. Springer, Heidelberg (1993)CrossRefGoogle Scholar
  3. 3.
    Berger, U., Berghofer, S., Letouzey, P., Schwichtenberg, H.: Program extraction from normalization proofs. Studia Logica 82(1), 25–49 (2006)zbMATHCrossRefMathSciNetGoogle Scholar
  4. 4.
    Berger, U., Eberl, M., Schwichtenberg, H.: Normalisation by evaluation. In: Möller, B., Tucker, J.V. (eds.) Prospects for Hardware Foundations. LNCS, vol. 1546, pp. 117–137. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  5. 5.
    Berger, U., Eberl, M., Schwichtenberg, H.: Term rewriting for normalization by evaluation. Inf. Comput. 183(1), 19–42 (2003)zbMATHCrossRefMathSciNetGoogle Scholar
  6. 6.
    Berger, U., Schwichtenberg, H.: An inverse of the evaluation functional for typed lambda-calculus. In: LICS, pp. 203–211. IEEE Computer Society Press, Los Alamitos (1991)Google Scholar
  7. 7.
    Capretta, V., Felty, A.: Combining de bruijn indices and higher-order abstract syntax in coq. In: Altenkirch, T., McBride, C. (eds.) Proceedings of TYPES 2006. LNCS, Springer, Heidelberg (2007)Google Scholar
  8. 8.
    Coquand, C.: From semantics to rules: A machine assisted analysis. In: Meinke, K., Börger, E., Gurevich, Y. (eds.) CSL 1993. LNCS, vol. 832, pp. 91–105. Springer, Heidelberg (1994)CrossRefGoogle Scholar
  9. 9.
    Coquand, C.: A formalised proof of the soundness and completeness of a simply typed lambda-calculus with explicit substitutions. Higher-Order and Symbolic Computation 15(1), 57–90 (2002)zbMATHCrossRefGoogle Scholar
  10. 10.
    Danvy, O., Rhiger, M., Rose, K.H.: Normalization by evaluation with typed abstract syntax. J. Funct. Program. 11(6), 673–680 (2001)zbMATHCrossRefMathSciNetGoogle Scholar
  11. 11.
    Despeyroux, J., Pfenning, F., Schürmann, C.: Primitive recursion for higher-order abstract syntax. In: de Groote, P., Hindley, J.R. (eds.) TLCA 1997. LNCS, vol. 1210, pp. 147–163. Springer, Heidelberg (1997)Google Scholar
  12. 12.
    Gonthier, G.: A computer-checked proof of the four colour theorem (2005), available on
  13. 13.
    Gonthier, G.: Notations of the four colour theorem proof (2005), available on
  14. 14.
    Krivine, J.-L.: Une preuve formelle et intuitionniste du théorème de complétude de la logique classique. Bulletin of Symbolic Logic 2(4), 405–421 (1996)zbMATHCrossRefMathSciNetGoogle Scholar
  15. 15.
    Pfenning, F., Elliott, C.: Higher-order abstract syntax. In: PLDI, pp. 199–208 (1988)Google Scholar
  16. 16.
    Schürmann, C., Despeyroux, J., Pfenning, F.: Primitive recursion for higher-order abstract syntax. Theor. Comput. Sci. 266(1-2), 1–57 (2001)zbMATHCrossRefGoogle Scholar
  17. 17.
    Stoughton, A.: Substitution revisited. Theor. Comput. Sci. 59, 317–325 (1988)zbMATHCrossRefMathSciNetGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • François Garillot
    • 1
  • Benjamin Werner
    • 2
  1. 1.École Normale Supéieure, 45 rue d’Ulm, Paris, France, and INRIA-Futurs at  , LIX, École Polytechnique, PalaiseauFrance
  2. 2.INRIA-Futurs at, LIX, École Polytechnique, PalaiseauFrance

Personalised recommendations