Linear logic
Linear logic is a substructural logic proposed by JeanYves Girard as a refinement of classical and intuitionistic logic, joining the dualities of the former with many of the constructive properties of the latter.^{[1]} Although the logic has also been studied for its own sake, more broadly, ideas from linear logic have been influential in fields such as programming languages, game semantics, and quantum physics (because linear logic can be seen as the logic of quantum information theory),^{[2]} as well as linguistics,^{[3]} particularly because of its emphasis on resourceboundedness, duality, and interaction.
Linear logic lends itself to many different presentations, explanations and intuitions. Prooftheoretically, it derives from an analysis of classical sequent calculus in which uses of (the structural rules) contraction and weakening are carefully controlled. Operationally, this means that logical deduction is no longer merely about an everexpanding collection of persistent "truths", but also a way of manipulating resources that cannot always be duplicated or thrown away at will. In terms of simple denotational models, linear logic may be seen as refining the interpretation of intuitionistic logic by replacing cartesian (closed) categories by symmetric monoidal (closed) categories, or the interpretation of classical logic by replacing boolean algebras by C*algebras.
Connectives, duality, and polarity
Syntax
The language of classical linear logic (CLL) is defined inductively by the BNF notation
A  ::=  p ∣ p^{⊥} 
∣  A ⊗ A ∣ A ⊕ A  
∣  A & A ∣ A ⅋ A  
∣  1 ∣ 0 ∣ ⊤ ∣ ⊥  
∣  !A ∣ ?A 
Here p and p^{⊥} range over logical atoms. For reasons to be explained below, the connectives ⊗, ⅋, 1, and ⊥ are called multiplicatives, the connectives &, ⊕, ⊤, and 0 are called additives, and the connectives ! and ? are called exponentials. We can further employ the following terminology:
 ⊗ is called "multiplicative conjunction" or "times" (or sometimes "tensor")
 ⊕ is called "additive disjunction" or "plus"
 & is called "additive conjunction" or "with"
 ⅋ is called "multiplicative disjunction" or "par"
 ! is pronounced "of course" (or sometimes "bang")
 ? is pronounced "why not"
Binary connectives ⊗, ⊕, & and ⅋ are associative and commutative; 1 is the unit for ⊗, 0 is the unit for ⊕, ⊥ is the unit for ⅋ and ⊤ is the unit for &.
Every proposition A in CLL has a dual A^{⊥}, defined as follows:
(p)^{⊥} = p^{⊥}  (p^{⊥})^{⊥} = p  
(A ⊗ B)^{⊥} = A^{⊥} ⅋ B^{⊥}  (A ⅋ B)^{⊥} = A^{⊥} ⊗ B^{⊥}  
(A ⊕ B)^{⊥} = A^{⊥} & B^{⊥}  (A & B)^{⊥} = A^{⊥} ⊕ B^{⊥}  
(1)^{⊥} = ⊥  (⊥)^{⊥} = 1  
(0)^{⊥} = ⊤  (⊤)^{⊥} = 0  
(!A)^{⊥} = ?(A^{⊥})  (?A)^{⊥} = !(A^{⊥})  
add  mul  exp  

pos  ⊕ 0  ⊗ 1  ! 
neg  & ⊤  ⅋ ⊥  ? 
Observe that ()^{⊥} is an involution, i.e., A^{⊥⊥} = A for all propositions. A^{⊥} is also called the linear negation of A.
The columns of the table suggest another way of classifying the connectives of linear logic, termed polarity: the connectives negated in the left column (⊗, ⊕, 1, 0, !) are called positive, while their duals on the right (⅋, &, ⊥, ⊤, ?) are called negative; cf. table on the right.
Linear implication is not included in the grammar of connectives, but is definable in CLL using linear negation and multiplicative disjunction, by A ⊸ B := A^{⊥} ⅋ B. The connective ⊸ is sometimes pronounced "lollipop", owing to its shape.
Sequent calculus presentation
One way of defining linear logic is as a sequent calculus. We use the letters Γ and Δ to range over list of propositions A_{1}, ..., A_{n}, also called contexts. A sequent places a context to the left and the right of the turnstile, written Γ Δ. Intuitively, the sequent asserts that the conjunction of Γ entails the disjunction of Δ (though we mean the "multiplicative" conjunction and disjunction, as explained below). Girard describes classical linear logic using only onesided sequents (where the lefthand context is empty), and we follow here that more economical presentation. This is possible because any premises to the left of a turnstile can always be moved to the other side and dualised.
We now give inference rules describing how to build proofs of sequents.^{[4]}
First, to formalize the fact that we do not care about the order of propositions inside a context, we add the structural rule of exchange:
Γ, A_{1}, A_{2}, Δ 
Γ, A_{2}, A_{1}, Δ 
Note that we do not add the structural rules of weakening and contraction, because we do care about the absence of propositions in a sequent, and the number of copies present.
Next we add initial sequents and cuts:


