Non-idempotent intersection types for the Lambda-Calculus

This article explores the use of non-idempotent intersection types in the framework of the λ-calculus. Different topics are presented in a uniform framework: head normalization, weak normalization, weak head normalization, strong normalization, inhabitation, exact bounds and principal typings. The reducibility technique, traditionally used when working with idempotent types, is replaced in this framework by trivial combinatorial arguments.

[1]  Delia Kesner,et al.  Reasoning About Call-by-need by Means of Types , 2016, FoSSaCS.

[2]  Joe B. Wells,et al.  The Algebra of Expansion , 2012, Fundam. Informaticae.

[3]  Mariangiola Dezani-Ciancaglini,et al.  A filter lambda model and the completeness of type assignment , 1983, Journal of Symbolic Logic.

[4]  Coppo Mario,et al.  A new type assignment for lambda-terms , 1978 .

[5]  Silvia Ghilezan,et al.  Strong Normalization and Typability with Intersection Types , 1996, Notre Dame J. Formal Log..

[6]  Christian Mossin,et al.  Exact flow analysis , 1997, Mathematical Structures in Computer Science.

[7]  Peter Møller Neergaard,et al.  THEORETICAL PEARL A Bargain for Intersection Types : A Simple Strong Normalization Proof , 2005 .

[8]  Simona Ronchi Della Rocca,et al.  Principal Type Scheme and Unification for Intersection Type Discipline , 1988, Theor. Comput. Sci..

[9]  Simona Ronchi Della Rocca,et al.  Principal Type Schemes for an Extended Type Theory , 1984, Theor. Comput. Sci..

[10]  Hugo Herbelin,et al.  A Lambda-Calculus Structure Isomorphic to Gentzen-Style Sequent Calculus Structure , 1994, CSL.

[11]  Sandra Alves,et al.  Liquid Intersection Types , 2014, ITRS.

[12]  Assaf J. Kfoury A linearization of the Lambda-calculus and consequences , 2000, J. Log. Comput..

[13]  Joshua Dunfield,et al.  Elaborating intersection and union types , 2012, Journal of Functional Programming.

[14]  J. Roger Hindley,et al.  To H.B. Curry: Essays on Combinatory Logic, Lambda Calculus, and Formalism , 1980 .

[15]  Thomas Ehrhard,et al.  Collapsing non-idempotent intersection types , 2012, CSL.

[16]  Jean-Louis Krivine,et al.  Lambda-calculus, types and models , 1993, Ellis Horwood series in computers and their applications.

[17]  Mauro Piccolo Strong Normalization in the π-calculus with Intersection and Union Types , 2012, Fundam. Informaticae.

[18]  Silvio Valentini An elementary proof of strong normalization for intersection types , 2001, Arch. Math. Log..

[19]  John C. Reynolds,et al.  Design of the programming language FORSYTHE , 1997 .

[20]  Paola Giannini,et al.  A Decidable Intersection Type System based on Relevance , 1994, TACS.

[21]  Antonio Bucciarelli,et al.  Observability for Pair Pattern Calculi , 2015, TLCA.

[22]  F. Cardone,et al.  Two extensions of Curry's type inference system , 1990 .

[23]  Frank Pfenning,et al.  Refinement types for ML , 1991, PLDI '91.

[24]  Antonio Bucciarelli,et al.  Strong Normalization through Intersection Types and Memory , 2016, LSFA.

[25]  Steven J. Ramsay,et al.  Exact Intersection Type Abstractions for Safety Checking of Recursion Schemes , 2014, PPDP '14.

[26]  Mariangiola Dezani-Ciancaglini,et al.  An extension of the basic functionality theory for the λ-calculus , 1980, Notre Dame J. Formal Log..

