Results 11  20
of
34
A Semantics for Static Type Inference
 Information and Computation
, 1993
"... Curry's system for Fdeducibility is the basis for static type inference algorithms for programming languages such as ML. If a natural "preservation of types by conversion" rule is added to Curry's system, it becomes undecidable, but complete relative to a variety of model cl ..."
Abstract

Cited by 10 (0 self)
 Add to MetaCart
Curry's system for Fdeducibility is the basis for static type inference algorithms for programming languages such as ML. If a natural "preservation of types by conversion" rule is added to Curry's system, it becomes undecidable, but complete relative to a variety of model classes. We show completeness for Curry's system itself, relative to an extended notion of model that validates reduction but not conversion.
On Strong Normalization in the Intersection Type Discipline (Extended Abstract)
"... We give a proof for the strong normalization result in the intersection type discipline, which we obtain by putting together some wellknown results and proof techniques. Our proof uses a variant of Klop's extended calculus, for which it is shown that strong normalization is equivalent to ..."
Abstract

Cited by 9 (1 self)
 Add to MetaCart
We give a proof for the strong normalization result in the intersection type discipline, which we obtain by putting together some wellknown results and proof techniques. Our proof uses a variant of Klop's extended calculus, for which it is shown that strong normalization is equivalent to weak normalization. This is
New Notions of Reduction and NonSemantic Proofs of Strong βNormalization in Typed λCalculi
 PROCEEDINGS OF LOGIC IN COMPUTER SCIENCE
, 1995
"... Two notions of reduction for terms of the λcalculus are introduced and the question of whether a λterm is βstrongly normalizing is reduced to the question of whether a λterm is merely normalizing under one of the notions of reduction. This gives a method to prove strong βnormalization for typ ..."
Abstract

Cited by 9 (2 self)
 Add to MetaCart
Two notions of reduction for terms of the λcalculus are introduced and the question of whether a λterm is βstrongly normalizing is reduced to the question of whether a λterm is merely normalizing under one of the notions of reduction. This gives a method to prove strong βnormalization for typed λcalculi. Instead of the usual semantic proof style based on Tait's realizability or Girard's "candidats de réductibilité", termination can be proved using a decreasing metric over a wellfounded ordering. This proof method is applied to the simplytyped λcalculus and the system of intersection types, giving the first nonsemantic proof for a polymorphic extension of the λcalculus.
Typing untyped λterms, or Reducibility strikes again!
, 1995
"... It was observed by Curry that when (untyped) λterms can be assigned types, for example, simple types, these terms have nice properties (for example, they are strongly normalizing). Coppo, Dezani, and Veneri, introduced type systems using conjunctive types, and showed that several important classes ..."
Abstract

Cited by 8 (0 self)
 Add to MetaCart
It was observed by Curry that when (untyped) λterms can be assigned types, for example, simple types, these terms have nice properties (for example, they are strongly normalizing). Coppo, Dezani, and Veneri, introduced type systems using conjunctive types, and showed that several important classes of (untyped) terms can be characterized according to the shape of the types that can be assigned to these terms. For example, the strongly normalizable terms, the normalizable terms, and the terms having headnormal forms, can be characterized in some systems D and D. The proofs use variants of the method of reducibility. In this paper, we presenta uniform approach for proving several metatheorems relating properties ofterms and their typability in the systems D and D. Our proofs use a new and more modular version of the reducibility method. As an application of our metatheorems, we show how the characterizations obtained by Coppo, Dezani, Veneri, and Pottinger, can be easily rederived. We alsocharacterize the terms that have weak headnormal forms, which appears to be new. We conclude by stating a number of challenging open problems regarding possible generalizations of the realizability method.
Rank 2 Intersection Types for Modules
, 2003
"... We propose a rank 2 intersection type system for a language of modules built on a core MLlike language. The principal typing property of the rank 2 intersection type system for the core language plays a crucial role in the design of the type system for the module language. We first consider a " ..."
Abstract

Cited by 7 (1 self)
 Add to MetaCart
