Results 1 
4 of
4
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 41 (30 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...