[27]  Thierry Coquand,et al.  A Proof of Strong Normalisation using Domain Theory , 2006, 21st Annual IEEE Symposium on Logic in Computer Science (LICS'06).

[28]  Delia Kesner,et al.  Quantitative Types for the Linear Substitution Calculus , 2014, IFIP TCS.

[29]  Pawel Urzyczyn The Emptiness Problem for Intersection Types , 1999, J. Symb. Log..

[30]  Philippa Gardner,et al.  Discovering Needed Reductions Using Type Theory , 1994, TACS.

[31]  J. Roger Hindley,et al.  Lambda calculus with types (Perspectives in Logic) , 2014 .

[32]  Steffen van Bakel,et al.  Complete Restrictions of the Intersection Type Discipline , 1992, Theor. Comput. Sci..

[33]  Emilie Sayag,et al.  A New Presentation of the Intersection Type Discipline through Principal Typings of Normal Forms , 1996 .

[34]  Mariangiola Dezani-Ciancaglini,et al.  Functional Characters of Solvable Terms , 1981, Math. Log. Q..

[35]  Luca Padovani Session Types = Intersection Types + Union Types , 2010, ITRS.

[36]  Steffen van Bakel,et al.  Principal Type Schemes for the Strict Type Assignment System , 1993, J. Log. Comput..

[37]  Simona Ronchi Della Rocca,et al.  Bounding normalization time through intersection types , 2012, ITRS.

[38]  Giulio Manzonetto,et al.  Loader and Urzyczyn Are Logically Related , 2012, ICALP.

[39]  Thierry Coquand,et al.  A Proof of Strong Normalisation using Domain Theory , 2006, LICS.

[40]  Alberto Carraro,et al.  A Semantical and Operational Account of Call-by-Value Solvability , 2014, FoSSaCS.

[41]  M. Nivat Fiftieth volume of theoretical computer science , 1988 .

[42]  Jens Palsberg,et al.  From polyvariant flow information to intersection and union types , 1998, POPL '98.

[43]  William W. Tait,et al.  Intensional interpretations of functionals of finite type I , 1967, Journal of Symbolic Logic.

[44]  G. Pottinger,et al.  A type assignment for the strongly normalizable |?-terms , 1980 .

[45]  D. Carvalho,et al.  Sémantiques de la logique linéaire et temps de calcul , 2007 .

[46]  Joe B. Wells,et al.  The Essence of Principal Typings , 2002, ICALP.

[47]  Delia Kesner,et al.  A nonstandard standardization theorem , 2014, POPL.

[48]  Michael Rathjen,et al.  Lambda Calculus with Types , 2014 .

[49]  Delia Kesner,et al.  A resource aware semantics for a focused intuitionistic calculus , 2017, Mathematical Structures in Computer Science.

[50]  Joe B. Wells,et al.  Expansion: the Crucial Mechanism for Type Inference with Intersection Types: Survey and Explanation 1 Background and Motivation , 2022 .

[51]  Giorgio Levi,et al.  INTERNATIONAL JOINT CONFERENCE ON THEORY AND PRACTICE OF SOFTWARE-DEVELOPMENT, PISA, MARCH 1987 , 1988 .

[52]  Luca Padovani,et al.  On projecting processes into session types , 2012, Mathematical Structures in Computer Science.

[53]  Mariangiola Dezani-Ciancaglini,et al.  A new type assignment for λ-terms , 1978, Arch. Math. Log..

[54]  Emilie Sayag,et al.  Characterization of the Principal Type of Normal Forms in an Intersection Type System , 1996, FSTTCS.

[55]  Mariangiola Dezani-Ciancaglini,et al.  Behavioural inverse limit lambda-models , 2004, Theor. Comput. Sci..

[56]  Davide Sangiorgi,et al.  The Pi-Calculus - a theory of mobile processes , 2001 .

[57]  Patrick Lincoln,et al.  Linear logic , 1992, SIGA.

[58]  Frank Pfenning,et al.  Type Assignment for Intersections and Unions in Call-by-Value Languages , 2003, FoSSaCS.

[59]  Stéphane Lengrand,et al.  Non-idempotent intersection types and strong normalisation , 2013, Log. Methods Comput. Sci..

[60]  Steffen van Bakel,et al.  Intersection Type Assignment Systems , 1995, Theor. Comput. Sci..

[61]  H. B. Curry,et al.  Combinatory Logic, Volume I. , 1961 .

[62]  Masami Hagiya,et al.  Theoretical Aspects of Computer Software , 1994, Lecture Notes in Computer Science.

[63]  Furio Honsell,et al.  A type assignment system for game semantics , 2008, Theor. Comput. Sci..

[64]  Assaf J. Kfoury,et al.  Principality and type inference for intersection types using expansion variables , 2004, Theor. Comput. Sci..

[65]  F. Raamsdonk Confluence and Normalisation of Higher-Order Rewriting , 1996 .

[66]  Lorenzo Tortora de Falco,et al.  A semantic account of strong normalization in linear logic , 2013, Inf. Comput..

[67]  Luca Padovani,et al.  Foundations of session types , 2009, PPDP '09.

[68]  Michele Pagani,et al.  Solvability in Resource Lambda-Calculus , 2010, FoSSaCS.

[69]  Pierre-Louis Curien,et al.  A semantics for lambda calculi with resources , 1999, Mathematical Structures in Computer Science.

[70]  Steffen van Bakel,et al.  Strict intersection types for the Lambda Calculus , 2011, ACM Comput. Surv..