Results 1  10
of
11
On Stepwise Explicit Substitution
, 1993
"... This paper starts by setting the ground for a lambda calculus notation that strongly mirrors the two fundamental operations of term construction, namely abstraction and application. In particular, we single out those parts of a term, called items in the paper, that are added during abstraction and a ..."
Abstract

Cited by 64 (52 self)
 Add to MetaCart
This paper starts by setting the ground for a lambda calculus notation that strongly mirrors the two fundamental operations of term construction, namely abstraction and application. In particular, we single out those parts of a term, called items in the paper, that are added during abstraction and application. This item notation proves to be a powerful device for the representation of basic substitution steps, giving rise to different versions of fireduction including local and global fi reduction. In other words substitution, thanks to the new notation, can be easily formalised as an object language notion rather than remaining a meta language one. Such formalisation will have advantages with respect to various areas including functional application and the partial unfolding of definitions. Moreover our substitution is, we believe, the most general to date. This is shown by the fact that our framework can accommodate most of the known reduction strategies, which range from local to...
A unified approach to Type Theory through a refined λcalculus
, 1994
"... In the area of foundations of mathematics and computer science, three related topics dominate. These are calculus, type theory and logic. ..."
Abstract

Cited by 14 (13 self)
 Add to MetaCart
In the area of foundations of mathematics and computer science, three related topics dominate. These are calculus, type theory and logic.
Canonical typing and Πconversion
, 1997
"... In usual type theory, if a function f is of type oe ! oe and an argument a is of type oe, then the type of fa is immediately given to be oe and no mention is made of the fact that what has happened is a form of ficonversion. A similar observation holds for the generalized Cartesian product typ ..."
Abstract

Cited by 3 (3 self)
 Add to MetaCart
In usual type theory, if a function f is of type oe ! oe and an argument a is of type oe, then the type of fa is immediately given to be oe and no mention is made of the fact that what has happened is a form of ficonversion. A similar observation holds for the generalized Cartesian product types, \Pi x:oe : . In fact, many versions of type theory assume that fi holds of both types and terms, yet only a few attempt to study the theory where terms and types are really treated equally and where ficonversion is used for both. A unified treatment however, of types and terms is becoming indispensible especially in the approaches which try to generalise many systems under a unique one. For example, [Barendregt 91] provides the Barendregt cube and the Pure Type Systems (PTSs) which are a generalisation of many type theories. Yet even such a generalisation does not use ficonversion for both types and terms. This is unattractive, in a calculus where types have the same syntax as terms (such as the calculi of the cube or the PTSs). For example, in those systems, even though compatibility holds for the typing of abstraction, it does not hold for the typing of application. That is, even though M : N ) y:P :M : \Pi y:P :N holds, the following does not hold: Based on this observation, we present a calculus in which the conversion rules apply to types as well as terms. Abstraction and application, moreover, range over both types and terms. We extend the calculus with a canonical type operator in order to associate types to terms. The type of fa will then be Fa, where F is the type of f and the statement \Gamma ` t : oe from usual type theory is split in two statements in our system: \Gamma ` t and (\Gamma; t) = oe. Such a splitting enables us to discuss the two questio...
and
, 1996
"... In the area of foundations of mathematics and computer science, three related topics dominate. These are calculus, type theory and logic. There are moreover, many versions of calculi and type theories. In these versions, the presence of logic ranges from the nonexistant to the dominant. In fact, ..."
Abstract
 Add to MetaCart
In the area of foundations of mathematics and computer science, three related topics dominate. These are calculus, type theory and logic. There are moreover, many versions of calculi and type theories. In these versions, the presence of logic ranges from the nonexistant to the dominant. In fact, the three subjects of calculus, logic and type theory, got separated due to the appearence of the paradoxes. Moreover, the existence of various versions of each topic is due to the need to get back to the lost paradise which allowed a great freedom in mixing expressivity and logic. In any case, the presence of such a variety of systems calls for a framework to unify them all. Barendregt's cube for example, is an attempt to unify various type systems and his associated logic cube is an attempt to nd connections between type theories and logic. We devise a new notation which enables categorising most of the known systems in a unied way. More precisely, we sketch the general structure of a system of typed lambda calculus and show that this system has enough expressive power for the description of various existing systems, ranging from Automathlike systems to singlytyped Pure Type Systems. The system We are grateful for Erik Poll who has read the paper carefully and for his productive comments. We are also grateful for discussions with Henk Barendregt, Inge Bethke, Tijn Borghuis and for the helpful remarks received from them. Furthermore, we are indebted to the anonymous referee for his/her useful suggestions and remarks. y
and
, 1996
"... In the area of foundations of mathematics and computer science, three related topics dominate. These are calculus, type theory and logic. There are moreover, many versions of calculi and type theories. In these versions, the presence of logic ranges from the nonexistant to the dominant. In fact, ..."
Abstract
 Add to MetaCart
