15-816 Linear Logic
This lecture provides a general overview of logics and their relationship and surveys the historical development of substructural logics of which linear logic is a particular instance.
We review the historical debate of Brouwer and Hilbert, which gave substance to the split between intuitionistic and classical mathematics. On the logical side, intuitionistic logic can be viewed as differing from classical logic by the rejections of the law of the excluded middle in intuitionistic logic.
But Gödel's interpretation of classical logic in intuitionistic logic shows that intuitionistic logic can also be seen as an enrichment of classical logic by constructive disjunction, implication, and existential quantification. An intuitionist can therefore understand classical proofs by applying Gödel's translation, with the caveat that the revised proof will be for a different theorem! While the original and translated theorem are equivalent in classical logic, they are not in intuitionistic logic.
In the development of various substructural logics, we notice a similar phenomenon. In linear logic, for example, assumptions made in a proof must be used exactly once, while in both classical and intuitionistic logic the use of assumptions is unrestricted. Thus, apparently, linear logic is weaker than intuitionistic logic. However, we will take care to define linear logic in such a way that intuitionistic logic can be directly embedded it. The crucial idea is a modal operator "!A" (read of course A) which allows a linear hypothesis to become an (unrestricted) intuitionistic hypothesis. This insight is due to Girard who developed linear logic in its modern form. Anything we can say in intuitionistic logic can then still be said with precisely the same meaning, and we can express more.
Assumptions which must be used exactly once, that is, linear hypotheses, can be viewed as resources which may be consumed during the proof of a proposition in linear logic. This allows us to logically model situations which otherwise could only be described in a cumbersome fashion. Examples are planning problems, communication protocols, imperative computations, concurrent systems, and many others involving a notion of state.