The cut rule can be seen as a way of composing proofs, and initial sequents serve as the units for composition. In a certain sense these rules are redundant: as we introduce additional rules for building proofs below, we will maintain the property that arbitrary initial sequents can be derived from atomic initial sequents, and that whenever a sequent is provable it can be given a cutfree proof. Ultimately, this canonical form property (which can be divided into the completeness of atomic initial sequents and the cutelimination theorem, inducing a notion of analytic proof) lies behind the applications of linear logic in computer science, since it allows the logic to be used in proof search and as a resourceaware lambdacalculus.
Now, we explain the connectives by giving logical rules. Typically in sequent calculus one gives both "rightrules" and "leftrules" for each connective, essentially describing two modes of reasoning about propositions involving that connective (e.g., verification and falsification). In a onesided presentation, one instead makes use of negation: the rightrules for a connective (say ⅋) effectively play the role of leftrules for its dual (⊗). So, we should expect a certain "harmony" between the rule(s) for a connective and the rule(s) for its dual.
Multiplicatives
The rules for multiplicative conjunction (⊗) and disjunction (⅋):


and for their units:


Observe that the rules for multiplicative conjunction and disjunction are admissible for plain conjunction and disjunction under a classical interpretation (i.e., they are admissible rules in LK).
Additives
The rules for additive conjunction (&) and disjunction (⊕) :



and for their units:

(no rule for 0) 
Observe that the rules for additive conjunction and disjunction are again admissible under a classical interpretation. But now we can explain the basis for the multiplicative/additive distinction in the rules for the two different versions of conjunction: for the multiplicative connective (⊗), the context of the conclusion (Γ, Δ) is split up between the premises, whereas for the additive case connective (&) the context of the conclusion (Γ) is carried whole into both premises.
Exponentials
The exponentials are used to give controlled access to weakening and contraction. Specifically, we add structural rules of weakening and contraction for ?'d propositions:^{[5]}


and use the following logical rules:


One might observe that the rules for the exponentials follow a different pattern from the rules for the other connectives, resembling the inference rules governing modalities in sequent calculus formalisations of the normal modal logic S4, and that there is no longer such a clear symmetry between the duals ! and ?. This situation is remedied in alternative presentations of CLL (e.g., the LU presentation).
Remarkable formulae
In addition to the De Morgan dualities described above, some important equivalences in linear logic include:
 Distributivity
 Exponential isomorphism
(Here .)
Assume that ⅋ is any of the binary operators times, plus, with or par (but not linear implication). The following is not in general an equivalence, only an implication:
 Lineardistributions
