Abstract
We show that the set-theoretic semantics of λ →2—simply typed lambda calculus with a boolean type but no type variables—is complete by inverting evaluation using decision trees. This leads to an implementation of normalization by evaluation which is witnessed by the source of part of this paper being a literate Haskell script. We show the correctness of our implementation using logical relations.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Altenkirch, T., Dybjer, P., Hofmann, M., Scott, P.: Normalization by evaluation for typed lambda calculus with coproducts. In: Proc. of 16th Annual IEEE Symposium on Logic in Computer Science, pp. 303–310. IEEE CS Press, Los Alamitos (2001)
Altenkirch, T., Hofmann, M., Streicher, T.: Categorical reconstruction of a reduction free normalization proof. In: Johnstone, P.T., Rydeheard, D.E., Pitt, D.H. (eds.) CTCS 1995. LNCS, vol. 953, pp. 182–199. Springer, Heidelberg (1995)
Altenkirch, T., Hofmann, M., Streicher, T.: Reduction-free normalisation for a polymorphic system. In: Proc. of 11th Annual IEEE Symposium on Logic in Computer Science, pp. 98–106. IEEE CS Press, Los Alamitos (1996)
Altenkirch, T., Hofmann, M., Streicher, T.: Reduction-free normalisation for system F (1997) (unpublished), available on WWW at http://www.cs.nott.ac.uk/~txa/publ/f97.pdf
Balat, V.: Une étude des sommes fortes: isomorphismes et formes normales. PhD thesis, Université Denis Diderot (2002)
Berger, U., Schwichtenberg, H.: An inverse of the evaluation functional for typed λ-calculus. In: Proc. of 6th Annual IEEE Symposium on Logic in Computer Science, pp. 202–211. IEEE CS Press, Los Alamitos (1991)
Bryant, R.E.: Graph-based algorithms for boolean function manipulation. IEEE Trans. on Computers 35(8), 677–691 (1986)
Dougherty, D.J., Subrahmanyam, R.: Equality between functionals in the presence of coproducts. Information and Computation 157(1-2), 52–83 (2000)
Dybjer, P., Filinski, A.: Normalization and partial evaluation. In: Barthe, G., Dybjer, P., Pinto, L., Saraiva, J. (eds.) APPSEM 2000. LNCS, vol. 2395, pp. 137–192. Springer, Heidelberg (2002)
Ghani, N.: Adjoint Rewriting. PhD thesis, LFCS, Univ. of Edinburgh (1995)
Ghani, N.: βη-equality for coproducts. In: Dezani-Ciancaglini, M., Plotkin, G. (eds.) TLCA 1995. LNCS, vol. 902, pp. 171–185. Springer, Heidelberg (1995)
McBride, C., McKinna, J.: The view from the left. To appear in the Journal of Functional Programming, Special Issue: Dependent Type Theory Meets Programming Practice (2004)
Plotkin, G.D.: Lambda-definability and logical relations. Memorandum SAI-RM-4, Lab. for Artif. Intell., Univ. of Edinburgh (October 1973)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2004 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Altenkirch, T., Uustalu, T. (2004). Normalization by Evaluation for λ →2 . In: Kameyama, Y., Stuckey, P.J. (eds) Functional and Logic Programming. FLOPS 2004. Lecture Notes in Computer Science, vol 2998. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-24754-8_19
Download citation
DOI: https://doi.org/10.1007/978-3-540-24754-8_19
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-21402-1
Online ISBN: 978-3-540-24754-8
eBook Packages: Springer Book Archive