From (18) and Lemma 4.3.13, there exists Q 3 such that (Q ? ) t 0 : (Q ? 3 , ?), We know from (16) that Q ? is already shared there exist Q ? 2 , ? 2 and ? ? such that (Q ? ) ?(t 0 ) : (Q ? 223) ?(Q 3 ) ? ? ? ? > ? ? Q ? 2 (24) ? ? ? ?(?) = ? 2 ,
It is a consequence of the following ,
As a preliminary result, we show the same property for equivalence, that is, if (Q) ? 1 ? ? 2 holds, then ?(? 1 ) and ?(? 2 ) are equivalent in ML. The proof is by induction on the derivation of (Q) ? 1 ? ? 2 . Transitivity is by induction hypothesis. Reflexivity and symmetry are immediate: the ML equivalence relation is reflexive and symmetric. For congruence, the proof is similar to the one for the instance relation ,
The premise is (Q) ? 1 ? ? ? 2 . Necessarily, we have (Q) ? 1 ? ? 2 (Rule eAbs-Equiv), because other possible rules for abstraction mention rigid bindings. Then, we conclude using the preliminary result ,
The Lambda Calculus: Its Syntax and Semantics, 1984. ,
Partial polymorphic type inference is undecidable, 26th Annual Symposium on Foundations of Computer Science (sfcs 1985), pp.339-345, 1985. ,
DOI : 10.1109/SFCS.1985.44
An implementation of FSub, Digital Equipment Corporation Systems Research Center, 1993. ,
System e: Expansion variables for flexible typing with linear and non-linear types and intersection types, Prooceedings of the 13th European Symposium on Programming., volume 2986 of Lecture Notes in Computer Science, pp.294-309 ,
Higher-order unification via explicit substitutions: the case of higher-order patterns, Joint international conference and symposium on logic programming, pp.259-273, 1996. ,
Extending ML with Semi-Explicit higher-order polymorphism, Journal of Functional Programming, vol.155, pp.134-169, 1999. ,
Characterization of typings in polymorphic type discipline, [1988] Proceedings. Third Annual Information Symposium on Logic in Computer Science, pp.61-70, 1988. ,
DOI : 10.1109/LICS.1988.5101
Interprétation fonctionnelle etéliminationetélimination des coupures de l'arithmétique d'ordre supérieur, Thèse d'´ etat, 1972. ,
How good is local type inference?, 1999. ,
A polar type system, ICALP Satellite Workshops, pp.323-338, 2000. ,
Rank-2 type systems and recursive definitions, 1995. ,
Lexically scoped type variables Available at http://research.microsoft.com/ ? simonpj/papers/scoped-tyvars, 2004. ,
Practical type inference for arbitrary-rank types, Journal of Functional Programming, vol.17, issue.01, 2004. ,
DOI : 10.1017/S0956796806006034
A direct algorithm for type inference in the rank-2 fragment of the second-order ?-calculus, Proceedings of the ACM Conference on Lisp and functional programming, pp.196-207, 1994. ,
Polymorphic type inference and abstract data types, ACM Transactions on Programming Languages and Systems, vol.16, issue.5, pp.1411-1430, 1994. ,
MLF : Une extension de ML avec polymorphisme de second ordre et instanciation implicite, 2004. ,
MLF: Raising ML to the power of System-F, Proceedings of the Eighth ACM SIGPLAN International Conference on Functional Programming, pp.27-38, 2003. ,
A type directed translation of MLF to System F, The International Conference on Functional Programming (ICFP'07, 2007. ,
HMF: Simple type inference for first-class polymorphism Extended version available as Microsoft Research technical report MSR-TR, The 13th ACM symp. of the International Conference on Functional Programming (ICFP'08), 2007. ,
Flexible types: robust type inference for first-class polymorphism, Proceedings of the 36th ACM Symposium on Principles of Programming Languages (POPL'09), 2009. ,
Qualified types for MLF, ICFP '05: Proceedings of the tenth ACM SIGPLAN international conference on Functional programming, pp.144-155, 2005. ,
A logical algorithm for ML type inference, Rewriting Techniques and Applications, 14th International Conference, pp.436-451, 2003. ,
Unification under a mixed prefix, Journal of Symbolic Computation, vol.14, issue.4, pp.321-358, 1992. ,
DOI : 10.1016/0747-7171(92)90011-R
URL : http://doi.org/10.1016/0747-7171(92)90011-r
A theory of type polymorphism in programming, Journal of Computer and System Sciences, vol.17, issue.3, pp.348-375, 1978. ,
DOI : 10.1016/0022-0000(78)90014-4
Polymorphic type inference and containment. Information and Computation, pp.211-249, 1988. ,
Putting type annotations to work, Proceedings of the 23rd ACM Conference on Principles of Programming Languages, pp.54-67, 1996. ,
Colored local type inference, ACM SIGPLAN Notices, vol.36, issue.3, pp.41-53, 2001. ,
DOI : 10.1145/373243.360207
Type reconstruction with first-class polymorphic values, SIGPLAN '89 Conference on Programming Language Design and Implementation, 1989. ,
Practical type inference for arbitrary-rank types, J. Funct. Program, vol.17, issue.1, pp.1-82, 2007. ,
Partial polymorphic type inference and higher-order unification, Proceedings of the ACM Conference on Lisp and Functional Programming, pp.153-163, 1988. ,
On the undecidability of partial polymorphic type reconstruction, Fundamenta Informaticae, vol.19, issue.12, pp.185-199, 1992. ,
Types and Programming Languages, 2002. ,
Bounded quantification is undecidable. Information and Computation, pp.131-165, 1994. ,
Programming with Intersection Types and Bounded Polymorphism Available as School of Computer Science technical report CMU-CS, pp.91-205, 1991. ,
Local type inference, ACM Trans. Program. Lang. Syst, vol.22, issue.1, pp.1-44, 2000. ,
The essence of ML type inference, Advanced Topics in Types and Programming Languages, pp.389-489, 2005. ,
Stratified type inference for generalized algebraic data types, Proceedings of the 33rd ACM Symposium on Principles of Programming Languages (POPL'06), pp.232-244, 2006. ,
The essence of ML type inference. Extended preliminary version of (Pottier and Rémy, 2003. ,
Simple, partial type-inference for System F based on type-containment, Proceedings of the tenth International Conference on Functional Programming, 2005. ,
Programming objects with ML-ART: An extension to ML with abstract and record types, Theoretical Aspects of Computer Software, pp.321-346, 1994. ,
A graphical presentation of MLF types with a linear-time unification algorithm, Proceedings of the 2007 ACM SIGPLAN International Workshop on Types in Languages Design and Implementation (TLDI'07), pp.27-38, 2007. ,
From ML to MLF: Graphic type constraints with efficient type inference, The 13th ACM SIGPLAN International Conference on Functional Programming (ICFP'08), pp.63-74, 2008. ,
A church-style intermediate language for MLF, 2008. ,
Towards a theory of type structure, Proc. Colloque sur la Programmation, pp.408-425, 1974. ,
Second-order unification and type inference for Church-style polymorphism, Proceedings of the 25th ACM SIGPLAN-SIGACT symposium on Principles of programming languages , POPL '98, pp.279-288, 1998. ,
DOI : 10.1145/268946.268969
URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.37.3618
Boxy types: inference for higher-rank types and impredicativity, ICFP '06: Proceedings of the Eleventh ACM SIGPLAN International Conference on Functional Programming, pp.251-262, 2006. ,
FPH: First-class Polymorphism for Haskell, The 13th ACM SIGPLAN International Conference on Functional Programming (ICFP'08), 2008. ,
The Essence of Principal Typings, Proc. 29th Int'l Coll. Automata, Languages, and Programming, pp.913-925, 2002. ,
DOI : 10.1007/3-540-45465-9_78
Typability and type checking in System F are equivalent and undecidable, Annals of Pure and Applied Logic, vol.98, issue.1-3, pp.1-3111, 1999. ,
DOI : 10.1016/S0168-0072(98)00047-5
Type Inference for System F with and without the Eta Rule, 1996. ,
Graphical types and constraints: second-order polymorphism and inference, 2008. ,
105 -78153 Le Chesnay Cedex (France) Unité de recherche INRIA Futurs : Parc Club Orsay Université -ZAC des Vignes 4, rue Jacques Monod -91893 ORSAY Cedex (France) Unité de recherche INRIA Lorraine : LORIA, Technopôle de Nancy-Brabois -Campus scientifique 615, rue du Jardin Botanique -BP 101 -54602 Villers-lès-Nancy Cedex (France) Unité de recherche INRIA Rennes : IRISA, Campus universitaire de Beaulieu -35042 Rennes Cedex (France) Unité de recherche INRIA Rhône-Alpes : 655, avenue de l'Europe -38334 Montbonnot Saint-Ismier (France) Unité de recherche, 2004. ,
BP 105 -78153 Le Chesnay Cedex (France) http://www.inria.fr ISSN, pp.249-6399 ,