Results 1 - 10
of
18
Inductive Data Type Systems
- THEORETICAL COMPUTER SCIENCE
, 1997
"... In a previous work (“Abstract Data Type Systems”, TCS 173(2), 1997), the last two authors presented a combined language made of a (strongly normalizing) algebraic rewrite system and a typed λ-calculus enriched by pattern-matching definitions following a certain format, called the “General Schema”, w ..."
Abstract
-
Cited by 42 (9 self)
- Add to MetaCart
In a previous work (“Abstract Data Type Systems”, TCS 173(2), 1997), the last two authors presented a combined language made of a (strongly normalizing) algebraic rewrite system and a typed λ-calculus enriched by pattern-matching definitions following a certain format, called the “General Schema”, which generalizes the usual recursor definitions for natural numbers and similar “basic inductive types”. This combined language was shown to be strongly normalizing. The purpose of this paper is to reformulate and extend the General Schema in order to make it easily extensible, to capture a more general class of inductive types, called “strictly positive”, and to ease the strong normalization proof of the resulting system. This result provides a computation model for the combination of an algebraic specification language based on abstract data types and of a strongly typed functional language with strictly positive inductive types.
The Calculus of Algebraic Constructions
- In Proc. of the 10th Int. Conf. on Rewriting Techniques and Applications, LNCS 1631
, 1999
"... Abstract. In a previous work, we proved that an important part of the Calculus of Inductive Constructions (CIC), the basis of the Coq proof assistant, can be seen as a Calculus of Algebraic Constructions (CAC), an extension of the Calculus of Constructions with functions and predicates defined by hi ..."
Abstract
-
Cited by 23 (9 self)
- Add to MetaCart
Abstract. In a previous work, we proved that an important part of the Calculus of Inductive Constructions (CIC), the basis of the Coq proof assistant, can be seen as a Calculus of Algebraic Constructions (CAC), an extension of the Calculus of Constructions with functions and predicates defined by higher-order rewrite rules. In this paper, we prove that almost all CIC can be seen as a CAC, and that it can be further extended with non-strictly positive types and inductive-recursive types together with non-free constructors and pattern-matching on defined symbols. 1.
Rank 2 Intersection Type Assignment in Term Rewriting Systems
, 1996
"... A notion of type assignment on Curryfied Term Rewriting Systems is introduced that uses Intersection Types of Rank 2, and in which all function symbols are assumed to have a type. Type assignment will consist of specifying derivation rules that describe how types can be assigned to terms, using the ..."
Abstract
-
Cited by 21 (13 self)
- Add to MetaCart
A notion of type assignment on Curryfied Term Rewriting Systems is introduced that uses Intersection Types of Rank 2, and in which all function symbols are assumed to have a type. Type assignment will consist of specifying derivation rules that describe how types can be assigned to terms, using the types of function symbols. Using a modified unification procedure, for each term the principal pair (of basis and type) will be defined in the following sense: from these all admissible pairs can be generated by chains of operations on pairs, consisting of the operations substitution, copying, and weakening. In general, given an arbitrary typeable CuTRS, the subject reduction property does not hold. Using the principal type for the left-hand side of a rewrite rule, a sufficient and decidable condition will be formulated that typeable rewrite rules should satisfy in order to obtain this property. Introduction In the recent years, several paradigms have been investigated for the implementatio...
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 19 (18 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 type-constant ! is strongly normalizable. We also show that, under certain restrictions, all typeable terms have a (weak) head-normal form, and that terms whose type does not contain ! are normalizable.
Inductive Types in the Calculus of Algebraic Constructions
, 2005
"... In a previous work, we proved that an important part of the Calculus of Inductive Constructions (CIC), the basis of the Coq proof assistant, can be seen as a Calculus of Algebraic Constructions (CAC), an extension of the Calculus of Constructions with functions and predicates defined by higher-order ..."
Abstract
-
Cited by 13 (4 self)
- Add to MetaCart
In a previous work, we proved that an important part of the Calculus of Inductive Constructions (CIC), the basis of the Coq proof assistant, can be seen as a Calculus of Algebraic Constructions (CAC), an extension of the Calculus of Constructions with functions and predicates defined by higher-order rewrite rules. In this paper, we prove that almost all CIC can be seen as a CAC, and that it can be further extended with non-strictly positive types and inductive-recursive types together with non-free constructors and pattern-matching on defined symbols. 1.
The Computability Path Ordering: the End of a Quest
"... Abstract. In this paper, we first briefly survey automated termination proof methods for higher-order calculi. We then concentrate on the higher-order recursive path ordering, for which we provide an improved definition, the Computability Path Ordering. This new definition appears indeed to capture ..."
Abstract
-
Cited by 9 (2 self)
- Add to MetaCart
Abstract. In this paper, we first briefly survey automated termination proof methods for higher-order calculi. We then concentrate on the higher-order recursive path ordering, for which we provide an improved definition, the Computability Path Ordering. This new definition appears indeed to capture the essence of computability arguments à la Tait and Girard, therefore explaining the name of the improved ordering. 1
Head-)Normalization of Typeable Rewrite Systems
- Proceedings of RTA '95. 6th International Conference on Rewriting Techniques and Applications
, 1995
"... Abstract. In this paper we study normalization properties of rewrite systems that are typeable using intersection types with and with sorts. We prove two normalization properties of typeable systems. On one hand, for all systems that satisfy a variant of the Jouannaud-Okada Recursion Scheme, every t ..."
Abstract
-
Cited by 7 (7 self)
- Add to MetaCart
Abstract. In this paper we study normalization properties of rewrite systems that are typeable using intersection types with and with sorts. We prove two normalization properties of typeable systems. On one hand, for all systems that satisfy a variant of the Jouannaud-Okada Recursion Scheme, every term typeable with a type that is not is head normalizable. On the other hand, non-Curryfied terms that are typeable with a type that does not contain, are normalizable.
On the Power of Simple Diagrams
, 1996
"... . In this paper we focus on a set of abstract lemmas that are easy to apply and turn out to be quite valuable in order to establish confluence and/or normalization modularly, especially when adding rewriting rules for extensional equalities to various calculi. We show the usefulness of the lemmas by ..."
Abstract
-
Cited by 6 (2 self)
- Add to MetaCart
. In this paper we focus on a set of abstract lemmas that are easy to apply and turn out to be quite valuable in order to establish confluence and/or normalization modularly, especially when adding rewriting rules for extensional equalities to various calculi. We show the usefulness of the lemmas by applying them to various systems, ranging from simply typed lambda calculus to higher order lambda calculi, for which we can establish systematically confluence and/or normalization (or decidability of equality) in a simple way. Many result are new, but we also discuss systems for which our technique allows to provide a much simpler proof than what can be found in the literature. 1 Introduction During a recent investigation of confluence and normalization properties of polymorphic lambda calculus with an expansive version of the # rule, we came across a nice lemma that gives a simple but quite powerful sufficient condition to check the Church Rosser property for a compound rewriting system...
Polymorphic Intersection Type Assignment for Rewite Systems with Intersection and beta-rule (Extended Abstract
- In TYPES’99. LNCS
, 2000
"... Abstract. We define two type assignment systems for first-order rewriting extended with application,-abstraction, and-reduction (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 re ..."
Abstract
-
Cited by 4 (2 self)
- Add to MetaCart
Abstract. We define two type assignment systems for first-order rewriting extended with application,-abstraction, and-reduction (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.