A map which is not an isomorphism yet plays a crucial role in linear logic is:
(A ⊗ (B ⅋ C)) ⊸ ((A ⊗ B) ⅋ C)
Linear distributions are fundamental in the proof theory of linear logic. The consequence of this map were first investigated in ^{[6]} and called a "weak distribution". In subsequent work it was renamed to "linear distribution" to reflect the fundamental connection to linear logic.
Encoding classical/intuitionistic logic in linear logic
Both intuitionistic and classical implication can be recovered from linear implication by inserting exponentials: intuitionistic implication is encoded as !A ⊸ B, while classical implication can be encoded as !?A ⊸ ?B or !A ⊸ ?!B (or a variety of alternative possible translations).^{[7]} The idea is that exponentials allow us to use a formula as many times as we need, which is always possible in classical and intuitionistic logic.
Formally, there exists a translation of formulae of intuitionistic logic to formulae of linear logic in a way which guarantees that the original formula is provable in intuitionistic logic if and only if the translated formula is provable in linear logic. Using the Gödel–Gentzen negative translation, we can thus embed classical firstorder logic into linear firstorder logic.
The resource interpretation
Lafont (1993) first showed how intuitionistic linear logic can be explained as a logic of resources, so providing the logical language with access to formalisms that can be used for reasoning about resources within the logic itself, rather than, as in classical logic, by means of nonlogical predicates and relations. Antony Hoare (1985)'s classical example of the vending machine can be used to illustrate this idea.
Suppose we represent having a candy bar by the atomic proposition candy, and having a dollar by $1. To state the fact that a dollar will buy you one candy bar, we might write the implication $1 ⇒ candy. But in ordinary (classical or intuitionistic) logic, from A and A ⇒ B one can conclude A ∧ B. So, ordinary logic leads us to believe that we can buy the candy bar and keep our dollar! Of course, we can avoid this problem by using more sophisticated encodings, although typically such encodings suffer from the frame problem. However, the rejection of weakening and contraction allows linear logic to avoid this kind of spurious reasoning even with the "naive" rule. Rather than $1 ⇒ candy, we express the property of the vending machine as a linear implication $1 ⊸ candy. From $1 and this fact, we can conclude candy, but not $1 ⊗ candy. In general, we can use the linear logic proposition A ⊸ B to express the validity of transforming resource A into resource B.
Running with the example of the vending machine, let us consider the "resource interpretations" of the other multiplicative and additive connectives. (The exponentials provide the means to combine this resource interpretation with the usual notion of persistent logical truth.)
Multiplicative conjunction (A ⊗ B) denotes simultaneous occurrence of resources, to be used as the consumer directs. For example, if you buy a stick of gum and a bottle of soft drink, then you are requesting gum ⊗ drink. The constant 1 denotes the absence of any resource, and so functions as the unit of ⊗.
Additive conjunction (A & B) represents alternative occurrence of resources, the choice of which the consumer controls. If in the vending machine there is a packet of chips, a candy bar, and a can of soft drink, each costing one dollar, then for that price you can buy exactly one of these products. Thus we write $1 ⊸ (candy & chips & drink). We do not write $1 ⊸ (candy ⊗ chips ⊗ drink), which would imply that one dollar suffices for buying all three products together. However, from $1 ⊸ (candy & chips & drink), we can correctly deduce $3 ⊸ (candy ⊗ chips ⊗ drink), where $3 := $1 ⊗ $1 ⊗ $1. The unit ⊤ of additive conjunction can be seen as a wastebasket for unneeded resources. For example, we can write $3 ⊸ (candy ⊗ ⊤) to express that with three dollars you can get a candy bar and some other stuff, without being more specific (for example, chips and a drink, or $2, or $1 and chips, etc.).
Additive disjunction (A ⊕ B) represents alternative occurrence of resources, the choice of which the machine controls. For example, suppose the vending machine permits gambling: insert a dollar and the machine may dispense a candy bar, a packet of chips, or a soft drink. We can express this situation as $1 ⊸ (candy ⊕ chips ⊕ drink). The constant 0 represents a product that cannot be made, and thus serves as the unit of ⊕ (a machine that might produce A or 0 is as good as a machine that always produces A because it will never succeed in producing a 0).
Multiplicative disjunction (A ⅋ B) is more difficult to gloss in terms of the resource interpretation, although we can encode back into linear implication, either as A^{⊥} ⊸ B or B^{⊥} ⊸ A.
Other proof systems
Proof nets
Introduced by JeanYves Girard, proof nets have been created to avoid the bureaucracy, that is all the things that make two derivations different in the logical point of view, but not in a "moral" point of view.
For instance, these two proofs are "morally" identical:


The goal of proof nets is to make them identical by creating a graphical representation of them.
Semantics
Algebraic semantics
Decidability/complexity of entailment
The entailment relation in full CLL is undecidable.^{[8]} When considering fragments of CLL, the decision problem has varying complexity:
 Multiplicative linear logic (MLL): only the multiplicative connectives. MLL entailment is NPcomplete, even restricting to Horn clauses in the purely implicative fragment,^{[9]} or to atomfree formulas.^{[10]}
 Multiplicativeadditive linear logic (MALL): only multiplicatives and additives (i.e., exponentialfree). MALL entailment is PSPACEcomplete.^{[8]}
 Multiplicativeexponential linear logic (MELL): only multiplicatives and exponentials. By reduction from the reachability problem for Petri nets,^{[11]} MELL entailment must be at least EXPSPACEhard, although decidability itself has had the status of a longstanding open problem. In 2015, a proof of decidability was published in the journal TCS.^{[12]}
 Affine linear logic (that is linear logic with weakening, an extension rather than a fragment) was shown to be decidable, in 1995.^{[13]}
Variants
Many variations of linear logic arise by further tinkering with the structural rules:
 Affine logic, which forbids contraction but allows global weakening (a decidable extension).
 Strict logic or relevant logic, which forbids weakening but allows global contraction.
 Noncommutative logic or ordered logic, which removes the rule of exchange, in addition to barring weakening and contraction. In ordered logic, linear implication divides further into leftimplication and rightimplication.
