Abstract
In typical non-idempotent intersection type systems, proof normalization is not confluent. In this paper we introduce a confluent non-idempotent intersection type system for the \(\lambda \)-calculus. Typing derivations are presented using proof term syntax. The system enjoys good properties: subject reduction, strong normalization, and a very regular theory of residuals. A correspondence with the \(\lambda \)-calculus is established by simulation theorems. The machinery of non-idempotent intersection types allows us to track the usage of resources required to obtain an answer. In particular, it induces a notion of garbage: a computation is garbage if it does not contribute to obtaining an answer. Using these notions, we show that the derivation space of a \(\lambda \)-term may be factorized using a variant of the Grothendieck construction for semilattices. This means, in particular, that any derivation in the \(\lambda \)-calculus can be uniquely written as a garbage-free prefix followed by garbage.
Work partially supported by CONICET.
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 subscriptionsNotes
- 1.
- 2.
Problem 2 in the RTA List of Open Problems [14] poses the open-ended question of investigating the properties of “spectra”, i.e. derivation spaces.
- 3.
References
Accattoli, B., Bonelli, E., Kesner, D., Lombardi, C.: A nonstandard standardization theorem. In: POPL 2014, 20–21 January 2014, San Diego, CA, USA, pp. 659–670 (2014)
Asperti, A., Lévy, J.: The cost of usage in the lambda-calculus. In: 28th Annual ACM/IEEE Symposium on Logic in Computer Science, LICS 2013, 25–28 June 2013, New Orleans, LA, USA, pp. 293–300 (2013)
Barendregt, H.P., Kennaway, J.R., Klop, J.W., Sleep, M.R.: Needed reduction and spine strategies for the lambda calculus. Inf. Comput. 75(3), 191–231 (1987)
Barendregt, H.: The Lambda Calculus: Its Syntax and Semantics, vol. 103. Elsevier, Amsterdam (1984)
Bernadet, A., Lengrand, S.J.: Non-idempotent intersection types and strong normalisation. arXiv preprint arXiv:1310.1622 (2013)
Boudol, G.: The lambda-calculus with multiplicities. In: Best, E. (ed.) CONCUR 1993. LNCS, vol. 715, pp. 1–6. Springer, Heidelberg (1993). https://doi.org/10.1007/3-540-57208-2_1
Bucciarelli, A., Kesner, D., Ronchi Della Rocca, S.: The inhabitation problem for non-idempotent intersection types. In: Diaz, J., Lanese, I., Sangiorgi, D. (eds.) TCS 2014. LNCS, vol. 8705, pp. 341–354. Springer, Heidelberg (2014). https://doi.org/10.1007/978-3-662-44602-7_26
Bucciarelli, A., Kesner, D., Ventura, D.: Non-idempotent intersection types for the lambda-calculus. Log. J. IGPL 25(4), 431–464 (2017)
Carvalho, D.D.: Sémantiques de la logique linéaire et temps de calcul. Ph.D. thesis, Ecole Doctorale Physique et Sciences de la Matière (Marseille) (2007)
Church, A., Rosser, J.B.: Some properties of conversion. Trans. Am. Math. Soc. 39(3), 472–482 (1936)
Rodríguez, G.C.: Factorización de derivaciones a través de tipos intersección. Master’s thesis, Facultad de Ciencias Exactas y Naturales, Universidad de Buenos Aires, June 2018. http://www.dc.uba.ar/academica/tesis-de-licenciatura/2018/ciruelos.pdf
Coppo, M., Dezani-Ciancaglini, M.: A new type assignment for lambda-terms. Arch. Math. Log. 19(1), 139–156 (1978)
Curry, H., Feys, R.: Combinatory Logic, vol. 1. North-Holland Publishing Company, Amsterdam (1958)
Dershowitz, N., Jouannaud, J.-P., Klop, J.W.: Open problems in rewriting. In: Book, R.V. (ed.) RTA 1991. LNCS, vol. 488, pp. 445–456. Springer, Heidelberg (1991). https://doi.org/10.1007/3-540-53904-2_120
Ehrhard, T.: Collapsing non-idempotent intersection types. In: LIPIcs-Leibniz International Proceedings in Informatics, vol. 16. Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik (2012)
Ehrhard, T., Regnier, L.: The differential lambda-calculus. Theor. Comput. Sci. 309(1), 1–41 (2003)
Ehrhard, T., Regnier, L.: Uniformity and the taylor expansion of ordinary lambda-terms. Theor. Comput. Sci. 403(2–3), 347–372 (2008)
Gardner, P.: Discovering needed reductions using type theory. In: Hagiya, M., Mitchell, J.C. (eds.) TACS 1994. LNCS, vol. 789, pp. 555–574. Springer, Heidelberg (1994). https://doi.org/10.1007/3-540-57887-0_115
Girard, J.Y.: Linear logic. Theor. Comput. Sci. 50(1), 1–101 (1987)
Kesner, D.: Reasoning about call-by-need by means of types. In: Jacobs, B., Löding, C. (eds.) FoSSaCS 2016. LNCS, vol. 9634, pp. 424–441. Springer, Heidelberg (2016). https://doi.org/10.1007/978-3-662-49630-5_25
Kesner, D., Lengrand, S.: Resource operators for \(\lambda \)-calculus. Inf. Comput. 205(4), 419–473 (2007)
Kesner, D., Renaud, F.: The prismoid of resources. In: Královič, R., Niwiński, D. (eds.) MFCS 2009. LNCS, vol. 5734, pp. 464–476. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-03816-7_40
Kesner, D., Ríos, A., Viso, A.: Call-by-need, neededness and all that. In: Baier, C., Dal Lago, U. (eds.) FoSSaCS 2018. LNCS, vol. 10803, pp. 241–257. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-89366-2_13
Kfoury, A.J.: A linearization of the lambda-calculus and consequences. Technical report, Boston University, Computer Science Department (1996)
Laneve, C.: Distributive evaluations of \(\lambda \)-calculus. Fundam. Inform. 20(4), 333–352 (1994)
Lévy, J.J.: Réductions correctes et optimales dans le lambda-calcul. Ph.D. thesis, Université de Paris 7 (1978)
Lévy, J.J.: Redexes are stable in the \(\lambda \)-calculus. Math. Struct. Comput. Sci. 27(5), 738–750 (2017)
Mazza, D., Pellissier, L., Vial, P.: Polyadic approximations, fibrations and intersection types. Proc. ACM Program. Lang. 2(POPL), 6 (2018)
Melliès, P.A.: Description abstraite des systèmes de réécriture. Ph.D. thesis, Université Paris 7, December 1996
Melliès, P.-A.: A factorisation theorem in rewriting theory. In: Moggi, E., Rosolini, G. (eds.) CTCS 1997. LNCS, vol. 1290, pp. 49–68. Springer, Heidelberg (1997). https://doi.org/10.1007/BFb0026981
Melliès, P.-A.: Axiomatic rewriting theory VI: residual theory revisited. In: Tison, S. (ed.) RTA 2002. LNCS, vol. 2378, pp. 24–50. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-45610-4_4
Melliès, P.-A.: Axiomatic rewriting theory I: a diagrammatic standardization theorem. In: Middeldorp, A., van Oostrom, V., van Raamsdonk, F., de Vrijer, R. (eds.) Processes, Terms and Cycles: Steps on the Road to Infinity. LNCS, vol. 3838, pp. 554–638. Springer, Heidelberg (2005). https://doi.org/10.1007/11601548_23
Terese: Term Rewriting Systems, Cambridge Tracts in Theoretical Computer Science, vol. 55. Cambridge University Press (2003)
Vial, P.: Non-idempotent typing operators, beyond the lambda-calculus. Ph.D. thesis, Université Paris 7, December 2017
Zilli, M.V.: Reduction graphs in the lambda calculus. Theor. Comput. Sci. 29, 251–275 (1984). https://doi.org/10.1016/0304-3975(84)90002-1
Acknowledgements
To Eduardo Bonelli and Delia Kesner for introducing the first author to these topics. To Luis Scoccola and the anonymous reviewers for helpful suggestions.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2018 Springer Nature Switzerland AG
About this paper
Cite this paper
Barenbaum, P., Ciruelos, G. (2018). Factoring Derivation Spaces via Intersection Types. In: Ryu, S. (eds) Programming Languages and Systems. APLAS 2018. Lecture Notes in Computer Science(), vol 11275. Springer, Cham. https://doi.org/10.1007/978-3-030-02768-1_2
Download citation
DOI: https://doi.org/10.1007/978-3-030-02768-1_2
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-02767-4
Online ISBN: 978-3-030-02768-1
eBook Packages: Computer ScienceComputer Science (R0)