25.04.2013 Views

On Intuitionistic Linear Logic - Microsoft Research

On Intuitionistic Linear Logic - Microsoft Research

On Intuitionistic Linear Logic - Microsoft Research

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Chapter 1<br />

Introduction<br />

1 Background<br />

An important problem in theoretical computer science is discovering logical foundations of programming<br />

languages. Such foundations provide programmers with techniques for reasoning logically<br />

rather than informally about their programs and not only tells implementors precisely what they are<br />

trying to implement but also enables them to reason formally about possible optimizations. <strong>On</strong>e of<br />

the most fruitful methods used to explore such logical foundations has been to utilize a fascinating<br />

relationship between various typed λ-calculi, constructive logics and structures, or models, from<br />

category theory. Despite their apparent independence, various work has shown how these areas are<br />

related.<br />

<strong>Logic</strong> with typed λ-calculi. Curry [23, Section 9E] and Howard [41] noticed that an axiomatic<br />

formulation of <strong>Intuitionistic</strong> <strong>Logic</strong> (IL) corresponds to the type scheme for (S,K) combinatory<br />

logic. It was also noted that the natural deduction formulation for the (⊃, ∧)-fragment of<br />

minimal logic corresponds to the typing rules for the simply typed λ-calculus with pairs.<br />

More importantly, the notion of normalization for minimal logic corresponds to the notion of<br />

reduction of the λ-terms. This relationship is known as the ‘propositions-as-types analogy’ or<br />

the Curry-Howard correspondence.<br />

Category theory with logic. Lambek [48, 49, 50] first showed how formal deductions for propositional<br />

logics could be given in a categorical framework. In particular he considered the<br />

relationship between intuitionistic (propositional) logic and cartesian closed categories. Lawvere<br />

[54] showed how these techniques could be extended to handle predicate logics by considering<br />

more powerful categorical structures.<br />

Category theory with typed λ-calculi. Given the relationship between logic and typed λcalculi,<br />

Lambek was able to show how category theory could give a semantics for typed λcalculi;<br />

this is demonstrated for various calculi in his book with Scott [52]. Curien, along with<br />

co-workers, has shown how this semantics can be seen to suggest an abstract machine: the<br />

categorical abstract machine [21]. This idea has been used to provide a complete compiler for<br />

a dialect of ML [72].<br />

These relationships can be pictured as<br />

Typed λ-calculus Constructive <strong>Logic</strong><br />

❅ ❅❅❅❅ <br />

Categorical Model.<br />

The exciting aspect of these relationships is not just that the three areas are related but that certain<br />

concepts within them are related also, as shown below.<br />

<strong>Logic</strong> Typed λ-calculus Categorical Model<br />

Proposition Type Object<br />

Proof Term Morphism<br />

Normalization Reduction Equality of morphisms<br />

1

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!