Results 1  10
of
23
Normalization Results for Typeable Rewrite Systems
, 1997
"... In this paper we introduce Curryfied Term Rewriting Systems, and a notion of partial type assignment on terms and rewrite rules that uses intersection types with sorts and !. Three operations on types  substitution, expansion, and lifting  are used to define type assignment, and are proved to be ..."
Abstract

Cited by 24 (22 self)
 Add to MetaCart
In this paper we introduce Curryfied Term Rewriting Systems, and a notion of partial type assignment on terms and rewrite rules that uses intersection types with sorts and !. Three operations on types  substitution, expansion, and lifting  are used to define type assignment, and are proved to be sound. With this result the system is proved closed for reduction. Using a more liberal approach to recursion, we define a general scheme for recursive definitions and prove that, for all systems that satisfy this scheme, every term typeable without using the typeconstant ! is strongly normalizable. We also show that, under certain restrictions, all typeable terms have a (weak) headnormal form, and that terms whose type does not contain ! are normalizable.
Approximation and Normalization Results for Typeable Term Rewriting Systems
 Proceedings of HOA ’95. Second International Workshop on Higher Order Algebra, Logic and Term Rewriting
, 1996
"... We consider an intersection type assignment system for term rewriting systems extended with application, and define a notion of (finite) approximation on terms. We then prove that for typeable rewrite systems satisfying a general scheme for recursive definitions, every typeable term has an approxima ..."
Abstract

Cited by 9 (9 self)
 Add to MetaCart
We consider an intersection type assignment system for term rewriting systems extended with application, and define a notion of (finite) approximation on terms. We then prove that for typeable rewrite systems satisfying a general scheme for recursive definitions, every typeable term has an approximant of the same type. This approximation result, and the proof technique developed to obtain it, allow us to deduce in a direct way a headnormalization, a normalization, and a strong normalization theorem, for different classes of typeable terms. 1
Type Assignment and Termination of Interaction Nets
"... Interaction nets have proved to be a useful tool for the study of computational aspects of different formalisms (e.g. calculus, term rewriting systems), but they are also a programming paradigm in themselves, and this is actually how they were introduced by Lafont. In this paper we consider semisi ..."
Abstract

Cited by 7 (4 self)
 Add to MetaCart
Interaction nets have proved to be a useful tool for the study of computational aspects of different formalisms (e.g. calculus, term rewriting systems), but they are also a programming paradigm in themselves, and this is actually how they were introduced by Lafont. In this paper we consider semisimple interaction nets as a programming language, and present a type assignment system using intersection types. First we show that interactions preserve types (i.e. the system enjoys subject reduction), and we compare this type assignment system with the intersection systems for calculus and term rewriting systems. Then we define a recursion scheme that ensures termination of all interaction sequences. By relaxing the scheme and using the type assignment system, we derive another sufficient condition for termination of interaction nets. Finally, we show that although the type system based on general intersection types is not decidable, its restriction to rank 2 types is, and we give an algo...
Strict Intersection Types for the Lambda Calculus
, 2010
"... This paper will show the usefulness and elegance of strict intersection types for the Lambda Calculus; these are strict in the sense that they are the representatives of equivalence classes of types in the BCDsystem [15]. We will focus on the essential intersection type assignment; this system is a ..."
Abstract

Cited by 6 (5 self)
 Add to MetaCart
This paper will show the usefulness and elegance of strict intersection types for the Lambda Calculus; these are strict in the sense that they are the representatives of equivalence classes of types in the BCDsystem [15]. We will focus on the essential intersection type assignment; this system is almost syntax directed, and we will show that all major properties hold that are known to hold for other intersection systems, like the approximation theorem, the characterisation of (head/strong) normalisation, completeness of type assignment using filter semantics, strong normalisation for cutelimination and the principal pair property. In part, the proofs for these properties are new; we will briefly compare the essential system with other existing systems.
Polymorphic Intersection Type Assignment for Rewite Systems with Intersection and betarule (Extended Abstract)
 IN TYPES’99. LNCS
, 2000
"... We define two type assignment systems for firstorder rewriting extended with application,abstraction, andreduction (TRS). The types used in these systems are a combination of (free) intersection and polymorphic types. The first system is the general one, for which we prove a subject reduction t ..."
Abstract

Cited by 4 (2 self)
 Add to MetaCart
We define two type assignment systems for firstorder rewriting extended with application,abstraction, andreduction (TRS). The types used in these systems are a combination of (free) intersection and polymorphic types. The first system is the general one, for which we prove a subject reduction theorem and show that all typeable terms are strongly normalisable. The second is a decidable subsystem of the first, by restricting types to Rank 2. For this system we define, using an extended notion of unification, a notion of principal type, and show that type assignment is decidable.
Sequence Types for the πcalculus
, 2004
"... We introduce channel sequence types to study finitary polymorphism in the context of mobile processes modelled in the #calculus. We associate to each channel a set of exchange types, and we require that output processes send values of one of those types, and input processes accept values of all the ..."
Abstract

Cited by 3 (1 self)
 Add to MetaCart
We introduce channel sequence types to study finitary polymorphism in the context of mobile processes modelled in the #calculus. We associate to each channel a set of exchange types, and we require that output processes send values of one of those types, and input processes accept values of all the types in the set. Our type assignment system enjoys subject reduction and guarantees the absence of communication errors. We give several examples of polymorphism, and we encode the #calculus with the strict intersection type discipline.
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
"... 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 ..."
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.
Semantic Predicate Types and Approximation for Classbased Object Oriented Programming
"... Abstract. We define a small functional calculus that expresses classbased object oriented features and is modelled on the similar calculi of Featherweight Java [34] and Middleweight Java [15], which are ultimately based upon the Java programming language. We define a predicate system, similar to th ..."
Abstract

Cited by 2 (2 self)
 Add to MetaCart
Abstract. We define a small functional calculus that expresses classbased object oriented features and is modelled on the similar calculi of Featherweight Java [34] and Middleweight Java [15], which are ultimately based upon the Java programming language. We define a predicate system, similar to the one defined in [10], and show subject reduction and expansion, and argue that program analysis systems can be built on top of this system. Generalising the concept of approximant from the Lambda Calculus, we show that all expressions that we can assign a predicate to have an approximant that satisfies the same predicate. From this, a characterisation of (head)normalisation follows. 1
Sequence Types for the πcalculus
 ITRS 2004 PRELIMINARY VERSION
, 2004
"... We introduce channel sequence types to study finitary polymorphism in the context of mobile processes modelled in the πcalculus. We associate to each channel a set of exchange types, and we require that output processes send values of one of those types, and input processes accept values of any typ ..."
Abstract

Cited by 2 (0 self)
 Add to MetaCart
We introduce channel sequence types to study finitary polymorphism in the context of mobile processes modelled in the πcalculus. We associate to each channel a set of exchange types, and we require that output processes send values of one of those types, and input processes accept values of any type in the set. Our type assignment system enjoys subject reduction and guarantees the absence of communication errors. We give several examples of polymorphism, and we encode the λcalculus with the strict intersection type discipline.