Intersection Types for the lambda-mu Calculus

We introduce an intersection type system for the lambda-mu calculus that is invariant under subject reduction and expansion. The system is obtained by describing Streicher and Reus's denotational model of continuations in the category of omega-algebraic lattices via Abramsky's domain-logic approach. This provides at the same time an interpretation of the type system and a proof of the completeness of the system with respect to the continuation models by means of a filter model construction. We then define a restriction of our system, such that a lambda-mu term is typeable if and only if it is strongly normalising. We also show that Parigot's typing of lambda-mu terms with classically valid propositional formulas can be translated into the restricted system, which then provides an alternative proof of strong normalisability for the typed lambda-mu calculus.

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

[2]  S. V. Bakel Completeness and Partial Soundness Results for Intersection & Union Typing for λ μ μ̃ , 2009 .

[3]  Henk Barendregt,et al.  The Lambda Calculus: Its Syntax and Semantics , 1985 .

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

[5]  Steffen van Bakel Characterisation of Strongly Normalising λμ-Terms , 2013 .

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

[7]  Mariangiola Dezani-Ciancaglini,et al.  Characterising Strong Normalisation for Explicit Substitutions , 2002, LATIN.

[8]  Tristan Crolard,et al.  Deriving a Hoare-Floyd logic for non-local jumps from a formulae-as-types notion of control , 2011, ArXiv.

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

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

[11]  Roberto M. Amadio,et al.  Domains and lambda-calculi , 1998, Cambridge tracts in theoretical computer science.

[12]  S. V. Bakel Sound and Complete Typing for λ μ , 2010 .

[13]  Steffen van Bakel,et al.  Cut-Elimination in the Strict Intersection Type Assignment System is Strongly Normalizing , 2004, Notre Dame J. Formal Log..

[14]  Steffen van Bakel,et al.  An Output-Based Semantics of Λμ with Explicit Substitution in the π-Calculus - Extended Abstract , 2012, IFIP TCS.

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

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

[17]  Daniel J. Dougherty,et al.  Characterizing strong normalization in the Curien-Herbelin symmetric lambda calculus: Extending the Coppo-Dezani heritage , 2008, Theor. Comput. Sci..

[18]  Paula Severi,et al.  Recursive Domain Equations of Filter Models , 2008, SOFSEM.

[19]  Michel Parigot,et al.  On the Computational Interpretation of Negation , 2000, CSL.

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

[21]  Daniel J. Dougherty,et al.  Intersection and union types in the λμ̃μ-calculus , 2004 .

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

[23]  C.-H. Luke Ong,et al.  A semantic view of classical proofs: type-theoretic, categorical, and denotational characterizations , 1996, Proceedings 11th Annual IEEE Symposium on Logic in Computer Science.

[24]  Thomas Streicher,et al.  Classical logic, continuation semantics and abstract machines , 1998, Journal of Functional Programming.

[25]  Samson Abramsky,et al.  Domain Theory in Logical Form , 1991, LICS.

[26]  Walter Py Confluence en -calcul , 1998 .

[27]  Thomas Streicher,et al.  Continuation Models Are Universal for -calculus , 1997 .

[28]  Matthias Felleisen,et al.  Reasoning with Continuations , 1986, LICS.

[29]  Koji Nakazawa,et al.  Reduction System for Extensional Lambda-mu Calculus , 2014, RTA-TLCA.

[30]  Matthias Felleisen,et al.  The calculi of lambda-nu-cs conversion: a syntactic theory of control and state in imperative higher-order programming languages , 1987 .

[31]  Michel Parigot,et al.  Proofs of strong normalisation for second order classical natural deduction , 1997, Journal of Symbolic Logic.

[32]  Takafumi Sakurai,et al.  A Translation of Intersection and Union Types for the λμ-Calculus , 2014, APLAS.

[33]  Michel Parigot,et al.  Lambda-Mu-Calculus: An Algorithmic Interpretation of Classical Natural Deduction , 1992, LPAR.

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

[35]  Shin-ya Katsumata,et al.  Extensional Models of Untyped Lambda-mu Calculus , 2012, CL&C.

[36]  Maribel Fernández The Lambda Calculus , 2009 .

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

[38]  Philippe de Groote,et al.  On the Relation between the λ μ-Calculus and the Syntactic Theory of Sequential Control , 2007 .

[39]  Hugo Herbelin,et al.  Minimal Classical Logic and Control Operators , 2003, ICALP.

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

[41]  Mariangiola Dezani-Ciancaglini,et al.  Intersection and Union Types: Syntax and Semantics , 1995, Inf. Comput..

[42]  Gerhard Gentzen,et al.  Investigations into Logical Deduction , 1970 .

[43]  Mariangiola Dezani-Ciancaglini,et al.  A complete characterization of complete intersection-type preorders , 2003, TOCL.

[44]  Ugo de'Liguoro The approximation theorem for the Λμ-calculus , 2017, Math. Struct. Comput. Sci..

[45]  Hugo Herbelin,et al.  The duality of computation , 2000, ICFP '00.

[46]  M. Dezani-Ciancaglini,et al.  Extended Type Structures and Filter Lambda Models , 1984 .

[47]  C.-H. Luke Ong,et al.  A Curry-Howard foundation for functional computation with control , 1997, POPL '97.