In the area of foundations of mathematics and computer science, three related topics dominate. These are calculus, type theory and logic. There are moreover, many versions of calculi and type theories. In these versions, the presence of logic ranges from the nonexistant to the dominant. In fact, the three subjects of calculus, logic and type theory, got separated due to the appearence of the paradoxes. Moreover, the existence of various versions of each topic is due to the need to get back to the lost paradise which allowed a great freedom in mixing expressivity and logic. In any case, the presence of such a variety of systems calls for a framework to unify them all. Barendregt's cube for example, is an attempt to unify various type systems and his associated logic cube is an attempt to nd connections between type theories and logic. We devise a new notation which enables categorising most of the known systems in a unied way. More precisely, we sketch the general structure of a system of typed lambda calculus and show that this system has enough expressive power for the description of various existing systems, ranging from Automathlike systems to singlytyped Pure Type Systems. The system We are grateful for Erik Poll who has read the paper carefully and for his productive comments. We are also grateful for discussions with Henk Barendregt, Inge Bethke, Tijn Borghuis and for the helpful remarks received from them. Furthermore, we are indebted to the anonymous referee for his/her useful suggestions and remarks. y
and
, 1997
"... First of all, we are very grateful to our colleague Bert van Benthem Jutting who has read draft versions of the manuscript, and who has made very useful suggestions. Furthermore, we are grateful for the discussions with Henk Barendregt, Inge Bethke, Tijn Borghuis, Herman Geuvers and Erik Poll, and f ..."
Abstract
 Add to MetaCart
First of all, we are very grateful to our colleague Bert van Benthem Jutting who has read draft versions of the manuscript, and who has made very useful suggestions. Furthermore, we are grateful for the discussions with Henk Barendregt, Inge Bethke, Tijn Borghuis, Herman Geuvers and Erik Poll, and for the helpful remarks received from them. y Kamareddine is grateful to the Department of Mathematics and Computing Science, Eindhoven University of Technology, for their nancial support and hospitality from October 1991 to September 1992, and during the summer of 1993. Furthermore, Kamareddine is grateful to the Department of Mathematics and Computer Science, University of Amsterdam, and in particular to Jan Bergstra and Inge Bethke for their hospitality during the preparation of this article. 1 In usual type theory, if a function f is of type ! 0 and an argument a is of type , then the type of fa is immediately given to be 0 and no mention is made of the fact that what has happened is a form of conversion. A similar observation holds for the generalized Cartesian product types, x:: . In fact, many versions of type theory assume that holds of both types and terms, yet only a few attempt to study the theory where terms and types are really treated equally and where conversion is used for both. A unied treatment however, of types and terms is becoming indispensible especially in the approaches which try to generalise many systems under a unique one. For example, [Barendregt 91] provides the Barendregt cube and the Pure Type Systems (PTSs) which are a generalisation of many type theories. Yet even such a generalisation does not useconversion for both types and terms. This is unattractive, in a calculus where types have the same syntax as terms (such as the calculi of the cube or the PTSs). For example, in those systems, even though compatibility holds for the typing of abstraction, it does not hold for the typing of application. That is, even though M: N) y:P
and
, 1997
"... First of all, we are very grateful to our colleague Bert van Benthem Jutting who has read draft versions of the manuscript, and who has made very useful suggestions. Furthermore, we are grateful for the discussions with Henk Barendregt, Inge Bethke, Tijn Borghuis, Herman Geuvers and Erik Poll, and f ..."
Abstract
 Add to MetaCart
