Results 1 
5 of
5
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...
A System At the CrossRoads of Functional and Logic Programming
, 1996
"... The type free calculus is powerful enough to contain all the polymorphic and higher order nature of functional programming and furthermore types could be constructed inside it. However, mixing the type free calculus with logic is not very straightforward (see [Aczel 80] and [Scott 75]). In this pa ..."
Abstract

Cited by 2 (0 self)
 Add to MetaCart
The type free calculus is powerful enough to contain all the polymorphic and higher order nature of functional programming and furthermore types could be constructed inside it. However, mixing the type free calculus with logic is not very straightforward (see [Aczel 80] and [Scott 75]). In this paper, a system that combines polymorphism and higher order functions with logic is presented. The system is suitable for both the functional and the logical paradigms of programming as from the functional paradigms point of view, the system enables one to have all the polymorphism and higher order that exist in functional languages and much more. In fact even the fixed point operator Y which is defined as f:(x:f(xx))(x:f(xx)) can be type checked to ((ff ! ff) ! ff)) where ff is a variable type. (x:xx)(x:xx) can be type checked too, something not allowed in functional languages. From the point of view of theorem proving, the system is expressive enough to allow self referential sentences and ...
Are Types needed for Natural Language?
, 1996
"... Logic, due to the paradoxes, is absent from the type free calculus. This makes such a calculus an unsuitable device for Natural Language Semantics. Moreover, the problems that arise from mixing the type free calculus with logic lead to type theory and hence formalisations of Natural Language were ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
Logic, due to the paradoxes, is absent from the type free calculus. This makes such a calculus an unsuitable device for Natural Language Semantics. Moreover, the problems that arise from mixing the type free calculus with logic lead to type theory and hence formalisations of Natural Language were carried out in a strictly typed framework. It was shown however, that strict type theory cannot capture the selfreferential nature of language ([Parsons 79], [Chierchia, Turner 88] and [Kamareddine, Klein 93]) and hence other approaches were needed. For example, the approach carried out by Parsons is based on creating a notion of floating types which can be instantiated to particular instances of types whereas the approaches of Chierchia, Turner and Kamareddine, Klein are based on a type free framework. In this paper, we will embed the typing system of [Parsons 79] into a version of the one proposed in [Kamareddine, Klein 93] giving an interpretation of Parsons' system in a type free theory...