Results 1 
9 of
9
A Term Calculus for Intuitionistic Linear Logic
, 1993
"... . In this paper we consider the problem of deriving a term assignment system for Girard's Intuitionistic Linear Logic for both the sequent calculus and natural deduction proof systems. Our system differs from previous calculi (e.g. that of Abramsky [1]) and has two important properties which th ..."
Abstract

Cited by 90 (12 self)
 Add to MetaCart
(Show Context)
. In this paper we consider the problem of deriving a term assignment system for Girard's Intuitionistic Linear Logic for both the sequent calculus and natural deduction proof systems. Our system differs from previous calculi (e.g. that of Abramsky [1]) and has two important properties which they lack. These are the substitution property (the set of valid deductions is closed under substitution) and subject reduction (reduction on terms is welltyped). We also consider term reduction arising from cutelimination in the sequent calculus and normalisation in natural deduction. We explore the relationship between these and consider their computational content. 1 Intuitionistic Linear Logic Girard's Intuitionistic Linear Logic [3] is a refinement of Intuitionistic Logic where formulae must be used exactly once. Given this restriction the familiar logical connectives become divided into multiplicative and additive versions. Within this paper, we shall only consider the multiplicatives. Int...
Applications of Linear Logic to Computation: An Overview
, 1993
"... This paper is an overview of existing applications of Linear Logic (LL) to issues of computation. After a substantial introduction to LL, it discusses the implications of LL to functional programming, logic programming, concurrent and objectoriented programming and some other applications of LL, li ..."
Abstract

Cited by 42 (3 self)
 Add to MetaCart