First of all, we are very grateful to our colleague Bert van Benthem Jutting who has read draft versions of the manuscript, and who has made very useful suggestions. Furthermore, we are grateful for the discussions with Henk Barendregt, Inge Bethke, Tijn Borghuis, Herman Geuvers and Erik Poll, and for the helpful remarks received from them. y Kamareddine is grateful to the Department of Mathematics and Computing Science, Eindhoven University of Technology, for their nancial support and hospitality from October 1991 to September 1992, and during the summer of 1993. Furthermore, Kamareddine is grateful to the Department of Mathematics and Computer Science, University of Amsterdam, and in particular to Jan Bergstra and Inge Bethke for their hospitality during the preparation of this article. 1 In usual type theory, if a function f is of type ! 0 and an argument a is of type , then the type of fa is immediately given to be 0 and no mention is made of the fact that what has happened is a form of conversion. A similar observation holds for the generalized Cartesian product types, x:: . In fact, many versions of type theory assume that holds of both types and terms, yet only a few attempt to study the theory where terms and types are really treated equally and where conversion is used for both. A unied treatment however, of types and terms is becoming indispensible especially in the approaches which try to generalise many systems under a unique one. For example, [Barendregt 91] provides the Barendregt cube and the Pure Type Systems (PTSs) which are a generalisation of many type theories. Yet even such a generalisation does not useconversion for both types and terms. This is unattractive, in a calculus where types have the same syntax as terms (such as the calculi of the cube or the PTSs). For example, in those systems, even though compatibility holds for the typing of abstraction, it does not hold for the typing of application. That is, even though M: N) y:P
and
, 1996
"... In the area of foundations of mathematics and computer science, three related topics dominate. These are calculus, type theory and logic. There are moreover, many versions of calculi and type theories. In these versions, the presence of logic ranges from the nonexistant to the dominant. In fact, ..."
Abstract
 Add to MetaCart
In the area of foundations of mathematics and computer science, three related topics dominate. These are calculus, type theory and logic. There are moreover, many versions of calculi and type theories. In these versions, the presence of logic ranges from the nonexistant to the dominant. In fact, the three subjects of calculus, logic and type theory, got separated due to the appearence of the paradoxes. Moreover, the existence of various versions of each topic is due to the need to get back to the lost paradise which allowed a great freedom in mixing expressivity and logic. In any case, the presence of such a variety of systems calls for a framework to unify them all. Barendregt's cube for example, is an attempt to unify various type systems and his associated logic cube is an attempt to nd connections between type theories and logic. We devise a new notation which enables categorising most of the known systems in a unied way. More precisely, we sketch the general structure of a system of typed lambda calculus and show that this system has enough expressive power for the description of various existing systems, ranging from Automathlike systems to singlytyped Pure Type Systems. The system We are grateful for Erik Poll who has read the paper carefully and for his productive comments. We are also grateful for discussions with Henk Barendregt, Inge Bethke, Tijn Borghuis and for the helpful remarks received from them. Furthermore, we are indebted to the anonymous referee for his/her useful suggestions and remarks. y
FAIROUZ KAMAREDDINE
"... This paper starts by setting the ground for a lambda calculus notation that strongly mirrors the two fundamental operations of term construction, namely abstraction and application. In particular, we single out those parts of a term, called items in the paper, that are added during abstraction and a ..."
Abstract
 Add to MetaCart
(Show Context)
This paper starts by setting the ground for a lambda calculus notation that strongly mirrors the two fundamental operations of term construction, namely abstraction and application. In particular, we single out those parts of a term, called items in the paper, that are added during abstraction and application. This item notation proves to be a powerful device for the representation of basic substitution steps, giving rise to dierent versions of reduction including local and global reduction. In other words substitution, thanks to the new notation, can be easily formalised as an object language notion rather than remaining a meta language one. Such formalisation will have advantages with respect to various areas including functional application and the partial unfolding of denitions. Moreover our substitution is, we believe, the most general to date. This is shown by the fact that our framework can accommodate most of the known reduction strategies, which range from local to global. Finally, we show how the calculus of substitution of Abadi et al., can be embedded into our calculus. We show moreover that many of the rules of Abadi et al. are easily derivable in our calculus.