Different intuitionistic variants of linear logic have been considered. When based on a singleconclusion sequent calculus presentation, like in ILL (Intuitionistic Linear Logic), the connectives ⅋, ⊥, and ? are absent, and linear implication is treated as a primitive connective. In FILL (Full Intuitionistic Linear Logic) the connectives ⅋, ⊥, and ? are present, linear implication is a primitive connective and, similarly to what happens in intuitionistic logic, all connectives (except linear negation) are independent. There are also first and higherorder extensions of linear logic, whose formal development is somewhat standard (see firstorder logic and higherorder logic).
See also
References
 ↑ Girard, JeanYves (1987). "Linear logic" (PDF). Theoretical Computer Science. 50 (1): 1–102. doi:10.1016/03043975(87)900454.
 ↑ Baez, John; Stay, Mike (2008). Bob Coecke, ed. "Physics, Topology, Logic and Computation: A Rosetta Stone" (PDF). New Structures of Physics.
 ↑ de Paiva, V.; van Genabith, J.; Ritter, E. (1999). Dagstuhl Seminar 99341 on Linear Logic and Applications (PDF).
 ↑ Girard (1987), p.22, Def.1.15
 ↑ Girard (1987), p.2526, Def.1.21
 ↑ Cockett and Seely "Weakly distributive categories" JPAA 114(2) 133173, 1997
 ↑ Di Cosmo, Roberto. The Linear Logic Primer. Course notes; chapter 2.
 1 2 For this result and discussion of some of the fragments below, see: Lincoln, Patrick; Mitchell, John; Scedrov, Andre; Shankar, Natarajan (1992). "Decision Problems for Propositional Linear Logic". Annals of Pure and Applied Logic. 56: 239–311. doi:10.1016/01680072(92)90075B.
 ↑ Kanovich, Max I. (19920622). "Horn programming in linear logic is NPcomplete". Seventh Annual IEEE Symposium on Logic in Computer Science, 1992. LICS '92. Proceedings. Seventh Annual IEEE Symposium on Logic in Computer Science, 1992. LICS '92. Proceedings. pp. 200–210. doi:10.1109/LICS.1992.185533.
 ↑ Lincoln, Patrick; Winkler, Timothy (1994). "Constantonly multiplicative linear logic is NPcomplete". Theoretical Computer Science. 135: 155–169. doi:10.1016/03043975(94)001081.
 ↑ Gunter, C. A.; Gehlot, V. (1989). Tenth International Conference on Application and Theory of Petri Nets. Proceedings. pp. 174–191. Missing or empty
title=
(help)  ↑ Bimbó, Katalin (20150913). "The decidability of the intensional fragment of classical linear logic". Theoretical Computer Science. 597: 1–17. doi:10.1016/j.tcs.2015.06.019. ISSN 03043975.
 ↑ Kopylov, A. P. (19950601). "Decidability of linear affine logic". , Tenth Annual IEEE Symposium on Logic in Computer Science, 1995. LICS '95. Proceedings. Tenth Annual IEEE Symposium on Logic in Computer Science, 1995. LICS '95. Proceedings. pp. 496–504. doi:10.1109/LICS.1995.523283.
Further reading
 Girard, JeanYves. Linear logic, Theoretical Computer Science, Vol 50, no 1, pp. 1–102, 1987.
 Girard, JeanYves, Lafont, Yves, and Taylor, Paul. Proofs and Types. Cambridge Press, 1989.
 Hoare, C. A. R., 1985. Communicating Sequential Processes. PrenticeHall International. ISBN 0131532715
 Lafont, Yves, 1993. Introduction to Linear Logic. Lecture notes from TEMPUS Summer School on Algebraic and Categorical Methods in Computer Science, Brno, Czech Republic.
 Troelstra, A.S. Lectures on Linear Logic. CSLI (Center for the Study of Language and Information) Lecture Notes No. 29. Stanford, 1992.
 A. S. Troelstra, H. Schwichtenberg (1996). Basic Proof Theory. In series Cambridge Tracts in Theoretical Computer Science, Cambridge University Press, ISBN 0521779111.
 Di Cosmo, Roberto, and Danos, Vincent. The linear logic primer.
 Introduction to Linear Logic (Postscript) by Patrick Lincoln
 Introduction to Linear Logic by Torben Brauner
 A taste of linear logic by Philip Wadler
 Linear Logic by Roberto Di Cosmo and Dale Miller. The Stanford Encyclopedia of Philosophy (Fall 2006 Edition), Edward N. Zalta (ed.).
 Overview of linear logic programming by Dale Miller. In Linear Logic in Computer Science, edited by Ehrhard, Girard, Ruet, and Scott. Cambridge University Press. London Mathematical Society Lecture Notes, Volume 316, 2004.
 Linear Logic Wiki
External links
Media related to Linear logic at Wikimedia Commons  A Linear Logic Prover (llprover), available for use online, from: Naoyuki Tamura / Dept of CS / Kobe University / Japan