We propose a rank 2 intersection type system for a language of modules built on a core MLlike language. The principal typing property of the rank 2 intersection type system for the core language plays a crucial role in the design of the type system for the module language. We first consider a "plain" notion of module, where a module is just a set of mutually recursive toplevel definitions, and illustrate the notions of: module intrachecking (each module is typechecked in isolation and its interface, which is the set of typings of the defined identifiers, is inferred); interface interchecking (when linking modules, typechecking is done just by looking at the interfaces); interface specialization (interface intrachecking may require to specialize the typing listed in the interfaces); principal interfaces (the principal typing property for the type system of modules); and separate typechecking (looking at the code of the modules does not provide more type information than looking at their interfaces). Then we illustrate some limitations of the "plain" framework and extend the module language and the type system in order to overcome these limitations. The decidability of the system is shown by providing algorithms for the fundamental operations involved in module intrachecking and interface interchecking.
Strictness, Totality, and NonStandard Type Inference
, 2000
"... In this paper we present two nonstandard type inference systems for conjunctive strictness and totality analyses of higherorder typed functional programs and prove completeness results for both the strictness and the totality type entailment relations. We also study the interactions between strict ..."
Abstract

Cited by 7 (0 self)
 Add to MetaCart
In this paper we present two nonstandard type inference systems for conjunctive strictness and totality analyses of higherorder typed functional programs and prove completeness results for both the strictness and the totality type entailment relations. We also study the interactions between strictness and totality analyses, showing that the information obtainable by a system that combines the two analyses, even though more refined than the information given by the two separate systems, cannot be effectively used. A main feature of our approach is that all the results are proved by relying directly on the operational semantics of the programming language considered. This leads to a rather direct presentation which involves relatively little mathematical overhead.
Completeness of Intersection and Union Type Assignment Systems for CallByValue LambdaModels
"... We study a version of intersection and union type assignment system, unionelimination rule of which is allowed only when subject of its major premiss is a value of callbyvalue calculus. The system is shown to be sound and complete under some abstract notion of membership relation dened over simpl ..."
Abstract

Cited by 4 (0 self)
 Add to MetaCart
We study a version of intersection and union type assignment system, unionelimination rule of which is allowed only when subject of its major premiss is a value of callbyvalue calculus. The system is shown to be sound and complete under some abstract notion of membership relation dened over simple semantics for callby value models, and to be invariant under callbyvalue conversion of subjects. We prove it by constructing a lter callbyvalue model. 1 Introduction Coppo et al. [5] introduced an intersection type assignment system as an extension of Curry's simple type assignment system (see [12, 11, 7] for expositions) to deal with the functional characters of solvable terms. In addition to the simple types constructed from typevariables and ! , the intersection types contain a typeconstant ! and types constructed by a constructor ^ (their intended meanings are universe and intersection of Partly supported by a GrantinAid for Scientic Research (C) No.09640253 o...
Rank 2 Intersection Types for Modules (Version with conclusions and appendices of [11])
"... We propose a rank 2 intersection type system for a language of modules built on a core MLlike language. The principal typing property of the rank 2 intersection type system for the core language plays a crucial role in the design of the type system for the module language. We first consider a " ..."
Abstract

Cited by 3 (1 self)
 Add to MetaCart
We propose a rank 2 intersection type system for a language of modules built on a core MLlike language. The principal typing property of the rank 2 intersection type system for the core language plays a crucial role in the design of the type system for the module language. We first consider a "plain" notion of module, where a module is just a set of mutually recursive toplevel definitions, and illustrate the notions of: module intrachecking (each module is typechecked in isolation and its interface, which is the set of typings of the defined identifiers, is inferred); interface interchecking (when linking modules, typechecking is done just by looking at the interfaces); interface specialization (interface intrachecking may require to specialize the typing listed in the interfaces); principal interfaces (the principal typing property for the type system of modules); and separate typechecking (looking at the code of the modules does not provide more type information than looking at their interfaces). Then we illustrate some limitations of the "plain" framework and extend the module language and the type system in order to overcome these limitations. The decidability of the system is shown by providing algorithms for the fundamental operations involved in module intrachecking and interface interchecking.
Tailoring Filter Models
 TYPES’03, volume 3085 of LNCS
, 2004
"... Conditions on type preorders are provided in order to characterize the induced filter models for the #calculus and some of its restrictions. Besides, two examples are given of filter models in which not all the continuous functions are representable. 1. ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
Conditions on type preorders are provided in order to characterize the induced filter models for the #calculus and some of its restrictions. Besides, two examples are given of filter models in which not all the continuous functions are representable. 1.