Results 1 -
4 of
4
A Taste of Linear Logic
- In Mathematical Foundations of Computer Science, volume 711 of LNCS
, 1993
"... . This tutorial paper provides an introduction to intuitionistic logic and linear logic, and shows how they correspond to type systems for functional languages via the notion of `Propositions as Types'. The presentation of linear logic is simplified by basing it on the Logic of Unity. An application ..."
Abstract
-
Cited by 75 (5 self)
- Add to MetaCart
. This tutorial paper provides an introduction to intuitionistic logic and linear logic, and shows how they correspond to type systems for functional languages via the notion of `Propositions as Types'. The presentation of linear logic is simplified by basing it on the Logic of Unity. An application to the array update problem is briefly discussed. 1 Introduction Some of the best things in life are free; and some are not. Truth is free. Having proved a theorem, you may use this proof as many times as you wish, at no extra cost. Food, on the other hand, has a cost. Having baked a cake, you may eat it only once. If traditional logic is about truth, then linear logic is about food. In traditional logic, if a fact is used to conclude another fact, the first fact is still available. For instance, given that A implies B and given A, one may deduce both A and B. In symbols, this is written as the judgement A ! B; A ` A \Theta B (i) where A ! B is read `A implies B', and A \Theta B is read `...
Call-by-Name, Call-by-Value, Call-by-Need, and the Linear Lambda Calculus
, 1994
"... Girard described two translations of intuitionistic logic into linear logic, one where A -> B maps to (!A) -o B, and another where it maps to !(A -o B). We detail the action of these translations on terms, and show that the first corresponds to a call-by-name calculus, while the second corresponds t ..."
Abstract
-
Cited by 26 (5 self)
- Add to MetaCart
Girard described two translations of intuitionistic logic into linear logic, one where A -> B maps to (!A) -o B, and another where it maps to !(A -o B). We detail the action of these translations on terms, and show that the first corresponds to a call-by-name calculus, while the second corresponds to call-by-value. We further show that if the target of the translation is taken to be an affine calculus, where ! controls contraction but weakening is allowed everywhere, then the second translation corresponds to a call-by-need calculus, as recently defined by Ariola, Felleisen, Maraist, Odersky, and Wadler. Thus the different calling mechanisms can be explained in terms of logical translations, bringing them into the scope of the Curry-Howard isomorphism.
Discontinuity and the Lambek Calculus
, 1994
"... This paper is concerned with the treatment of discontinuous constituency within Categorial Grammar ..."
Abstract
-
Cited by 13 (2 self)
- Add to MetaCart
This paper is concerned with the treatment of discontinuous constituency within Categorial Grammar
Separating Weakening and Contraction in a Linear Lambda Calculus
- in: Proc. CATS'98, Computing: the Fourth Australian Theory Symposium (Perth
, 1996
"... . We present a separated-linear lambda calculus of resource consumption based on a refinement of linear logic which allows separate control of weakening and contraction. The calculus satisfies subject reduction and confluence, and inherits previous results on the relationship of Girard's two transla ..."
Abstract
-
Cited by 2 (1 self)
- Add to MetaCart
. We present a separated-linear lambda calculus of resource consumption based on a refinement of linear logic which allows separate control of weakening and contraction. The calculus satisfies subject reduction and confluence, and inherits previous results on the relationship of Girard's two translations from minimal intuitionistic logic to linear logic with call-by-name and call-by-value. We construct a hybrid translation from Girard's two which is sound and complete for mapping types and reduction sequences from call-by-need into separatedlinear . This treatment of call-by-need is more satisfying than in previous work, allowing a contrasting of all three reduction strategies in the manner (for example) that the CPS translations allow for call-by-name and call-by-value. H OW can we explain the differences between parameter-passing styles? With the continuation-passing style (CPS) transforms [24, 25], one makes the flow of control explicit. Each parameter-passing style is associated ...

