Results 1 -
6 of
6
Intersection Type Assignment Systems
- THEORETICAL COMPUTER SCIENCE
, 1995
"... This paper gives an overview of intersection type assignment for the Lambda Calculus, as well as compare in detail variants that have been defined in the past. It presents the essential intersection type assignment system, that will prove to be as powerful as the well-known BCD-system. It is essenti ..."
Abstract
-
Cited by 52 (28 self)
- Add to MetaCart
This paper gives an overview of intersection type assignment for the Lambda Calculus, as well as compare in detail variants that have been defined in the past. It presents the essential intersection type assignment system, that will prove to be as powerful as the well-known BCD-system. It is essential in the following sense: it is an almost syntax directed system that satisfies all major properties of the BCDsystem, and the types used are the representatives of equivalence classes of types in the BCD-system. The set of typeable terms can be characterized in the same way, the system is complete with respect to the simple type semantics, and it has the principal type property.
Rank 2 Types for Term Graph Rewriting (Extended Abstract)
"... We define a notion of type assignment with polymorphic intersection types of rank 2 fora term graph rewriting language that expresses sharing and cycles. We show that type assignment is decidable through defining, using the extended notion of unification from [5],a notion of principal pair which gen ..."
Abstract
-
Cited by 3 (3 self)
- Add to MetaCart
We define a notion of type assignment with polymorphic intersection types of rank 2 fora term graph rewriting language that expresses sharing and cycles. We show that type assignment is decidable through defining, using the extended notion of unification from [5],a notion of principal pair which generalizes ml's principal type property.
Rank 2 types for term graph rewriting
- In TIP’02, volume 75 of ENTCS
, 2003
"... We define a notion of type assignment with polymorphic intersection types of rank 2 for a term graph rewriting language that expresses sharing and cycles. We show that type assignment is decidable through defining, using the extended notion of unification from [5], a notion of principal pair which g ..."
Abstract
-
Cited by 2 (1 self)
- Add to MetaCart
We define a notion of type assignment with polymorphic intersection types of rank 2 for a term graph rewriting language that expresses sharing and cycles. We show that type assignment is decidable through defining, using the extended notion of unification from [5], a notion of principal pair which generalizes ML’s principal type property.
On the relation between rank 2 intersection types and simple types
- In Joint Conference on Declarative Programming (AGP’2002
, 2002
"... Abstract. The Rank 2 Intersection Type System is the intersection type system with more impact in the area of functional programming languages. This system includes the powerful type system of the functional language ML keeping the decidability of type inference. The Simple Type System is the basis ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
Abstract. The Rank 2 Intersection Type System is the intersection type system with more impact in the area of functional programming languages. This system includes the powerful type system of the functional language ML keeping the decidability of type inference. The Simple Type System is the basis of every type system for programming languages. In this paper we prove that it is possible to transform any term typable by a Simple type in the Rank 2 Intersection Type System into a new term typable in the Simple Type System with the same type. We define that transformation independently of any type information. Then we prove the correctness of the presented transformation, in the sense that it preserves types of terms typable by Simple Types. 1
Principal Typings in a Restricted Intersection Type System for Beta Normal Forms with de Bruijn Indices
, 2009
"... The λ-calculus with de Bruijn indices assembles each α-class of λ-terms in a unique term, using indices instead of variable names. Intersection types provide finitary type polymorphism and can characterise normalisable λ-terms, that is a term is normalisable if and only if it is typeable. To be clos ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
The λ-calculus with de Bruijn indices assembles each α-class of λ-terms in a unique term, using indices instead of variable names. Intersection types provide finitary type polymorphism and can characterise normalisable λ-terms, that is a term is normalisable if and only if it is typeable. To be closer to computations and to simplify the formalisation of the atomic operations involved in β-contractions several calculi of explicit substitution were developed and some of them are written with de Bruijn indices. Versions of explicit substitutions calculi without types and with simple type systems are well investigated in contrast to versions with more elaborated type systems such as intersection types. In previous work, we introduced a de Bruijn version of the λ-calculus with an intersection type system and proved it preserves the subject reduction, a basic type system property. In this paper a version with de Bruijn indices of an intersection type system originally introduced to characterise principal typings for β-normal forms (β-nf for short) is presented. We present the characterisation in this new system and the corresponding versions for the type inference and the reconstruction of normal forms from principal typings algorithms. We briefly discuss about the failure of the subject reduction property and some possible solutions for it. ∗ Supported by a PhD scholarship at the Universidade de Brasília. † Supported by the Fundação de Apoio à Pesquisa do Distrito Federal [FAPDF 8-004/2007] 1 1

