Principal type scheme and unification for intersection type discipline
Theoretical Computer Science - International Joint Conference on Theory and Practice of Software Development, P
POPL '90 Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Lambda-calculus, types and models
Lambda-calculus, types and models
Intersection type assignment systems
Selected papers of the thirteenth conference on Foundations of software technology and theoretical computer science
Strong normalization from weak normalization in typed &lgr;-calculi
Information and Computation
Perpetual reductions in &lgr;-calculus
Information and Computation
Concepts in Programming Languages
Concepts in Programming Languages
Internal Labellings in Lambda-Calculus
MFCS '90 Proceedings of the Mathematical Foundations of Computer Science 1990
The Conservation Theorem revisited
TLCA '93 Proceedings of the International Conference on Typed Lambda Calculi and Applications
Une Extension de la Theorie des Types en lambda-Calcul
Proceedings of the Fifth Colloquium on Automata, Languages and Programming
LICS '95 Proceedings of the 10th Annual IEEE Symposium on Logic in Computer Science
Addendum to ``New Notions of Reduction and Non-Semantic Proofs of Beta Strong Normalization in Typed Lambda Calculi''''
Principality and type inference for intersection types using expansion variables
Theoretical Computer Science
Types, potency, and idempotency: why nonlinearity and amnesia make a type system work
Proceedings of the ninth ACM SIGPLAN international conference on Functional programming
Model-checking higher-order functions
PPDP '09 Proceedings of the 11th ACM SIGPLAN conference on Principles and practice of declarative programming
Model Checking Higher-Order Programs
Journal of the ACM (JACM)
Hi-index | 5.23 |
We introduce a new unification procedure for the type inference problem in the intersection type discipline. It is well known that type inference in this case should succeed exactly for the strongly normalizing expressions. We give a proof for the strong normalization result in the intersection type discipline, which we obtain by putting together some well-known results and proof techniques. Our proof uses a variant of Klop's extended @l-calculus, for which it is shown that strong normalization is equivalent to weak normalization. This is proved here by means of a finiteness of developments theorem, obtained following de Vrijer's combinatory technique. The main property of this extended calculus is uniformity, i.e. weak and strong normalizabilities coincide. The strong normalizability result is therefore a consequence of the fact, first established by Coppo and Dezani (for the @l-calculus) that typability implies weak normalizability. We then show that the unification process which is the basis for type inference exactly corresponds to reduction in the extended @l-calculus. Finally we show that our notion of unification allows us to compute a principal typing for any typable @l-expression.