This paper is an overview of existing applications of Linear Logic (LL) to issues of computation. After a substantial introduction to LL, it discusses the implications of LL to functional programming, logic programming, concurrent and objectoriented programming and some other applications of LL, like semantics of negation in LP, nonmonotonic issues in AI planning, etc. Although the overview covers pretty much the stateoftheart in this area, by necessity many of the works are only mentioned and referenced, but not discussed in any considerable detail. The paper does not presuppose any previous exposition to LL, and is addressed more to computer scientists (probably with a theoretical inclination) than to logicians. The paper contains over 140 references, of which some 80 are about applications of LL. 1 Linear Logic Linear Logic (LL) was introduced in 1987 by Girard [62]. From the very beginning it was recognized as relevant to issues of computation (especially concurrency and stat...
Reference Counting as a Computational Interpretation of Linear Logic
 Journal of Functional Programming
, 1996
"... We develop formal methods for reasoning about memory usage at a level of abstraction suitable for establishing or refuting claims about the potential applications of linear logic for static analysis. In particular, we demonstrate a precise relationship between type correctness for a language based o ..."
Abstract

Cited by 36 (0 self)
 Add to MetaCart
We develop formal methods for reasoning about memory usage at a level of abstraction suitable for establishing or refuting claims about the potential applications of linear logic for static analysis. In particular, we demonstrate a precise relationship between type correctness for a language based on linear logic and the correctness of a referencecounting interpretation of the primitives that the language draws from the rules for the `of course' operation. Our semantics is `lowlevel' enough to express sharing and copying while still being `highlevel ' enough to abstract away from details of memory layout. This enables the formulation and proof of a result describing the possible runtime reference counts of values of linear type. Contents 1 Introduction 1 2 Operational Semantics with Memory 4 3 A Programming Language Based on Linear Logic 9 4 Semantics 14 5 Properties of the Semantics 24 6 Linear Logic and Memory 27 7 Discussion 32 A Proofs of the Main Theorems 36 Acknowledgements...
A Model for Syntactic Control of Interference
 MATHEMATICAL STRUCTURES IN COMPUTER SCIENCE
, 1993
"... Two imperative programming language phrases interfere when one writes to a storage variable that the other reads from or writes to. Reynolds has described an elegant linguistic approach to controlling interference in which a refinement of typed calculus is used to limit sharing of storage variables; ..."
Abstract

Cited by 23 (4 self)
 Add to MetaCart
(Show Context)
Two imperative programming language phrases interfere when one writes to a storage variable that the other reads from or writes to. Reynolds has described an elegant linguistic approach to controlling interference in which a refinement of typed calculus is used to limit sharing of storage variables; in particular, different identifiers are required never to interfere. This paper examines semantic foundations of the approach. We describe a category that has (an abstraction of) interference information built into all objects and maps. This information is used to define a “tensor” product whose components are required never to interfere. Environments are defined using the tensor, and procedure types are obtained via a suitable adjunction. The category is a model of intuitionistic linear logic. Reynolds’ concept of passive type – i.e. types for phrases that don’t write to any storage variables – is shown to be closely related, in this model, to Girard’s “of course” modality.
A Survey of Linear Logic Programming
 Computational Logic
, 1995
"... Abstract. Logic programming can be given a foundation in sequent calculus, viewing computation as the process of building a cutfree sequent proof from the bottomup. Earliest accounts of logic programming were based in classical logic and then later in intuitionistic logic. The use of linear logic ..."
Abstract

Cited by 4 (0 self)
 Add to MetaCart
Abstract. Logic programming can be given a foundation in sequent calculus, viewing computation as the process of building a cutfree sequent proof from the bottomup. Earliest accounts of logic programming were based in classical logic and then later in intuitionistic logic. The use of linear logic to design new logic programming languages was inevitable given that it allows for more dynamics in the way sequents change during the search for a proof and since it can account for logic programming in these other logics. We overview how linear logic has been used to design new logic programming languages and describe some applications and implementation issues for such languages. §1. Introduction. It is now common place to recognize the important role of logic in the foundations of computer science in general and programming languages more specifically. For this reason, when a major new advance is made in our understanding of logic, we can expect to see that advance ripple into other areas of computer science. Such rippling has been observed during the years
Summary
, 1993
"... In this thesis we carry out a detailed study of the (propositional) intuitionistic fragment of Girard’s linear logic (ILL). Firstly we give sequent calculus, natural deduction and axiomatic formulations of ILL. In particular our natural deduction is different from others and has important properties ..."
Abstract
 Add to MetaCart
(Show Context)
In this thesis we carry out a detailed study of the (propositional) intuitionistic fragment of Girard’s linear logic (ILL). Firstly we give sequent calculus, natural deduction and axiomatic formulations of ILL. In particular our natural deduction is different from others and has important properties, such as closure under substitution, which others lack. We also study the process of reduction in all three logical formulations, including a detailed proof of cut elimination. Finally, we consider translations between Intuitionistic Logic (IL) and ILL. We then consider the linear term calculus, which arises from applying the CurryHoward correspondence to the natural deduction formulation. We show how the various proof theoretic formulations suggest reductions at the level of terms. The properties of strong normalization and confluence are proved for these reduction rules. We also consider mappings between the extended λcalculus and the linear term calculus. Next we consider a categorical model for ILL. We show how by considering the linear term calculus as an equational logic, we can derive a model: a Linear category. We consider two alternative models: firstly, one due to Seely and then one due to Lafont. Surprisingly, we find that Seely’s model is not sound, in that equal terms are not modelled with equal morphisms. We show how after adapting Seely’s model (by viewing it in a more abstract setting) it becomes a particular instance
Lehman Brothers Corporation
, 1995
"... We develop formal methods for reasoning about memory usage at a level of abstraction suitable for establishing or refuting claims about the potential applications of linear logic for static analysis. In particular � we demonstrate a precise relationship between type correctness for a language based ..."
Abstract
 Add to MetaCart
We develop formal methods for reasoning about memory usage at a level of abstraction suitable for establishing or refuting claims about the potential applications of linear logic for static analysis. In particular � we demonstrate a precise relationship between type correctness for a language based on linear logic and the correctness of a reference�counting interpretation of the primitives that the language draws from the rules for the �of course � operation. Our semantics is �low�level � enough to express sharing and copying while still being �high� level � enough to abstract away from details of memory layout. This enables the formulation and proof of a result describing the possible run�time reference counts of values of linear type.