Categorical Semantics of Linear Logic Paul-André Melliès Proof theory is the result of a short and tumultuous history, developed on the periphery of mainstream mathematics. Hence, its language is often idiosyncratic: sequent calculus, cut-elimination, subformula property, etc. This survey is designed to guide the novice reader and the itinerant mathematician along a smooth and consistent path, investigating the symbolic mechanisms of cutelimination, and their algebraic transcription as coherence diagrams in categories with structure. This spiritual journey at the meeting point of linguistic and algebra is demanding at times, but also pleasantly rewarding: to date, no language (either formal or informal) has been studied by mathematicians as thoroughly as the language of proofs. We start the survey by a short introduction to proof theory (Chapter 1) followed by an informal explanation of the principles of denotational semantics (Chapter 2) which we understand as a representation theory for proofs – generating algebraic invariants modulo cut-elimination. After describing in full detail the cut-elimination procedure of linear logic (Chapter 3), we explain how to transcribe it into the language of categories with structure. We review three alternative formulations of ∗-autonomous category, or monoidal category with classical duality (Chapter 4). Then, after giving a 2-categorical account of lax and oplax monoidal adjunctions (Chapter 5) and recalling the notions of monoids and monads (Chapter 6) we relate four different categorical axiomatizations of propositional linear logic appearing in the literature (Chapter 7). We conclude the survey by describing two concrete models of linear logic, based on coherence spaces and sequential games (Chapter 8) and by discussing a series of future research directions (Chapter 9). Keywords: Proof theory, sequent calculus, cut-elimination, categorical semantics, linear logic, monoidal categories, ∗-autonomous categories, linearly distributive categories, dialogue categories, string diagrams, functorial boxes, 2categories, monoidal functors, monoidal adjunctions, coherence spaces, game semantics. 1 Proof theory: a short introduction From vernacular proofs to formal proofs: Gottlob Frege By nature and taste, the mathematician studies properties of specific mathematical objects, like rings, manifolds, operator algebras, etc. This practice involves a high familiarity with proofs, and with their elaboration. Hence, building a proof is frequently seen as an art, or at least as a craft, among mathematicians. Any chair is fine to sit on, but some chairs are more elegant than others. Similarly, the same theorem may be established by beautiful or by ugly means. But the experienced mathematician will always look for an elegant proof. In his daily work, the mathematician thinks of a proof as a rational argument exchanged on a blackboard, or exposed in a book – without further inquiry. The proof is seen as a vehicle of thought, not as an object of formal investigation. In that respect, the logician interested in proof theory is a peculiar kind of mathematician: one who investigates inside the language of mathematics the linguistic event of convincing someone else, or oneself, by a mathematical argument. Proof theory really started in 1879, when Gottlob Frege, a young lecturer at the University of Iena, published a booklet of eighty-eight pages, and one hundred thirty-three formulas [33]. In this short monograph, Frege introduced the first mathematical notation for proofs, which he called Begrifftschrift in German – a neologism translated today as ideography or concept script. In his introduction, Frege compares this ideography to a microscope which translates vernacular proofs exchanged between mathematicians into formal proofs which may be studied like any other mathematical object. In this formal language invented by Frege, proofs are written in two stages. First, a formula is represented as 2-dimensional graphical structures: for instance, the syntactic tree F a F(a) F(a) is a graphical notation for the formula written ∀F. ∀a. F(a) ⇒ F(a) in our contemporary notation – where the first-order variable a and the secondorder variable F are quantified universally. Then, a proof is represented as a sequence of such formulas, constructed incrementally according to a series of derivation rules, or logical principles. It is remarkable that Frege introduced this language of proofs, and formulated in it the first theory of quantification. Looking for Foundations: David Hilbert Despite his extraordinary insight and formal creativity, Gottlob Frege remained largely unnoticed by the mathematical community of his time. Much to Frege’s sorrow, most of his articles were rejected by mainstream mathematical journals. In fact, the few contemporary logicians who read the ideography generally 2 confused his work with George Boole’s algebraic account of logic. In a typical review, a prominent German logician of the time describes the 2-dimensional notation as “a monstrous waste of space” which “indulges in the Japanese custom of writing vertically”. Confronted to negative reactions of that kind, Frege generally ended up rewriting his mathematical articles in a condensed and non technical form, for publication in local philosophical journals. Fortunately, the ideography was saved from oblivion at the turn of the century, thanks to Bertrand Russell – whose curiosity in Frege’s work was initially aroused by a review by Giuseppe Peano, written in Italian [76]. At about the same time, David Hilbert, who was already famous for his work in algebra, got also interested in Gottlob Frege’s ideography. On that point, it is significant that David Hilbert raised a purely proof-theoretic problem in his famous communication of twenty-three open problems at the International Congress of Mathematicians in Paris, exposed as early as 1900. The second problem of the list consists indeed of showing that arithmetic is consistent, that is, without contradiction. David Hilbert further develops this idea in his monograph on the Infinite, written 25 years later [46]. He explains there that he hopes to establish, by purely finite combinatorial arguments on formal proofs, that there exists no contradiction in mathematics — in particular no contradiction in arguments involving infinite objects in arithmetic and analysis. This finitist program was certainly influenced by his successful work in algebraic geometry, which is also based on the finitist principle of reducing the infinite to the finite. This idea may also have been influenced by discussions with Frege. However, Kurt Gödel established a few years later, with his incompleteness theorem (1931) that Hilbert’s program was a hopeless dream: consistency of arithmetics cannot be established by purely arithmetical arguments. Consistency of Arithmetics: Gerhard Gentzen Hilbert’s dream was fruitful nonetheless: Gerhard Gentzen (who was originally a student of Hermann Weyl) established the consistency of arithmetics in 1936, by a purely combinatorial argument on the structure of arithmetic proofs. This result seems to contradict the fact just mentioned about Gödel’s incompleteness theorem, that no proof of consistency of arithmetic can be performed inside arithmetic. The point is that Gentzen used in his argument a transfinite induction up to Cantor’s ordinal ε0 – and this part of the reasoning lies outside arithmetics. Recall that the ordinal ε0 is the first ordinal in Cantor’s epsilon hierarchy: it is defined as the smallest ordinal which cannot be described starting from zero, and using addition, multiplication and exponentiation of ordinals to the base ω. Like many mathematicians and philosophers of his time, Gerhard Gentzen was fascinated by the idea of providing safe foundations (Grundlagen in German) for science and knowledge. By proving consistency of arithmetic, Gentzen hoped to secure this part of mathematics from the kind of antinomies or paradoxes discovered around 1900 in Set Theory by Cesare Burali-Forti, Georg Can3 tor, and Bertrand Russell. Today, this purely foundational motivation does not seem as relevant as it was in the early 1930s. Most mathematicians believe that reasoning by finite induction on natural numbers is fine, and does not lead to contradiction in arithmetics. Besides, it seems extravagant to convince the remaining skeptics that finite induction is safe, by exhibiting Gentzen’s argument based on transfinite induction... The sequent calculus For that reason, Gentzen’s work on consistency could have been forgotten along the years, and reduced in the end to a dusty trinket displayed in a cabinet of mathematical curiosity. Quite fortunately, the contrary happened. Gentzen’s work is regarded today as one of the most important and influential contributions ever made to logic and proof theory. However, this contemporary evaluation of his work requires to reverse the traditional perspective: what matters today is not the consistency result in itself, but rather the method invented by Gerhard Gentzen in order to establish this result. This methodology is based on a formal innovation: the sequent calculus and a fundamental discovery: the cut-elimination theorem. Together, this calculus and theorem offer an elegant and flexible framework to formalize proofs — either in classical or in intuitionistic logic, as Gentzen advocates in his original work, or in more recent logical systems, unknown at the time, like linear logic. The framework improves in many ways the formal proof systems designed previously by Gottlob Frege, Bertrand Russell, and David Hilbert. Since the whole survey is based on this particular formulation of logic, we find it useful to explain below the cardinal principles underlying the sequent calculus and its cut-elimination procedure. Formulas For simplicity, we restrict ourselves to propositional logic without quantifiers, either on first-order entities (elements) or second-order entities (propositions or sets). Accordingly, we do not consider first-order variables. The resulting logic is very elementary: every formula A is simply defined as a binary rooted tree • with nodes labeled by a conjunction (noted ∧), a disjunction (noted ∨), or an implication (noted ⇒), • with leaves labeled by the constant true (noted True), the constant false (noted False) or a propositional variable (ranging over A, B or C). A typical formula is the so-called Peirce’s law: ((A ⇒ B) ⇒ A) ⇒ A which cannot be proved in intuitionistic logic, but can be proved in classical logic, as we shall see later in this introductory chapter. 4 Sequents A sequent is defined as a pair of sequences of formulas A1 , ..., Am and B1 , ..., Bn separated by a symbol ` in the following way: A1 , . . . , Am ` B1 , . . . , Bn . (1) The sequent (1) should be understood informally pas the statement that the conjunction of all the formulas A1 , . . . , Am implies the disjunction of all the formulas B1 , . . . , Bn . This may be written alternatively as A1 ∧ . . . ∧ Am ⇒ B1 ∨ . . . ∨ Bn . Three easy sequents The simplest example of sequent is the following: A`A (2) which states that the formula A implies the formula A. Another very simple sequent is A, B ` A (3) which states that the conjunction of the formulas A and B implies the formula A. Yet another typical sequent is A ` A, B (4) which states that the formula A implies the disjunction of the formulas A and B. Philosophical interlude: truth values and tautologies The specialists in proof theory are generally reluctant to justify the definition of their sequent calculus by the external notion of “truth value” of a formula in a model. However, the notion of “truth value” has been so much emphasized by Alfred Tarski after Gottlob Frege, and it is so widespread today in the logical as well as the extra-logical circles, that the notion may serve as a useful guideline for the novice reader who meets Gerhard Gentzen’s sequent calculus for the first time. It will always be possible to explain the conceptual deficiencies of the notion later, and the necessity to reconstruct it from inside proof theory. From this perspective, the sequent (1) states that in any model M in which the formulas A1 , ..., Am are all true, then at least one of the formulas B1 , . . . , Bn is also true. The key point, of course, is that the sequent does not reveal which formula is satisfied among B1 , . . . , Bn . So, in some sense, truth is distributed among the formulas... this making all the spice of the sequent calculus! One may carry on in this model-theoretic line, and observe that the three sequents (2), (3) and (4) are tautologies in the sense that they happen to be true in any model M. For instance, the tautology (2) states that a formula A is true in M whenever the formula A is true; and the tautology (4) states that the formula A or the formula B is true in M when the formula A is true. 5 Proofs: deriving tautologies from tautologies What is interesting from the proof-theoretic point of view is that tautologies may be deduced mechanically from tautologies, by applying well-chosen rules of logic. For instance, the two tautologies (3) and (4) are deduced from the tautology (2) in the following way. Suppose that one has established that a given sequent Γ1 , Γ2 ` ∆ describes a tautology — where Γ1 and Γ2 and ∆ denote sequences of formulas. It is not difficult to establish then that the sequent Γ1 , B, Γ2 ` ∆ describes also a tautology. The sequent Γ1 , B, Γ2 ` ∆ states indeed that at least one of the formulas in ∆ is true when all the formulas in Γ1 and Γ2 and moreover the formula B are true. But this statement follows immediately from the fact that the sequent Γ1 , Γ2 ` ∆ is a tautology. Similarly, we leave the reader establish that whenever a sequent Γ ` ∆1 , ∆2 is a tautology, then the sequent Γ ` ∆1 , B, ∆2 is also a tautology, for every formula B and every pair of sequences of formulas ∆1 and ∆2 . The rules of logic: weakening and axiom We have just identified two simple recipes to deduce a tautology from another tautology. These two basic rules of logic are called Left Weakening and Right Weakening. They reflect the basic principle of classical and intuitionistic logic, that a formula A ⇒ B may be established just by proving the formula B, without using the hypothesis A. Like the other rules of logic, they are written down vertically in the sequent calculus, with the starting sequent on top, and the resulting sequent at bottom, separated by a line, in the following way: and Γ1 , Γ2 ` ∆ Left Weakening Γ1 , B, Γ2 ` ∆ (5) Γ ` ∆1 , ∆2 Right Weakening Γ ` ∆1 , B, ∆2 (6) Gerhard Gentzen’s sequent calculus is based on the principle that a proof describes a series of rules of logic like (5) and (6) applied to an elementary tautology like (2). For homogeneity and conceptual clarity, the sequent (2) itself is identified as the result of a specific logical rule, called the Axiom, which deduces the sequent (2) from no sequent at all. The rule is thus written as follows: 6 Axiom A`A The sequent calculus takes advantage of the horizontal notation for sequents, and of the vertical notation for rules, to write down proofs as 2-dimensional entities. For instance, the informal proof of sequent (3) is written as follows in the sequent calculus: Axiom A ` A Left Weakening (7) A, B ` A The rules of logic: contraction and exchange Another fundamental principle of classical and intuitionistic logic is that the formula A ⇒ B is proved when the formula B is deduced from the hypothesis formula A, possibly used several times. This possibility of repeating an hypothesis during an argument is reflected in the sequent calculus by two additional rules of logic, called Left Contraction and Right Contraction, formulated as follows: Γ1 , A, A, Γ2 ` ∆ (8) Left Contraction Γ1 , A, Γ2 ` ∆ and Γ ` ∆1 , A, A, ∆2 Right Contraction (9) Γ ` ∆1 , A, ∆2 Another basic principle of classical and intuitionistic logic is that the order of hypothesis and conclusions does not really matter in a proof. This principle is reflected in the sequent calculus by the Left Exchange and Right Exchange rules: Γ1 , A, B, Γ2 ` ∆ Left Exchange Γ1 , B, A, Γ2 ` ∆ and Γ ` ∆1 , A, B, ∆2 Right Exchange Γ ` ∆1 , B, A, ∆2 The rules of logic: logical rules vs. structural rules According to Gentzen, the rules of logic should be separated into three classes: • the axiom rule, • the logical rules, • the structural rules: weakening, contraction, exchange, and cut. We have already encountered the axiom rule, as well as all the structural rules, except for the cut rule. This rule deserves a special discussion, and will be introduced later for that reason. There remains the logical rules, which differ in nature from the structural rules. The structural rules manipulate the formulas of the sequent, but do not alter them. In contrast, the task of each logical rule is to introduce a new logical connective in a formula, either on the left-hand side 7 or right-hand side of the sequent. Consequently, there exist two kinds of logical rules (left and right introduction) for each connective of the logic. As a matter of illustration, the left and right introduction rules associated with conjunction are: Γ, A, B ` ∆ Left ∧ Γ, A ∧ B ` ∆ and Γ1 ` A, ∆1 Γ2 ` B, ∆2 Right ∧ Γ1 , Γ2 ` A ∧ B, ∆1 , ∆2 The left and right introduction rules associated with disjunction are: Γ1 , A ` ∆1 Γ2 , B ` ∆2 Left ∨ Γ1 , Γ2 , A ∨ B ` ∆1 , ∆2 and Γ ` A, B, ∆ Right ∨ Γ ` ∆1 , A ∨ B, ∆2 The left and right introduction rules associated with the constant True are: Γ1 , Γ2 ` ∆ Left True Γ1 , True, Γ2 ` ∆ and ` True Right True The left and right introduction rules associated with the constant False are: False ` Left False and Γ ` ∆1 , ∆2 Right False Γ ` ∆1 , False, ∆2 The introduction rules for the constants True and False should be understood as nullary versions of the introduction rules for the binary connectives ∧ and ∨ respectively. The left and right introduction rules associated with implication are: Γ1 ` A, ∆1 Γ2 , B ` ∆2 Left ⇒ Γ1 , Γ2 , A ⇒ B ` ∆1 , ∆2 and Γ, A ` B, ∆ Right ⇒ Γ ` A ⇒ B, ∆ It may be worth mentioning that in each of the introduction rules above, the formulas A and B as well as the sequences of formulas Γ, Γ1 , Γ2 and ∆, ∆1 , ∆2 are arbitrary. 8 Formal proofs as derivation trees At this point, we have already constructed a few formal proofs in our sequent calculus for classical logic, and it may be the proper stage to give a general definition. From now on, a formal proof is defined as a derivation tree constructed according to the rules of the sequent calculus. By derivation tree, we mean a rooted tree in which: • every leaf is labeled by an axiom rule, • every node is labeled by a rule of the sequent calculus, • every edge is labeled by a sequent. A derivation tree should satisfy the expected consistency properties relating the sequents on the edges to the rules on the nodes. In particular, the arity of a node in the derivation tree follows from the number of sequents on top of the rule: typically, a node labeled with the Left ∧ rule has arity one, whereas a node labeled with the Right ∧ rule has arity two. Note that every derivation tree has a root, which is a node labeled by a rule of the sequent calculus. As expected, the conclusion of the proof is defined as the sequent Γ ` ∆ obtained by that last rule. Philosophical interlude: the anti-realist tradition in proof theory As soon as the sequent calculus is properly understood by the novice reader, the specialist in proof theory will generally advise this reader to forget any guideline related to model theory, like truth-values or tautologies. Apparently, this dogma of proof theory follows from a naive application of Ockham’s razor: now that proofs can be produced mechanically by a symbolic device (the sequent calculus) independently of any notion of truth... why should we remember any of the “ancient” model-theoretic explanations? In fact, the philosophical position generally adopted in proof theory since Gentzen (at least) is far more radical – even if this remains usually implicit in daily mathematical work. This position may be called anti-realist to stress the antagonism with the realist position. We will only sketch the debate in a few words here. For the realist, the world is constituted of a fixed set of objects, independent of the mind and of its symbolic representations. Thus, the concept of “truth” amounts to a proper correspondence between the words and symbols emanating from the mind, and the objects and external things of the world. For the anti-realist, on the contrary, the very question “what objects is the world made of ?” requires already a theory or a description. In that case, the concept of “truth” amounts rather to some kind of ideal coherence between our various beliefs and experiences. The anti-realist position in proof theory may be summarized in four technical aphorisms: 9 • The sequent calculus generates formal proofs, and these formal proofs should be studied as autonomous entities, just like any other mathematical object. • The notion of “logical truth” in model-theory is based on the realist idea of the existence of an external world: the model. Unfortunately, this intuition of an external world is too redundant to be useful: what information is provided by the statement that “the formula A ∧ B is true if and only if the formula A is true and the formula B is true” ? • So, the “meaning” of the connectives of logic arises from their introduction rules in the sequent calculus, and not from an external and realist concept of truth-value. These introduction rules are inherently justified by the structural properties of proofs, like cut-elimination, or the subformula property. • Gödel’s completeness theorem may be re-understood in this purely prooftheoretic way: every model M plays the role of a potential refutator, simulated by some kind of infinite non recursive proof — this leading to a purely proof-theoretic exposition of the completeness theorem. This position is already apparent in Gerhard Gentzen’s writings [36]. It is nicely advocated today by Jean-Yves Girard [41, 42]. This line of thought conveys the seeds of a luminous synthesis between proof theory and model theory. There is little doubt (to the author at least) that along with game semantics and linear logic, the realizability techniques developed by Jean-Louis Krivine (see [61] in this volume) will play a key part in this highly desired unification. On the other hand, much remains to be understood on the model-theoretic and prooftheoretic sides in order to recast in proof theory the vast amount of knowledge accumulated in a century of model theory, see [80] for a nice introduction to the topic. The interested reader will find in [88] a penetrating point of view by Jean van Heijenoort on the historical origins of the dispute between model theory and proof theory. Two exemplary proofs in classical logic A famous principle in classical logic declares that the disjunction of a formula A and of its negation ¬A is necessarily true. This principle, called the Tertium Non Datur in Latin (“the third is not given”) is nicely formulated by the formula (A ⇒ B) ∨ A which states that for every formula B, either the formula A holds, or the formula A implies the formula B. This very formula is established by the following 10 derivation tree in our sequent calculus for classical logic: Axiom A ` A Right Weakening A ` B, A Right ⇒ ` A ⇒ B, A Right ∨ ` (A ⇒ B) ∨ A (10) The proof works for every formula B, and may be specialized to the formula False expressing falsity. From this follows a proof of the formula: ¬A ∨ A where we identify the negation ¬A of the formula A to the formula A ⇒ F which states that the formula A implies falsity. We have mentioned above that Peirce’s formula: ((A ⇒ B) ⇒ A) ⇒ A may be established in classical logic. Indeed, we write below the shortest possible proof of the formula in our sequent calculus: Axiom A ` A Right Weakening A ` B, A Right ⇒ ` A ⇒ B, A (A ⇒ B) ⇒ A ` A, A (A ⇒ B) ⇒ A ` A ` ((A ⇒ B) ⇒ A) ⇒ A Axiom Left ⇒ Right Contraction A`A Right ⇒ Note that the main part of the proof of the Tertium Non Datur appears at the very top left of that proof. In fact, it is possible to prove that the two formulas are equivalent in intuitionistic logic: in particular, each of the two formulas may be taken as an additional axiom of intuitionistic logic, in order to define classical logic. Cut-elimination At this point, all the rules of our sequent calculus for classical logic have been introduced... except perhaps the most fundamental one: the cut rule, formulated as follows: Γ1 ` A, ∆1 A, Γ2 ` ∆2 Cut Γ1 , Γ2 ` ∆1 , ∆2 The cut rule reflects the most famous deduction principle of logic: Modus Ponens (“affirmative mode” in Latin), a principle which states that the formula B may be deduced from the two formulas A and A ⇒ B taken together. Indeed, suppose given two proofs π1 and π2 of the sequents ` A and A ` B: 11 π1 .. . π2 .. . `A A`B The cut rule applied to the two derivation trees leads to a proof π3 .. . `B = π1 .. . π2 .. . `A A`B `B (11) Cut of the sequent ` B. This is Modus Ponens translated in the sequent calculus. Despite the fact that it reflects Modus Ponens, a most fundamental principle of logic, Gentzen made the extraordinary observation that the cut rule may be forgotten from the point of view of provability... or what formulas can be proved in logic! In technical terms, one says that the cut rule is admissible in classical logic, as well as in intuitionistic logic. This means that every sequent Γ ` ∆ which may be proved by a proof π may be also proved by a proof π0 in which the cut rule does not appear at any stage of the proof. Such a proof is called a cut-free proof. Gerhard Gentzen called this property the cut-elimination theorem, or Hauptsatz in German. Applied to our previous example (11) the property states that there exists an alternative cut-free proof π4 .. . `B (12) of the sequent ` B. The difficulty, of course, is to deduce the cut-free proof π4 from the original proof π3 . The subformula property and the consistency of logic The cut-elimination theorem is the backbone of modern proof theory. Its central position is nicely illustrated by the fact that three fundamental properties of formal logic follow quite directly from this single theorem: • the subformula property, • the consistency of the logic, • the completeness theorem. Let us discuss the subformula property first. A formula D is called a subformula of a formula AcB in three cases only: • when the formula D is equal to the formula AcB, • when the formula D is subformula of the formula A, 12 • when the formula D is subformula of the formula B, where AcB means either A ⇒ B, or A ∧ B or A ∨ B. Besides, the constant formula False (resp. True) is the only subformula of the formula False (resp. True). The subformula property states that every provable formula A may be established by a proof π in which only subformulas of the formula A appear. This unexpected property follows immediately from the cut-elimination theorem. Suppose indeed that a formula A is provable in the logic. This means that there exists a proof of the sequent ` A. By cut-elimination, there exists a cut-free proof π of the sequent ` A. A simple inspection of the rules of our sequent calculus shows that this cut-free proof π contains only subformulas of the original formula A. Similarly, the consistency of the logic follows easily from the subformula property. Suppose indeed that the constant formula False is provable in the logic. By the subformula property, there exists a proof π of the sequent ` False which contains only subformulas of the formula False. Since the formula False is the only subformula of itself, every sequent appearing in the proof π should be a sequence of False: False, . . . , False ` False, . . . , False. Except for the introduction rules for False, every logical rule appearing in the proof π introduces a connective of logic ⇒ or ∧ or ∨, or the constant True. This establishes that the proof π is made exclusively of introduction rules for False, of structural rules, and of axiom rules. An inspection of these rules demonstrates that every sequent in the proof π is necessarily empty on the left-hand side, and thus of the form: ` False, . . . , False (13) for the simple reason that any such sequent is necessarily deduced from a sequent of the same shape. Now, the only leaves of a derivation tree are the Axiom rule, the right introduction rule for True and the left introduction rule for False. None of them introduces a sequent of the shape (13). This demonstrates that there exists no proof π of the formula False in our logic. This is precisely the statement of consistency. The proof is easy, but somewhat tedious. However, a purely conceptual proof is also possible. Again, suppose that there exists a derivation tree π .. . ` False leading to the sequent ` False in the logic. We have seen earlier that the sequent False ` has a proof consisting of a single introduction rule. One produces a proof of the empty sequent ` by cutting the two proofs together: 13 π .. . ` False False ` ` Left False Cut The cut-elimination theorem implies that the empty sequent ` has a cut-free proof. This statement is clearly impossible, because every rule of logic Γ1 ` ∆1 Γ2 ` ∆2 different from the cut-rule induces a non-empty sequent Γ2 ` ∆2 . This provides another more conceptual argument for establishing consistency of the logic. The completeness theorem is slightly more difficult to deduce from the cutelimination theorem. The interested reader will find a detailed proof of the theorem in the first chapter of the Handbook of Proof Theory exposed by Samuel Buss [25]. The cut-elimination procedure In order to establish the cut-elimination theorem, Gentzen introduced a series of symbolic transformations on proofs. Each of these transformations converts a proof π containing a cut rule into a proof π0 with the same conclusion. In practice, the resulting proof π0 will involve several cut rules induced by the original cut rule ; but the complexity of these cut rules will be strictly less than the complexity of the cut rule in the initial proof π. Consequently, the rewriting rules may be iterated until one reaches a cut-free proof. Termination of the procedure (in the case of arithmetic) is far from obvious: it is precisely to establish the termination property that Gentzen uses a transfinite induction, up to Cantor’s ordinal ε0 . This provides an effective cut-elimination procedure which transforms any proof of the sequent Γ ` ∆ into a cut-free proof of the same sequent. The cut-elimination theorem follows immediately. This procedural aspect of cut-elimination is the starting point of denotational semantics, whose task is precisely to provide mathematical invariants of proofs under cut-elimination. This is a difficult exercise, because the cut-elimination procedure performs a number of somewhat intricate symbolic transformations on proofs. We will see in Chapter 3 that describing in full details the cutelimination procedure of a reasonable proof system like linear logic requires already a dozen meticulous pages. Intuitionistic logic Intuitionistic logic has been introduced and developed by Luitzen Egbertus Jan Brouwer at the beginning of the 20th century, in order to provide safer foundations for mathematics. Brouwer rejected the idea of formalizing mathematics, but his own student Arend Heyting committed the outrage in 1930, and produced a formal system for intuitionistic logic. The system is based on the idea that the Tertium Non Datur principle of classical logic should be rejected. 14 A surprising and remarkable observation of Gerhard Gentzen is that an equivalent formalization of intuitionistic logic is obtained by restricting the sequent calculus for classical logic to “intuitionistic” sequents: Γ`A with exactly one formula A on the right-hand side. The reader will easily check for illustration that the proof (10) of the sequent ` (A ⇒ B) ∨ A cannot be performed in the intuitionistic fragment of classical logic: one needs at some point to weaken on the right-hand side of the sequent in order to perform the proof. Linear logic Gentzen’s idea to describe intuitionistic logic by limiting classical logic to a particular class of sequents seems just too simplistic to work... but it works indeed, and deeper structural reasons must explain this unexpected success. This reflection is at the starting point of linear logic. It appears indeed that the key feature of intuitionistic sequent calculus, compared to classical sequent calculus, is that the Weakening and Contraction rules can be only applied on the left-hand side of the sequents (= the hypothesis), and not on the right-hand side (= the conclusion). Accordingly, linear logic is based on the idea that the Weakening and Contraction rules do not apply to any formula, but only to a particular class of modal formulas. So, two modalities are introduced in linear logic: the modality ! (pronounced “of course”) and the modality ? (pronounced “why not”). Then, the Weakening and Contraction rules are limited to modal formulas !A on the left-hand side of the sequent, and to modal formulas ?A on the right-hand side of the sequent. Informally speaking, the sequent A, B ` C of intuitionistic logic is then translated as the sequent ` !A, !B C of linear logic. Here, the “of course” modality on the formulas !A and !B indicates that the two hypothesis may be weakened and contracted at will. First-order logic In this short introduction to proof theory, we have chosen to limit ourselves to the propositional fragment of classical logic: no variables, no quantification. This simplifies matters, and captures the essence of Gerhard Gentzen’s ideas. 15 Nevertheless, we briefly indicate below the logical principles underlying firstorder classical logic. This provides us with the opportunity to recall the drinker formula, which offers a nice and pedagogical illustration of the sequent calculus at work. In order to define first-order logic, one needs: • an infinite set V of first-order variable symbols, ranging over x, y, z, • a set F of function symbols with a specified arity, ranging over f, g, • a set R of relation symbols with a specified arity, ranging over R, Q. The terms of the logic are constructed from the function symbols and the firstorder variables. Hence, any first-order variable x is a term, and f (t1 , ..., tk ) is a term if the function symbol f has arity k, and t1 ,...,tk are terms. In particular, any function symbol f of arity 0 is called a constant, and defines a term. The atomic formulas or the logic are defined as a relation symbol substituted by terms. Hence, R(t1 , ..., tk ) is an atomic formula if the relation symbol R has arity k, and t1 ,...,tk are terms. The formulas of first-order logic are constructed as in the propositional case, except that: • propositional variables A, B, C are replaced by atomic formulas R(t1 , ..., tk ), • every node of the formula is either a propositional connective ∧ or ∨ or ⇒ as in the propositional case, or a universal quantifier ∀x, or an existential quantifier ∃x. So, a typical first-order formula looks like: ∀y.R( f (x), y). One should be aware that this formula, in which the quantifier ∀x binds the first-order variable x, is identified to the formula: ∀z.R( f (x), z). We will not discuss here the usual distinction between a free and a bound occurrence of a variable in a first-order formula; nor describe how a free variable x of a first-order formula A(x) is substituted without capture of variable by a term t, in order to define a formula A(t). These definitions will be readily found in the reader’s favorite textbook on first-order logic. It should be enough to illustrate the definition by mentioning that the formula A(x) = ∀y.R( f (x), y) in which the term t = g(y) is substituted for the variable x defines the formula A(t) = ∀z.R( f (g(y)), z). Except for those syntactic details, the sequent calculus works just as in the propositional case. The left introduction of the universal quantifier 16 Γ, A(t) ` ∆ Left ∀ Γ, ∀x.A(x) ` ∆ and the right introduction of the existential quantifier Γ ` A(t), ∆ Γ ` ∃x.A(x), ∆ Right ∃ may be performed for any term t of the language without any restriction. On the other hand, the right introduction of the universal quantifier Γ ` A(x), ∆ Γ ` ∀x.A(x), ∆ Right ∀ and the left introduction of the existential quantifier Γ, A(x) ` ∆ Left ∃ Γ, ∃x.A(x) ` ∆ may be applied only if the first-order variable x does not appear in any formula of the contexts Γ and ∆. Note that the formula A(x) may contain other free variables than x. The drinker formula Let us illustrate these rules with the first-order formula below, called the drinker formula: ∃y. { A(y) ⇒ ∀x.A(x) }. (14) This states that for every formula A(x) with first-order variable x, there exists an element y of the ontology such that if A(y) holds, then A(x) holds for every element x of the ontology. The element y is thus the witness for the universal validity of A(x). Although this may seem counter-intuitive, the formula is perfectly valid in classical logic. The name of “drinker formula” comes from an entertaining illustration of the principle: suppose that x ranges over the customers of a pub, and that A(x) means that the customer x drinks; then, the formula (14) states that there exists a particularly sober customer y (the drinker) such that, if this particular customer y drinks, then everybody drinks. The existence of such a customer y in the pub is far from obvious, but it may be established by purely logical means in classical logic! Let us explain how. The drinker formula has been thoroughly analyzed by Jean-Louis Krivine who likes to replace it with a formula expressed only with universal quantification, and equivalent in classical logic: ∀y.{(A(y) ⇒ ∀x.A(x)) ⇒ B} ⇒ B. Here, B stands for any formula of the logic. The original formulation (14) of the drinker formula is then obtained by replacing the formula B by the formula False expressing falsity, and by applying the series of equivalences in classical logic: 17 ≡ ≡ ¬ ∀y.{¬(A(y) ⇒ ∀x.A(x))} ∃y.{¬¬(A(y) ⇒ ∀x.A(x))} ∃y.{A(y) ⇒ ∀x.A(x)} where, again, we write ¬A for the formula (A ⇒ False). The shortest proof of the drinker formula in classical logic is provided by the derivation tree below: Axiom Right Weakening A(x0 ) ` ∀x.A(x), A(x0 ) Right ⇒ ` A(x0 ) ⇒ ∀x.A(x), A(x0 ) (A(x0 ) ⇒ ∀x.A(x)) ⇒ B ` A(x0 ), B A(x0 ) ` A(x0 ) Axiom Left ⇒ Left ∀ (∗ ∗ ∗) B`B ∀y.{(A(y) ⇒ ∀x.A(x)) ⇒ B} ` A(x0 ), B Right ∀ (∗ ∗) ∀y.{(A(y) ⇒ ∀x.A(x)) ⇒ B} ` ∀x.A(x), B Left Weakening ∀y.{(A(y) ⇒ ∀x.A(x)) ⇒ B}, A(y0 ) ` ∀x.A(x), B (15) Right ⇒ ∀y.{(A(y) ⇒ ∀x.A(x)) ⇒ B} ` A(y0 ) ⇒ ∀x.A(x), B B`B ∀y.{(A(y) ⇒ ∀x.A(x)) ⇒ B}, (A(y0 ) ⇒ ∀x.A(x)) ⇒ B ` B, B ∀y.{(A(y) ⇒ ∀x.A(x)) ⇒ B}, ∀y.{(A(y) ⇒ ∀x.A(x)) ⇒ B} ` B, B ∀y.{(A(y) ⇒ ∀x.A(x)) ⇒ B} ` B, B ∀y.{(A(y) ⇒ ∀x.A(x)) ⇒ B} ` B Axiom Left ⇒ Left ∀ (∗) Contraction Contraction Right ⇒ ` ∀y.{(A(y) ⇒ ∀x.A(x)) ⇒ B} ⇒ B The logical argument is somewhat obscured by its formulation as a derivation tree in the sequent calculus. Its content becomes much clearer once the proof is interpreted using game semantics as a strategy implemented by the prover (Proponent) in order to convince his refutator (Opponent). The strategy works as follows. Proponent starts the interaction by suggesting a witness y0 to the refutator. This step is performed by the Left ∀ introduction (∗). The selected witness y0 may drink or not: nobody really cares at this stage, since the refutor reacts in any case, by providing his own witness x0 . This second step is performed by the Right ∀ introduction (∗ ∗). Obviously, Opponent selects the witness x0 in order to refute the witness y0 selected by Proponent. So, the difficulty for Proponent arises when Opponent exhibits a non-drinker x0 whereas the witness y0 selected by Proponent a drinker. In that case, the statement A(y0 ) ⇒ ∀x.A(x) does not hold, because the weaker statement A(y0 ) ⇒ A(x0 ) does not hold. Very fortunately, the proof suggests a way out to Proponent in this embarrassing situation: the winning strategy for Proponent consists in replacing his original witness y0 by the witness x0 just selected by the Opponent. This final step is performed by the Left ∀ introduction (∗ ∗ ∗) of the derivation tree. Notice that, by applying this trick, Proponent is sure to defeat his refutator, because A(x0 ) ⇒ A(x0 ). 18 This highly opportunistic strategy is not admitted in intuitionistic logic, because Proponent is not allowed to backtrack and to alter his original witness y0 once he has selected it. On the other hand, the strategy is perfectly valid in classical logic. This illustrates the general principle that it is not possible to “extract” a witness y0 from a proof π of an existential statement ∃y.C(y) established in classical logic. Indeed, the proof does not necessarily “construct” a witness y0 such that C(y0 ). Like the proof (15) of the drinker formula, it may defeat the refutator by taking advantage of pieces of information revealed during the interaction. The drinker formula has been the occasion of many debates around logic: the interested reader will find it discussed in a famous popular science book by Raymond Smullyan [83]. An historical remark on Gerhard Gentzen’s system LK The reader familiar with proof theory will notice that our presentation of classical logic departs in several ways from Gentzen’s original presentation. One main difference is that Gentzen’s original sequent calculus LK contains two right introduction rules for disjunction: Γ ` B, ∆ Right ∨2 Γ ` A ∨ B, ∆ Γ ` A, ∆ Right ∨1 Γ ` A ∨ B, ∆ whereas the sequent calculus presented here contains only one introduction rule: Γ ` A, B, ∆ Right ∨ Γ ` ∆1 , A ∨ B, ∆2 The two presentations of classical logic are very different in nature. In the terminology of linear logic, the introduction rules of the sequent calculus LK are called additive whereas the presentation chosen here is multiplicative. Despite the difference, it is possible to simulate the multiplicative rule inside the original system LK, in the following way: Γ ` ∆1 , A, B, ∆2 Right ∨1 Γ ` ∆1 , A ∨ B, B, ∆ Right ∨2 Γ ` ∆1 , A ∨ B, A ∨ B, ∆ Right Contraction Γ ` ∆1 , A ∨ B, ∆2 Conversely, the two additive introduction rules of the sequent calculus LK are simulated in our sequent calculus in the following way: Γ ` ∆1 , B, ∆2 Right Weakening Γ ` ∆1 , A, B, ∆2 Right ∨1 Γ ` ∆1 , A ∨ B, ∆2 Γ ` ∆1 , A, ∆2 Right Weakening Γ ` ∆1 , A, B, ∆2 Right ∨1 Γ ` ∆1 , A ∨ B, ∆2 Note that the Weakening and the Contraction rules play a key role in the back and forth translations between the additive and the multiplicative rules for the disjunction. This illustrates and explains why the two logical systems (additive 19 and multiplicative) are intrinsically different, although complementary, in linear logic — since the Weakening and the Contraction rules of the logic are limited to modal formulas. Notes and references We advise the interested reader to look directly at the original papers by Gentzen, collected and edited by Manfred Szabo in [36]. More recent material can be found in Jean-Yves Girard’s monographs [37, 38, 42] as well as in the Handbook of Proof Theory [25] edited by Samuel Buss. 20 2 2.1 Semantics: proof invariants and categories Proof invariants organize themselves as categories In order to better understand linear logic, we look for invariants of proofs under cut-elimination. Any such invariant is a function π 7→ [π] which associates to every proof π of linear logic a mathematical entity [π] called the denotation of the proof. Invariance under cut-elimination means that the denotation [π] coincides with the denotation [π0 ] of any proof π0 obtained by applying the cut-elimination procedure to the proof π. An analogy comes to mind with knot theory: by definition, a knot invariant is a function which associates to every knot an entity (typically, a number or a polynomial) which remains unaltered under the action of the three Reidemeister moves: We are looking for similar invariants for proofs, this time with respect to the proof transformations occurring in the course of cut-elimination. We will see that, just like in representation theory, the construction of such knot and proof invariants is achieved by constructing suitable kinds of categories and functors. Note that invariance is not enough: we are looking for modular invariants. What does that mean? Suppose given three formulas A, B, C, together with a proof π1 of the sequent A ` B and a proof π2 of the sequent B ` C. We have already described the cut-rule in classical logic and in intuitionistic logic. The same cut-rule exists in linear logic. When applied to the proofs π1 and π2 , it leads to the following proof π of the sequent A ` C: π2 .. . π1 .. . A`B B`C Cut A`C 21 Now, we declare an invariant modular when the denotation of the proof π may be deduced directly from the denotations [π1 ] and [π2 ] of the proofs π1 and π2 . In this case, there exists a binary operation ◦ on denotations satisfying [π] = [π2 ] ◦ [π1 ]. The very design of linear logic (and of its cut-elimination procedure) ensures that this composition law is associative and has a left and a right identity. What do we mean? This point deserves to be clarified. First, consider associativity. Suppose given a formula D and a proof π3 of the sequent C ` D. By modularity, the two proofs π2 .. . π1 .. . π3 .. . A`B B`C Cut A`C A`D C`D Cut and π1 .. . A`B π2 .. . π3 .. . B`C C`D Cut B`D Cut A`D have respective denotations [π3 ] ◦ ([π2 ] ◦ [π1 ]) ([π3 ] ◦ [π2 ]) ◦ [π1 ]. and The two proofs are equivalent from the point of view of cut-elimination. Indeed, depending on the situation, the procedure may transform the first proof into the second proof, or conversely, the second proof into the first proof. This illustrates what logicians call a commutative conversion: in that case a conversion permuting the order of the two cut rules. By invariance, the denotations of the two proofs coincide. This establishes associativity of composition: [π3 ] ◦ ([π2 ] ◦ [π1 ]) = ([π3 ] ◦ [π2 ]) ◦ [π1 ]. What about the left and right identities? There is an obvious candidate for the identity on the formula A, which is the denotation idA associated to the proof A`A Axiom Given a proof π of the sequent A ` B, the cut-elimination procedure transforms the two proofs A`A Axiom A`B 22 π .. . A`B Cut and π .. . Axiom A`B B`B Cut A`B into the proof π .. . A`B Modularity and invariance imply together that = [π] ◦ idA idB ◦ [π] = [π]. From this, we deduce that every modular invariant of proofs gives rise to a category. In this category, every formula A defines an object [A], which may rightly be called the denotation of the formula; and every proof π .. . A`B denotes a morphism [π] : [A] −→ [B] which, by definition, is invariant under cut-elimination of the proof π. 2.2 A tensor product in linear logic The usual conjunction ∧ of classical and intuitionistic logic is replaced in linear logic by a conjunction akin to the tensor product of linear algebra, and thus noted ⊗. We are thus tempted to look for denotations satisfying not just invariance and modularity, but also tensoriality. By tensoriality, we mean two related things. First, the denotation [A ⊗ B] of the formula A ⊗ B should follow directly from the denotations of the formula A and B, by applying a binary operation (also noted ⊗) on the denotations of formulas: [A ⊗ B] = [A] ⊗ [B]. Second, given two proofs π1 .. . π2 .. . B1 ` B2 A1 ` A2 the denotation of the proof π 23 π1 .. . π2 .. . A1 ` A2 B1 ` B2 Right ⊗ A1 , B1 ` A2 ⊗ B2 Left ⊗ A1 ⊗ B1 ` A2 ⊗ B2 should follow from the denotations of the proofs π1 and π2 by applying a binary operation (noted ⊗ again) on the denotations of proofs: [π] = [π1 ] ⊗ [π2 ]. These two requirements imply together that the linear conjunction ⊗ of linear logic defines a bifunctor on the category of denotations. We check this claim as an exercise. Consider four proofs π1 .. . A1 ` A2 π3 .. . π2 .. . B1 ` B2 A2 ` A3 π4 .. . B2 ` B3 f2 = [π2 ], f3 = [π3 ], f4 = [π4 ]. with respective denotations f1 = [π1 ], The cut-elimination procedure transforms the proof π3 π4 π2 .. .. .. . . . A ` A B ` B3 2 3 2 A ` A2 B1 ` B2 Right ⊗ Right ⊗ 1 A2 , B2 ` A3 ⊗ B3 A1 , B1 ` A2 ⊗ B2 Left ⊗ Left ⊗ A1 ⊗ B1 ` A2 ⊗ B2 A2 ⊗ B2 ` A3 ⊗ B3 Cut A1 ⊗ B1 ` A3 ⊗ B3 π1 .. . with denotation ( f3 ⊗ f4 ) ◦ ( f1 ⊗ f2 ) into the proof π1 .. . π3 .. . π2 π4 .. .. . . A1 ` A2 A2 ` A3 B1 ` B2 B2 ` B3 Cut Cut A1 ` A3 B1 ` B3 Right ⊗ A1 , B1 ` A3 ⊗ B3 Left ⊗ A1 ⊗ B1 ` A3 ⊗ B3 with denotation ( f3 ◦ f1 ) ⊗ ( f4 ◦ f2 ). By invariance, the equality ( f3 ⊗ f4 ) ◦ ( f1 ⊗ f2 ) = 24 ( f3 ◦ f1 ) ⊗ ( f4 ◦ f2 ) holds in the underlying category of denotations. This ensures that the first equation of bifunctoriality is satisfied. One deduces in a similar way the other equation id[A]⊗[B] = id[A] ⊗ id[B] by noting that the cut-elimination procedure transforms the proof A⊗B`A⊗B into the proof Axiom Axiom Axiom A`A B ` B Right ⊗ A, B ` A ⊗ B Left ⊗ A⊗B`A⊗B by the η-expansion rule described in Chapter 3, Section 3.5. 2.3 Proof invariants organize themselves as monoidal categories (1) We have just explained the reasons why the operation ⊗ defines a bifunctor on the category of denotations. We can go further, and show that this bifunctor defines a monoidal category — not exactly monoidal in fact, but nearly so. The reader will find the notion of monoidal category recalled in Chapter 4. A preliminary step in order to define a monoidal category is to choose a unit object e in the category. The choice is almost immediate in the case of linear logic. In classical and intuitionistic logic, the truth value T standing for “true” behaves as a kind of unit for conjunction, since the two sequents A∧T `A and A`A∧T are provable for every formula A of the logic. In linear logic, the truth value T is replaced by a constant 1 which plays exactly the same role for the tensor product. In particular, the two sequents A⊗1`A and A`A⊗1 are provable for every formula A of linear logic. The unit of the category is thus defined as the denotation e = [1] of the formula 1. Now, we construct three isomorphisms αA,B,C : (A ⊗ B) ⊗ C −→ A ⊗ (B ⊗ C), λA : e ⊗ A −→ A, ρA : A ⊗ e −→ A indexed on the objects A, B, C of the category, which satisfy all the coherence and naturality conditions of a monoidal category. The associativity morphism α 25 is defined as the denotation of the proof πA,B,C below: Axiom Axiom B`B C ` C Right ⊗ Axiom A`A B, C ` B ⊗ C Right ⊗ A, B, C ` A ⊗ (B ⊗ C) Left ⊗ A ⊗ B, C ` A ⊗ (B ⊗ C) Left ⊗ (A ⊗ B) ⊗ C ` A ⊗ (B ⊗ C) The two morphisms λ and ρ are defined as the respective denotations of the two proofs below: Axiom A`A Left 1 1, A ` A Left ⊗ 1⊗A`A and Axiom A`A Left 1 A, 1 ` A Left ⊗ A⊗1`A The naturality and coherence conditions on α, λ and ρ are not particularly difficult to establish. For instance, naturality of α means that for every three proofs π1 .. . A1 ` A2 with respective denotations: f1 = [π1 ], π3 .. . π2 .. . B1 ` B2 C1 ` C2 f2 = [π2 ], f3 = [π3 ]. the following categorical diagram commutes: (A1 ⊗ B1 ) ⊗ C1 α / A1 ⊗ (B1 ⊗ C1 ) α  / A2 ⊗ (B2 ⊗ C2 ) ( f1 ⊗ f2 )⊗ f3  (A2 ⊗ B2 ) ⊗ C2 f1 ⊗( f2 ⊗ f3 ) (16) where, for this time, and for clarity’s sake only, we do not distinguish between the formula, say (A1 ⊗ B1 ) ⊗ C1 , and its denotation [(A1 ⊗ B1 ) ⊗ C1 ]. We would like to prove that this diagram commutes. Consider the two proofs: π1 .. . π2 .. . π3 B2 ` B2 C2 ` C2 A1 ` A2 B1 ` B2 .. . A2 ` A2 B2 , C2 ` B2 ⊗ C2 A1 , B1 ` A2 ⊗ B2 A2 , B2 , C2 ` A2 ⊗ (B2 ⊗ C2 ) A1 ⊗ B1 ` A2 ⊗ B2 C1 ` C2 A1 ⊗ B1 , C1 ` (A2 ⊗ B2 ) ⊗ C2 A2 ⊗ B2 , C2 ` A2 ⊗ (B2 ⊗ C2 ) (A1 ⊗ B1 ) ⊗ C1 ` (A2 ⊗ B2 ) ⊗ C2 (A2 ⊗ B2 ) ⊗ C2 ` A2 ⊗ (B2 ⊗ C2 ) Cut (A1 ⊗ B1 ) ⊗ C1 ` A2 ⊗ (B2 ⊗ C2 ) 26 π3 π2 .. .. . . π B1 ` B1 C1 ` C1 B1 ` B2 C1 ` C2 ..1 . A1 ` A1 B1 , C1 ` B1 ⊗ C1 B1 , C1 ` B2 ⊗ C2 A1 , B1 , C1 ` A1 ⊗ (B1 ⊗ C1 ) A1 ` A2 B1 ⊗ C1 ` B2 ⊗ C2 A1 ⊗ B1 , C1 ` A1 ⊗ (B1 ⊗ C1 ) A1 , B1 ⊗ C1 ` A2 ⊗ (B2 ⊗ C2 ) (A1 ⊗ B1 ) ⊗ C1 ` A1 ⊗ (B1 ⊗ C1 ) A1 ⊗ (B1 ⊗ C1 ) ` A2 ⊗ (B2 ⊗ C2 ) Cut (A1 ⊗ B1 ) ⊗ C1 ` A2 ⊗ (B2 ⊗ C2 ) By modularity, the two proofs have α ◦ (( f1 ⊗ f2 ) ⊗ f3 ) ( f1 ⊗ ( f2 ⊗ f3 )) ◦ α. and as respective denotations. Now, the two proofs reduce by cut-elimination to the same proof: π1 .. . π2 .. . A1 ` A2 B1 ` B2 Right ⊗ A1 , B1 ` A2 ⊗ B2 π3 .. . C1 ` C2 Right ⊗ A1 , B1 , C1 ` (A2 ⊗ B2 ) ⊗ C2 Left ⊗ A1 , B1 ⊗ C1 ` (A2 ⊗ B2 ) ⊗ C2 Left ⊗ A1 ⊗ (B1 ⊗ C1 ) ` (A2 ⊗ B2 ) ⊗ C2 which is simply the original proof of associativity in which every axiom step A`A B`B C`C has been replaced by the respective proof π1 .. . A1 ` A2 π2 .. . B1 ` B2 π3 .. . C1 ` C2 The very fact that the two proofs reduce to the same proof, and that denotation is invariant under cut-elimination, ensures that the equality α ◦ (( f1 ⊗ f2 ) ⊗ f3 ) = ( f1 ⊗ ( f2 ⊗ f3 )) ◦ α. holds. We conclude that the categorical diagram (16) commutes, and thus, that the family α of associativity morphisms is natural. The other naturality and coherence conditions required of a monoidal category are established in just the same way. 27 2.4 Proof invariants organize themselves as monoidal categories (2) In order to conclude that the tensor product ⊗ defines a monoidal category of denotations, there only remains to check that the three morphisms α, λ and ρ are isomorphisms. Interestingly, this is not necessarily the case! The expected inverse of the three morphisms α, λ and ρ are the denotations α, λ and ρ of the three proofs below: Axiom Axiom A`A B ` B Right ⊗ A, B ` A ⊗ B C`C Axiom Right ⊗ A, B, C ` (A ⊗ B) ⊗ C Left ⊗ A, B ⊗ C ` (A ⊗ B) ⊗ C Left ⊗ A ⊗ (B ⊗ C) ` (A ⊗ B) ⊗ C and Right 1 Axiom `1 A ` A Right ⊗ A`1⊗A Axiom Right 1 A`A ` 1 Right ⊗ A`A⊗1 and It is not difficult to deduce the following two equalities from invariance and modularity: ρ ◦ ρ = idA . λ ◦ λ = idA , On the other hand, and quite surprisingly, none of the four expected equalities λ ◦ λ = ide⊗A , ρ ◦ ρ = idA⊗e , α ◦ α = id(A⊗B)⊗C , α ◦ α = idA⊗(B⊗C) , is necessarily satisfied by the category of denotations. Typically, modularity ensures that the morphism ρ ◦ ρ denotes the proof Axiom A`A Right 1 Axiom Left 1 A`A ` 1 Right ⊗ A, 1 ` A Left ⊗ A⊗1`A A`A⊗1 Cut A⊗1`A⊗1 which is transformed by cut-elimination into the proof Axiom A`A Left 1 A, 1 ` A Left ⊗ A⊗1`A A⊗1`A⊗1 28 `1 Right 1 Right ⊗ (17) Strictly speaking, invariance, modularity and tensoriality do not force that the proof (17) has the same denotation as the η-expansion of the identity: Axiom Axiom A`A 1 ` 1 Right ⊗ (18) A, 1 ` A ⊗ 1 Left ⊗ A⊗1`A⊗1 at least if we are careful to define the cut-elimination procedure of linear logic in the slightly unconventional but extremely careful way given in Chapter 3. 2.5 Proof invariants organize themselves as monoidal categories (3) However, we are not very far at this point from obtaining a monoidal category of denotations. To that purpose, it is sufficient to require a series of basic equalities in addition to invariance, modularity and tensoriality. For every two proofs π1 and π2 , we require first that the proof π1 .. . π2 .. . Γ, C, D ` A Left ⊗ ∆`B Γ, C ⊗ D ` A Right ⊗ Γ, C ⊗ D, ∆ ` A ⊗ B (19) has the same denotation as the proof π1 .. . π2 .. . Γ, C, D ` A ∆`B Right ⊗ Γ, C, D, ∆ ` A ⊗ B Left ⊗ Γ, C ⊗ D, ∆ ` A ⊗ B (20) obtained by “permuting” the left and right introduction of the tensor product. We require symmetrically that the proof π1 .. . π2 .. . ∆, C, D ` B Left ⊗ Γ`A ∆, C ⊗ D ` B Right ⊗ Γ, ∆, C ⊗ D ` A ⊗ B (21) has the same denotation as the proof π1 .. . π2 .. . ∆, C, D ` B Right ⊗ Γ`A ∆, C ⊗ D ` B Left ⊗ Γ, ∆, C ⊗ D ` A ⊗ B 29 (22) obtained by “permuting” the left and right introduction of the tensor product. We also require that the two proofs π1 .. . π2 .. . Γ`A Left 1 Γ, 1 ` A ∆`B Right ⊗ Γ, 1, ∆ ` A ⊗ B and (23) π2 .. . π1 .. . ∆`B Left 1 1, ∆ ` B Γ`A Right ⊗ Γ, 1, ∆ ` A ⊗ B (24) have the same denotation as the proof π1 .. . π2 .. . Γ`A ∆ ` B Right ⊗ Γ, ∆ ` A ⊗ B Left 1 Γ, 1, ∆ ` A ⊗ B (25) obtained by “relocating” the left introduction of the unit 1 from the sequent Γ ` A or the sequent ∆ ` B to the sequent Γ, ∆ ` A ⊗ B. Once these four additional equalities are satisfied, the original hypothesis of invariance, modularity and tensoriality of denotations implies the desired equalities: λ ◦ λ = ide⊗A , ρ ◦ ρ = idA⊗e , α ◦ α = id(A⊗B)⊗C , α ◦ α = idA⊗(B⊗C) . Hence, the three morphisms α, λ and ρ are isomorphisms in the category of denotations, with respective inverse α, λ and ρ. We conclude in that case that the category of denotations is monoidal. Remark. The discussion above is mainly intended to the practiced reader in proof theory. The cut-elimination procedure described in Chapter 3 is designed extremely carefully, in order to avoid a few typically unnecessary proof transformations. Once this iron discipline is adopted for cut-elimination, the equalities between proofs mentioned above like (19)=(20) or (21)=(22) are not necessarily satisfied: consequently, the category of denotations is not necessarily monoidal. The point is far from anecdotic. It is related to the interpretation of proofs as concurrent strategies playing on asynchronous games, introduced in joint work with Samuel Mimram [74] – an interactive interpretation of proofs which does not enforce these equalities. It is also related to proof-nets and the status of 30 units in free ∗-autonomous categories – as observed independently by Dominic Hughes in recent work [48]. On the other hand, one should stress that the cut-elimination procedures defined in the literature are generally more permissive than ours, in the sense that more proof transformations are accepted than it is strictly necessary for cut-elimination. We will see in Chapter 3 (more precisely in Section 3.12) that when such a permissive policy is adopted, the three principles of invariance, modularity and tensoriality imply the equalities just mentioned: hence, the category of denotations is necessarily monoidal in that case. 2.6 Conversely, what is a categorical model of linear logic? We have recognized that every (invariant, modular, tensorial) denotation defines a monoidal category of denotations, at least when the cut-elimination procedure is sufficiently permissive. There remains to investigate the converse question: what axioms should a given monoidal category C satisfy in order to define a modular and tensorial invariant of proofs? The general principle of the interpretation is that every sequent A1 , . . . , Am ` B of linear logic will be interpreted as a morphism [A1 ] ⊗ · · · ⊗ [Am ] −→ [B] in the category C, where we write [A] for the object which denotes the formula A in the category. This object [A] is computed by induction on the size of the formula A in the expected way. Typically, [A ⊗ B] = [A] ⊗ [B] This explains why the category C should admit, at least, a tensor product. It is then customary to write [Γ] = [A1 ] ⊗ · · · ⊗ [Am ] for the denotation of the context Γ = A1 , . . . , Am as an object of the category C. The notation enables to restate the principle of the interpretation in a nice and concise way: every proof of the sequent Γ ` B will be interpreted as a morphism [Γ] −→ [B] 31 in the category C. The interpretation of a proof π is defined by induction on the “depth” of its derivation tree. In the same typical way, the axiom rule A`A Axiom is interpreted as the identity morphism on the interpretation of the formula A. id[A] : [A] −→ [A]. Also typically, given two proofs π1 .. . π2 .. . Γ`A ∆`B interpreted as morphisms f : [Γ] −→ [A] g : [∆] −→ [B] in the category C, the proof π1 .. . π2 .. . Γ`A ∆ ` B Right ⊗ Γ, ∆ ` A ⊗ B is interpreted as the morphism f ⊗g [Γ] ⊗ [∆] / [A] ⊗ [B] in the monoidal category C. Beyond these basic principles, the structures and properties required of a category C in order to provide an invariant of proofs depend on the fragment (or variant) of linear logic one has in mind: commutative or non-commutative, classical or intuitionistic, additive or non-additive, etc. In each case, we sketch below what kind of axioms should a monoidal category C satisfy in order to define an invariant of proofs. Commutative vs. non-commutative logic Linear logic is generally understood as a commutative logic, this meaning that there exists a canonical proof of the sequent A ⊗ B ` B ⊗ A for every formula A and B. The proof is constructed as follows. Axiom A ` A Right ⊗ B, A ` B ⊗ A Exchange A, B ` B ⊗ A Left ⊗ A⊗B`B⊗A B`B Axiom 32 For this reason, usual (commutative) linear logic is interpreted in monoidal categories equipped with a notion of symmetry – and thus called symmetric monoidal categories; see Section 4.4 in Chapter 4 for a definition. On the other hand, several non-commutative variants of linear logic have been considered in the literature, in which the exchange rule: Γ, A, B, ∆ ` C Exchange Γ, B, A, ∆ ` C has been removed, or replaced by a restricted version. These non-commutative variants of linear logic are interpreted in monoidal categories, possibly equipped with a suitable notion of permutation, like a braiding; see Section 4.3 in Chapter 4 for a definition. Classical linear logic and duality In his original article, Jean-Yves Girard introduced a classical linear logic, in which sequents are one-sided: ` A1 , · · · , An . The main feature of the logic is a duality principle, based on an involutive negation: • every formula A has a negation A⊥ , • the negation of the negation A⊥⊥ of a formula A is the formula A itself. From this, a new connective M can be defined by duality: (A M B) = (B⊥ ⊗ A⊥ )⊥ . This leads to an alternative presentation of linear logic, based this time on two-sided sequents: A1 , · · · , Am ` B1 , · · · , Bn . (26) We have seen in Chapter 1 that in classical logic, any such two-sided sequent stands for the formula A1 ∧ · · · ∧ Am ⇒ B1 ∨ · · · ∨ Bn . Similarly, it stands in linear logic for the formula A1 ⊗ · · · ⊗ Am ( B1 M · · · M Bn where ( is implication in linear logic. The notion of linearly distributive category introduced by Robin Cockett and Robert Seely, and recalled in Chapter 4 of this survey, is a category equipped with two monoidal structures ⊗ and • whose task is precisely to interpret such a two-sided sequent (26) as a morphism [A1 ] ⊗ . . . ⊗ [Am ] −→ [B1 ] • . . . • [Bn ] in the category. 33 Intuitionistic linear logic and linear implication ( The intuitionistic fragment of linear logic was later extracted from classical linear logic by restricting the two-sided sequents (26) to “intuitionistic” sequents A1 , · · · , Am ` B in which several formulas may appear on the left-hand side of the sequent, but only one formula appears on the right-hand side. We have seen in the introduction (Chapter 1) that Heyting applied the same trick to classical logic in order to formalize intuitionistic logic. This is the reason for calling “intuitionistic” this fragment of linear logic. Duality disappears in the typical accounts of intuitionistic linear logic: the original connectives of linear logic are limited to the tensor product ⊗, the unit 1, and the linear implication (. The right introduction of linear implication is performed by the rule: A, Γ ` B Right ( Γ`A(B which may be interpreted in a monoidal closed category; see Chapter 4 of this survey for a definition. The additive conjunction & of linear logic One important discovery of linear logic is the existence of two different conjunctions in logic: • a “multiplicative” conjunction called “tensor” and noted ⊗ because it behaves like a tensor product in linear algebra, • another “additive” conjunction called “with” and noted & which behaves like a cartesian product in linear algebra. In intuitionistic linear logic, the right introduction of the connective & is performed by the rule: Γ`A Γ`B (27) Γ ` A&B The left introduction of the connective & is performed by two different rules: Γ, A, ∆ ` C Γ, A&B, ∆ ` C Γ, B, ∆ ` C Γ, A&B, ∆ ` C (28) The additive conjunction & is generally interpreted as a cartesian product in a monoidal category C. Suppose indeed that Γ = X1 , ..., Xm is a context, and that πA and πB are two proofs πA .. . πB .. . Γ`B Γ`A 34 of the sequents on top of the right introduction rule (27). Suppose moreover that the proofs πA and πB are interpreted by the morphisms: f : [Γ] −→ [A] g : [Γ] −→ [B] in the monoidal category C. In order to interpret the proof πA .. . πB .. . Γ`A Γ ` B Right & Γ ` A&B (29) let us suppose from now on that every pair of objects A and B in the category C has a cartesian product noted A&B. Then, by definition of a cartesian product, the pair of morphisms f and g gives rise to a unique morphism h f, gi : [Γ] −→ [A]&[B] making the diagram f [Γ] & : [A] u π1 uu u uu u u / [A]&[B] II II II π2 II $ 8 [B] h f,gi g commute in the category C. In the diagram, the two morphisms π1 and π2 denote the first and second projection of the cartesian product. Now, we define the interpretation of the formula A&B as expected: [A&B] = [A]&[B] and interpret the proof (29) as the morphism h f, gi. The two left introduction rules (28) are interpreted by pre-composing with the first or second projection of the cartesian product [A]&[B]. For illustration, consider a proof π .. . Γ, B, ∆ ` C interpreted as the morphism f : [Γ] ⊗ [A] ⊗ [∆] −→ [C] 35 in the category C. Then, the proof π .. . Γ, B, ∆ ` C Left &1 Γ, A&B, ∆ ` C is interpreted as the morphism [Γ] ⊗ [A&B] ⊗ [∆] [Γ]⊗π1 ⊗[∆] / [Γ] ⊗ [A] ⊗ [∆] f / [C]. Exponential modality The main difficulty of the field is to understand the categorical properties of the exponential modality ! of linear logic. This question has been much debated in the past, sometimes with extreme vigor. It seems however that we have reached a state of agreement, or at least relative equilibrium, in the last few years. People have realized indeed that all the axiomatizations appearing in the literature converge to a unique notion: a well-behaved (that is: symmetric monoidal) adjunction L Mf ⊥ & L M between: • a symmetric monoidal closed category L, • a cartesian category M. By cartesian category, we mean a category with finite products: the category has a terminal object, and every pair of objects A and B has a cartesian product. An adjunction L a M satisfying these properties is called a linear-non-linear adjunction; see Definition 21 at the beginning of Chapter 7. Every such adjunction provides a categorical model of intuitionistic linear logic, which becomes a model of classical linear logic when the category L is not only symmetric monoidal closed, but also ∗-autonomous. The exponential modality ! is then interpreted as the comonad ! = L◦M induced on the category L by the linear-non-linear adjunction. We will come back to this point in Chapter 7 of the survey, where we review four alternative definitions of a categorical model of linear logic, and extract in each case a particular linear-non-linear adjunction. 36 2.7 Proof invariants and free categories Proof theory is in many respects similar to knot theory: the mathematical study of a purely combinatorial structure (proofs instead of knots) regulated by symbolic transformations (cut-elimination instead of topological deformation). Recent advances in proof theory establish that this analogy is not only superficial: in fact, it appears that categorical semantics plays the same rôle for proofs as representation theory for knots. Think of knot theory for a minute. A general recipe for computing knot invariants is to construct a monoidal category C equipped with a braiding and a duality. It appears indeed that every object in a category of this kind provides an invariant of knots under topological deformation, formulated as Reidemeister moves. In order to establish this fact, one constructs a category T with natural numbers as objects, and knots (or rather tangles) as morphisms – see the nice monographs by Christian Kassel [59] and Ross Street [86] for additional information on the topic. The category T is monoidal with the tensor product of two objects m and n defined as their arithmetic sum: m⊗n := m+n and the tensor product of two tangles f1 : m1 −→ n1 and f2 : m2 −→ n2 defined as the tangle f1 ⊗ f2 = m1 +n1 −→ m2 +n2 obtained by drawing the two tangles f1 and f2 side by side. One shows that the resulting category T is presented (as a monoidal category) by a finite number of generators and relations, corresponding in fact to the notion of braiding and duality. This establishes that: • the monoidal category T is equipped with a braiding and a duality, • the category T is the free such category, in the sense that for every object X in a monoidal category C with braiding and duality, there exists a unique structure preserving functor F from the category T of tangles to the category C, such that F(1) = X. The notions of braiding and of duality are recalled in Chapter 4. By structure preserving functor, we mean that F transports the monoidal structure, the braiding and the duality of the category of tangles to the category C. Exactly the same categorical recipe is followed in proof theory. Typically, one constructs a free symmetric monoidal closed category free-smcc(X) over a category X in the following way. Its objects are the formulas constructed using the binary connectives ⊗ and (, the logical unit 1, and the objects X, Y of the original category X, understood here as additional atomic formulas. The morphisms A −→ B of the category are the proofs of the sequent A ` B in intuitionistic linear logic, considered modulo cut-elimination. In order to deal with the morphisms of C, the original sequent calculus is extended by a family of axioms X`Y on atomic formulas, one such axiom for each morphism f : X −→ Y 37 in the category X. The cut-elimination procedure is extended accordingly by the composition law of the category X, which expresses how to handle these additional axioms. Because the logic is a fragment of intuitionistic logic, the morphisms of the category free-smcc(X) may be alternatively seen as derivation trees modulo cut-elimination, or as (in that case, linear) λ-terms modulo βη-conversion. This construction is the straightforward adaptation of the construction of the free cartesian closed category over a category X, given by Joachim Lambek and Phil Scott [65]. Then, in the same way as in knot theory, a proof invariant follows from a structure preserving functor F from the category free-smcc(X) to a symmetric monoidal closed category C. By structure preserving, we mean in that case a strong and symmetric monoidal functor (F, m) satisfying moreover that the canonical morphism F(A ( B) −→ F(A) ( F(B) deduced from the morphism F(A) ⊗ F(A ( B) mA,A(B / F(A ⊗ A ( B) F(evalA,B ) / F(B) is an isomorphism, for every object A and B of the source category. The definition of monoidal functor and of its variants is recalled in Chapter 5. Although the study of free categories is a fundamental aspect of proof theory, we will not develop the topic further in this survey, for lack of space. Let us simply mention that the analogy between proof theory and knot theory leads to promising and largely unexplored territories. The free symmetric monoidal closed category free-smcc(X) is constructed by purely symbolic means. This conveys the false impression that proof theory is inherently syntactical. However, this somewhat pessimistic vision of logic is dismissed by shifting to alternative categorical accounts of proofs. Typically, define a dialogue category as a symmetric monoidal category equipped with a negation A 7→ ¬A (A, B) 7→ A ( B. instead of a linear implication The formal definition of dialogue category appears in Section 4.14 at the end of Chapter 4. It appears then that the free dialogue category over a category X is very similar in style to the category T of tangles considered in knot theory. Its objects are dialogue games and its morphisms are innocent strategies, in the sense defined by Martin Hyland and Luke Ong in their seminal article on game semantics [49]. The key point is that these strategies are seen as topological entities, given by string diagrams, in the same way as tangles in knot theory. The interested reader will find in [69, 44] alternative accounts on innocence. At this point of analysis, game semantics is naturally seen as a topological description of proofs, similar to knots. Once this point understood, the two 38 fields are in fact so homogenous in style that it becomes possible to cross-breed them, and for instance to consider braided notions of proofs and strategies, etc. This leads us outside the scope of this survey, and we stop here... although we briefly come back to this discussion in the conclusion (Chapter 9). 2.8 Notes and references Several variants of non-commutative linear logic have been introduced in the literature, starting with the cyclic linear logic formulated by Jean-Yves Girard, and described by David Yetter in [90]. Interestingly, Joachim Lambek started the idea of using non commutative and linear fragments of logic as early as 1958 in order to parse sentences in English and other vernacular languages, see [64]. One motivation for cyclic linear logic is topological: cyclic linear logic generates exactly the planar proofs of linear logic. By planar proof, one means a proof whose proof-net is planar, see [40]. Cyclic linear logic was later extended in several ways: to a non-commutative logic by Paul Ruet [1] to a planar logic by the author [71] and more recently to a permutative logic by Jean-Marc Andreoli, Gabriele Pulcini and Paul Ruet [3]. Again, these logics are mainly motivated by the topological properties of the proofs they generate: planarity, etc. Another source of interest for non commutative variants of linear logic arises from the Curry-Howard isomorphism between proofs and programs. Typically, Frank Pfenning and Jeff Polakow [78] study a non-commutative extension of intuitionistic linear logic, in which non-commutativity captures the stack discipline of standard continuation passing style translations. There remains a lot of work to clarify how the various non-commutative logics are related, in particular on the semantic side. In that direction, one should mention the early work by Rick Blute and Phil Scott on Hopf algebras and cyclic linear logic [18, 20]. In Chapter 4, we will investigate two non-commutative variants of well-known categorical models of multiplicative linear logic: the linearly distributive categories introduced by Robin Cockett and Robert Seely in [26], and the non symmetric ∗autonomous categories formalized by Michael Barr in [8]. 39 3 Linear logic and its cut-elimination procedure In this chapter, we introduce propositional linear logic, understood now as a formal proof system. First, we describe the sequent calculus of classical linear logic (LL) and explain how to specialize it to its intuitionistic fragment (ILL). Then, we describe in full detail the cut-elimination procedure in the intuitionistic fragment. As we briefly explained in Chapter 2, we are extremely careful to limit the procedure to its necessary steps – so as not to identify too many proofs semantically. Finally, we return to classical linear logic and explain briefly how to adapt the cut-elimination procedure to the classical system. 3.1 Classical linear logic The formulas The formulas of propositional linear logic are constructed by an alphabet of four nullary constructors called units: 0 ⊥ 1 > two unary constructors called modalities: !A ?A and four binary constructors called connectives: A⊕B A⊗B AMB A&B Each constructor receives a specific name in the folklore of linear logic. Each constructor is also classified: additive, multiplicative, or exponential, depending on its nature and affinities with other constructors. This is recalled in the table below. ⊕ plus 0 zero: the unit of ⊕ The & with additives > top: the unit of & ⊗ tensor product 1 one: the unit of ⊗ The M parallel product multiplicatives ⊥ bottom: the unit of M ! bang (or shriek) The exponential ? why not modalities The sequents The sequents are one-sided ` A1 , . . . , An understood as sequences of formulas, not sets. In particular, the same formula A may appear twice (consecutively) in the sequence: this is precisely what happens when the contraction rule applies. 40 The sequent calculus A proof of propositional linear logic is constructed according to a series of rules presented in Figure 1. Note that there is no distinction between “Left” and “Right” introduction rules, since every sequent is one-sided. Axiom ⊗ Cut ` A⊥ , A ` Γ, A ` ∆, B ` Γ, ∆, A ⊗ B 1 `1 ` Γ, A ` A⊥ , ∆ ` Γ, ∆ M ` Γ, A, B ` Γ, A M B ⊥ `Γ ` Γ, ⊥ & ` Γ, A ` Γ, B ` Γ, A&B ⊕1 ` Γ, A ` Γ, A ⊕ B ⊕2 ` Γ, B ` Γ, A ⊕ B 0 no rule > Contraction ` Γ, ?A, ?A ` Γ, ?A Weakening `Γ ` Γ, ?A Dereliction ` Γ, A ` Γ, ?A Promotion `?Γ, A `?Γ, !A ` Γ, > Figure 1: Sequent calculus of linear logic (LL) 3.2 Intuitionistic linear logic The formulas The formulas of propositional intuitionistic linear logic (with additives) are constructed by an alphabet of two units: > 1 one modality: !A and three connectives: 41 A⊗B A(B A&B The connective ( is called linear implication. The sequents The sequents are intuitionistic, that is, two-sided A1 , . . . , Am ` B with a sequence of formulas A1 , ..., Am on the left-hand side, and a unique formula B on the right-hand side. The sequent calculus A proof of propositional intuitionistic linear logic is constructed according to a series of rules presented in Figure 2. We follow the tradition, and call “intuitionistic linear logic” the intuitionistic fragment without the connective & nor unit >. Then, “intuitionistic linear logic with finite products” is the logic extended with the four rules of Figure 3. 3.3 Cut-elimination in intuitionistic linear logic The cut-elimination procedure is described as a series of symbolic transformations on proofs in Sections 3.4 – 3.11. 3.4 3.4.1 Cut-elimination: commuting conversion cut vs. cut Commuting conversion cut vs. cut (first case) The proof π1 .. . π2 .. . π3 .. . Υ2 , A, Υ3 ` B Υ1 , B, Υ4 ` C Cut Υ1 , Υ2 , A, Υ3 , Υ4 ` C Γ`A Cut Υ1 , Υ2 , Γ, Υ3 , Υ4 ` C is transformed into the proof π1 .. . π2 .. . π3 .. . Γ`A Υ2 , A, Υ3 ` B Cut Υ2 , Γ, Υ3 ` B Υ1 , B, Υ4 ` C Cut Υ1 , Υ2 , Γ, Υ3 , Υ4 ` C and conversely. In other words, the two proofs are equivalent from the point of view of the cut-elimination procedure. This point has already been mentioned in Section 2.1 of Chapter 2: this commutative conversion ensures that composition is associative in the category induced by any invariant and modular denotation of proofs. 42 Axiom Cut A`A Γ`A Υ1 , A, Υ2 ` B Υ1 , Γ, Υ2 ` B Left ⊗ Υ1 , A, B, Υ2 ` C Υ1 , A ⊗ B, Υ2 ` C Right ⊗ Γ`A ∆`B Γ, ∆ ` A ⊗ B Left ( Γ`A Υ1 , B, Υ2 ` C Υ1 , Γ, A ( B, Υ2 ` C Right ( A, Γ ` B Γ`A(B Left 1 Υ1 , Υ2 ` A Υ1 , 1, Υ2 ` A Right 1 `1 Promotion !Γ ` A !Γ `!A Dereliction Υ1 , A, Υ2 ` B Υ1 , !A, Υ2 ` B Weakening Υ1 , Υ2 ` B Υ1 , !A, Υ2 ` B Contraction Υ1 , !A, !A, Υ2 ` B Υ1 , !A, Υ2 ` B Exchange Υ1 , A1 , A2 , Υ2 ` B Υ1 , A2 , A1 , Υ2 ` B Figure 2: Sequent calculus of intuitionistic linear logic (ILL) 3.4.2 Commuting conversion cut vs. cut (second case) Another commuting conversion is this one. The proof 43 Left &1 Υ1 , A, Υ2 ` C Υ1 , A&B, Υ2 ` C Left &2 Υ1 , B, Υ2 ` C Υ1 , A&B, Υ2 ` C Right & Γ`A Γ`B Γ ` A&B True Γ`> Figure 3: Addendum to figure 2: ILL with finite products π1 .. . Γ`A π3 .. . π2 .. . ∆`B Υ1 , A, Υ2 , B, Υ3 ` C Cut Υ1 , A, Υ2 , ∆, Υ3 ` C Cut Υ1 , Γ, Υ2 , ∆, Υ3 ` C is transformed into the proof π2 .. . ∆`B π1 .. . π3 .. . Γ`A Υ1 , A, Υ2 , B, Υ3 ` C Cut Υ1 , Γ, Υ2 , B, Υ3 ` C Cut Υ1 , Γ, Υ2 , ∆, Υ3 ` C and conversely. 3.5 3.5.1 Cut-elimination: the η-expansion steps The tensor product The proof A⊗B`A⊗B Axiom is transformed into the proof Axiom Axiom A`A B ` B Right ⊗ A, B ` A ⊗ B Left ⊗ A⊗B`A⊗B 3.5.2 The linear implication The proof 44 A(B`A(B Axiom is transformed into the proof Axiom Axiom A`A B`B Left ( A, A ( B ` B Right ( A(B`A(B 3.5.3 The tensor unit The proof Axiom 1`1 is transformed into the proof Right 1 `1 Left 1 1`1 3.5.4 The exponential modality The proof !A `!A Axiom is transformed into the proof Axiom A`A Dereliction !A ` A Promotion !A `!A 3.6 3.6.1 Cut-elimination: the axiom steps Axiom steps The proof A`A π .. . Axiom Υ1 , A, Υ2 ` B Cut Υ1 , A, Υ2 ` B is transformed into the proof π .. . Υ1 , A, Υ2 ` B 45 3.6.2 Conclusion vs. axiom The proof π .. . Γ`A Axiom A`A Cut Γ`A is transformed into the proof π .. . Γ`A 3.7 3.7.1 Cut-elimination: the exchange steps Conclusion vs. exchange (the first case) The proof π2 .. . π1 .. . Γ`A Υ1 , A, B, Υ2 ` C Exchange Υ1 , B, A, Υ2 ` C Cut Υ1 , B, Γ, Υ2 ` C is transformed into the proof π1 .. . Γ`A 3.7.2 π2 .. . Υ1 , A, B, Υ2 ` C Cut Υ1 , Γ, B, Υ2 ` C Series of Exchanges Υ1 , B, Γ, Υ2 ` C Conclusion vs. exchange (the second case) The proof π1 .. . Γ`B π2 .. . Υ1 , A, B, Υ2 ` C Exchange Υ1 , B, A, Υ2 ` C Cut Υ1 , Γ, A, Υ2 ` C is transformed into the proof 46 π1 .. . Γ`B 3.8 π2 .. . Υ1 , A, B, Υ2 ` C Cut Υ1 , A, Γ, Υ2 ` C Series of Exchanges Υ1 , Γ, A, Υ2 ` C Cut-elimination: principal formula vs. principal formula In this section and in the companion Section 3.9, we explain how the cutelimination procedure transforms a proof π1 .. . π2 .. . Γ`A Υ1 , A, Υ2 ` B Cut Υ1 , Γ, Υ2 ` B in which the conclusion A and the hypothesis A are both principal in their respective proofs π1 and π2 . In this section, we treat the specific cases in which the last rules of the proofs π1 and π2 introduce: • the tensor product (Section 3.8.1), • the linear implication (Section 3.8.2), • the tensor unit (Section 3.8.3). For clarity’s sake, we treat separately in the next section – Section 3.9 – the three cases where the last rule of the proof π1 is a promotion rule, and the last rule of the proof π2 is a “structural rule”: a dereliction, a weakening or a contraction. 3.8.1 The tensor product The proof π1 .. . π2 .. . π3 .. . Γ`A ∆ ` B Right ⊗ Υ1 , A, B, Υ2 ` C Left ⊗ Γ, ∆ ` A ⊗ B Υ1 , A ⊗ B, Υ2 ` C Cut Υ1 , Γ, ∆, Υ2 ` C is transformed into the proof π1 .. . Γ`A π3 .. . π2 .. . ∆`B Υ1 , A, B, Υ2 ` C Cut Υ1 , A, ∆, Υ2 ` C Cut Υ1 , Γ, ∆, Υ2 ` C 47 A choice has been made here, since the cut rule on the formula A ⊗ B is replaced by a cut rule on the formula B, followed by a cut rule on the formula A. Instead, the cut rule on A may have been applied before the cut rule on B. However, this choice is innocuous, because the two derivations resulting from this choice are equivalent – modulo the conversion rule given in Section 3.4.2. 3.8.2 The linear implication The proof π1 .. . π2 .. . π3 .. . A, ∆ ` B Γ`A Υ1 , B, Υ2 ` C Right ( Left ( Υ1 , Γ, A ( B, Υ2 ` C ∆`A(B Cut Υ1 , Γ, ∆, Υ2 ` C is transformed into the proof π2 .. . π1 .. . Γ`A 3.8.3 π3 .. . A, ∆ ` B Cut Υ1 , B, Υ2 ` C Γ, ∆ ` B Cut Υ1 , Γ, ∆, Υ2 ` C The tensor unit The proof π .. . `1 Υ1 , Υ2 ` A Left 1 Υ1 , 1, Υ2 ` A Cut Υ1 , Υ2 ` A Right 1 is transformed into the proof π .. . Υ1 , Υ2 ` A 3.9 Cut-elimination: promotion vs. dereliction and structural rules In this section, we carry on and complete the task of Section 3.8: we explain how the cut-elimination procedure transforms a proof 48 π1 .. . π2 .. . !Γ ` A Promotion !Γ `!A Υ1 , !A, Υ2 ` B Cut Υ1 , !Γ, Υ2 ` B in which the hypothesis !A is principal in the proof π2 . There are exactly three cases to treat, depending on the last rule of the proof π2 : • a dereliction (Section 3.9.1), • a weakening (Section 3.9.2), • a contraction (Section 3.9.3). The interaction with an exchange step has already been treated in Section 3.7. 3.9.1 Promotion vs. dereliction The proof π2 .. . π1 .. . Υ1 , A, Υ2 ` B !Γ ` A Promotion Dereliction !Γ `!A Υ1 , !A, Υ2 ` B Cut Υ1 , !Γ, Υ2 ` B is transformed into the proof π1 .. . π2 .. . !Γ ` A Υ1 , A, Υ2 ` B Cut Υ1 , !Γ, Υ2 ` B 3.9.2 Promotion vs. weakening The proof π2 .. . Υ , Υ 1 2 `B !Γ ` A Weakening Promotion !Γ `!A Υ1 , !A, Υ2 ` B Cut Υ1 , !Γ, Υ2 ` B π1 .. . is transformed into the proof π2 .. . Υ1 , Υ2 ` B Series of Weakenings Υ1 , !Γ, Υ2 ` B 49 3.9.3 Promotion vs. contraction The proof π2 .. . π1 .. . Υ1 , !A, !A, Υ2 ` B !Γ ` A Promotion Contraction !Γ `!A Υ1 , !A, Υ2 ` B Cut Υ1 , !Γ, Υ2 ` B is transformed into the proof π1 .. . π1 .. . π2 .. . !Γ ` A Promotion Υ1 , !A, !A, Υ2 ` B !Γ `!A !Γ ` A Promotion Cut !Γ `!A Υ1 , !A, !Γ, Υ2 ` B Cut Υ1 , !Γ, !Γ, Υ2 ` B Series of Contractions and Exchanges Υ1 , !Γ, Υ2 ` B 3.10 Cut-elimination: secondary conclusion In this section, we explain how the cut-elimination procedure transforms a proof π1 .. . π2 .. . Γ`A Υ1 , A, Υ2 ` B Cut Υ1 , Γ, Υ2 ` B in which the conclusion A is secondary in the proof π1 . This leads us to a case analysis, where we describe how the proof evolves depending on the last rule of the proof π1 . The six cases are treated in turn: • a left introduction of the linear implication, • a dereliction, • a weakening, • a contraction, • an exchange, • a left introduction of the tensor product (with low priority) • a left introduction of the tensor unit (with low priority). The last two cases are treated at the end of the section because they are given a lower priority in the procedure. 50 3.10.1 Left introduction of the linear implication The proof π1 .. . π2 .. . π3 .. . Γ`A Υ2 , B, Υ3 ` C Left ( Υ2 , Γ, A ( B, Υ3 ` C Υ1 , C, Υ4 ` D Cut Υ1 , Υ2 , Γ, A ( B, Υ3 , Υ4 ` D is transformed into the proof π3 .. . π2 .. . π1 .. . Υ2 , B, Υ3 ` C Υ1 , C, Υ4 ` D Cut Γ`A Υ1 , Υ2 , B, Υ3 , Υ4 ` D Left ( Υ1 , Υ2 , Γ, A ( B, Υ3 , Υ4 ` D 3.10.2 A generic description of the structural rules: dereliction, weakening, contraction, exchange Four cases remain to be treated in order to describe entirely how the cutelimination procedure transforms a proof π1 .. . π2 .. . Γ`A Υ1 , A, Υ4 ` B Cut Υ1 , Γ, Υ4 ` B in which the conclusion A is secondary in the proof π1 . Each case depends on the last rule of the proof π1 , which may be: • a dereliction, • a weakening, • a contraction, • an exchange. Each of the four rules is of the form Υ2 , Φ, Υ3 ` A Υ2 , Ψ, Υ3 ` A where the context Φ is transformed into the context Ψ in a way depending on the specific rule: • dereliction: the context Φ consists of a formula C, and the context Ψ consists of the formula !C, 51 • weakening: the context Φ is empty, and the context Ψ consists of a formula !C, • contraction: the context Φ consists of two formulas !C, !C and the context Ψ consists of the formula !C, • exchange: the context Φ consists of two formulas C, D and the context Ψ consists of the two formulas D, C. By hypothesis, the proof π1 decomposes in the following way: π3 .. . Υ2 , Φ, Υ3 ` A Υ2 , Ψ, Υ3 ` A the specific rule The proof π3 .. . Υ2 , Φ, Υ3 ` A Υ2 , Ψ, Υ3 ` A π2 .. . the specific rule Υ1 , Υ2 , Ψ, Υ3 , Υ4 ` B Υ1 , A, Υ4 ` B Cut is then transformed into the proof π2 .. . π3 .. . Υ2 , Φ, Υ3 ` A Υ1 , A, Υ4 ` B Cut Υ1 , Υ2 , Φ, Υ3 , Υ4 ` B the specific rule Υ1 , Υ2 , Ψ, Υ3 , Υ4 ` B 3.10.3 Left introduction of the tensor (with low priority) The proof π1 .. . π2 .. . Υ2 , A, B, Υ3 ` C Left ⊗ Υ2 , A ⊗ B, Υ3 ` C Υ1 , C, Υ4 ` D Cut Υ1 , Υ2 , A ⊗ B, Υ3 , Υ4 ` D is transformed into the proof π1 .. . π2 .. . Υ2 , A, B, Υ3 ` C Υ1 , C, Υ4 ` D Cut Υ1 , Υ2 , A, B, Υ3 , Υ4 ` D Left ⊗ Υ1 , Υ2 , A ⊗ B, Υ3 , Υ4 ` D 52 Note that this coincides with the transformation described in Section 3.10.2 for the contexts Φ = A, B and Ψ = A ⊗ B. 3.10.4 Left introduction of the tensor unit (with low priority) The proof π1 .. . π2 .. . Υ2 , Υ3 ` A Left 1 Υ2 , 1, Υ3 ` A Υ1 , A, Υ4 ` B Cut Υ1 , Υ2 , 1, Υ3 , Υ4 ` B is transformed into the proof π1 .. . π2 .. . Υ2 , Υ3 ` A Υ1 , A, Υ4 ` B Cut Υ1 , Υ2 , Υ3 , Υ4 ` B Left 1 Υ1 , Υ2 , 1, Υ3 , Υ4 ` B Note that this coincides with the transformation described in Section 3.10.2 for an empty context Φ, and Ψ = 1. 3.11 Cut-elimination: secondary hypothesis In this section, we explain how the cut-elimination procedure transforms a proof π1 .. . π2 .. . Γ`A Υ1 , A, Υ2 ` B Cut Υ1 , Γ, Υ2 ` B in which the hypothesis A is secondary in the proof π2 . This leads us to a long case analysis, in which we describe how the proof evolves depending on the last rule of the proof π2 . The nine cases are treated in turn in the section: • the right introduction of the tensor, • the left introduction of the linear implication, • the four structural rules: dereliction, weakening, contraction, exchange, • the left introduction of the tensor (with low priority), • the left introduction of the tensor unit (with low priority), • the right introduction of the linear implication (with low priority). The last three cases are treated at the end of the section, because they are given a low priority in the procedure. 53 3.11.1 Right introduction of the tensor (first case) The proof π2 .. . π1 .. . π3 .. . Υ1 , A, Υ2 ` B ∆`C Right ⊗ Υ1 , A, Υ2 , ∆ ` B ⊗ C Γ`A Cut Υ1 , Γ, Υ2 , ∆ ` B ⊗ C is transformed into the proof π2 .. . π1 .. . Γ`A 3.11.2 π3 .. . Υ1 , A, Υ2 ` B Cut Υ1 , Γ, Υ2 ` B ∆`C Right ⊗ Υ1 , Γ, Υ2 , ∆ ` B ⊗ C Right introduction of the tensor (second case) The proof π1 .. . Γ`A π3 .. . π2 .. . ∆`B Υ1 , A, Υ2 ` C Right ⊗ ∆, Υ1 , A, Υ2 ` B ⊗ C Cut ∆, Υ1 , Γ, Υ2 ` B ⊗ C is transformed into the proof π2 .. . π1 .. . π3 .. . Γ`A Υ1 , A, Υ2 ` C Cut ∆`B Υ1 , Γ, Υ2 ` C Right ⊗ ∆, Υ1 , Γ, Υ2 ` B ⊗ C 3.11.3 Left introduction of the linear implication (first case) The proof π1 .. . π2 .. . π3 .. . Υ2 , A, Υ3 ` B Υ1 , C, Υ4 ` D Left ( Γ`A Υ1 , Υ2 , A, Υ3 , B ( C, Υ4 ` D Cut Υ1 , Υ2 , Γ, Υ3 , B ( C, Υ4 ` D is transformed into the proof 54 π1 .. . π2 .. . Γ`A 3.11.4 π3 .. . Υ2 , A, Υ3 ` B Cut Υ1 , C, Υ4 ` D Υ2 , Γ, Υ3 ` B Left ( Υ1 , Υ2 , Γ, Υ3 , B ( C, Υ4 ` D Left introduction of the linear implication (second case) The proof π3 π2 .. .. . . Υ3 ` B Υ1 , A, Υ2 , C, Υ4 ` D Left ( Γ`A Υ1 , A, Υ2 , Υ3 , B ( C, Υ4 ` D Cut Υ1 , Γ, Υ2 , Υ3 , B ( C, Υ4 ` D π1 .. . is transformed into the proof π1 π3 .. .. π2 . . .. . Γ`A Υ1 , A, Υ2 , C, Υ4 ` D Cut Υ3 ` B Υ1 , Γ, Υ2 , C, Υ4 ` D Left ( Υ1 , Γ, Υ2 , Υ3 , B ( C, Υ4 ` D 3.11.5 Left introduction of the linear implication (third case) The proof π3 π2 .. .. . . Υ2 ` B Υ1 , C, Υ3 , A, Υ4 ` D Left ( Υ1 , Υ2 , B ( C, Υ3 , A, Υ4 ` D Γ`A Cut Υ1 , Υ2 , B ( C, Υ3 , Γ, Υ4 ` D π1 .. . is transformed into the proof π1 π3 .. .. π2 . . .. . Γ`A Υ1 , C, Υ3 , A, Υ4 ` D Cut Υ2 ` B Υ1 , C, Υ3 , Γ, Υ4 ` D Left ( Υ1 , Υ2 , B ( C, Υ3 , Γ, Υ4 ` D 3.11.6 A generic description of the structural rules: dereliction, weakening, contraction, exchange Four cases remain to be treated in order to describe how the cut-elimination procedure transforms a proof 55 π1 .. . π2 .. . Γ`A Υ1 , A, Υ2 ` B Cut Υ1 , Γ, Υ2 ` B in which the hypothesis A is secondary in the proof π2 . Each case depends on the last rule of the proof π2 , which may be: • a dereliction, • a weakening, • a contraction, • an exchange. Each of the four rules is of the form Υ1 , Φ, Υ2 ` B Υ1 , Ψ, Υ2 ` B where the context Φ is transformed into the context Ψ in a way depending on the specific rule: • dereliction: the context Φ consists of a formula C, and the context Ψ consists of the formula !C, • weakening: the context Φ is empty, and the context Ψ consists of a formula !C, • contraction: the context Φ consists of two formulas !C, !C and the context Ψ consists of the formula !C, • exchange: the context Φ consists of two formulas C, D and the context Ψ consists of the two formulas D, C. From this follows that the proof π2 decomposes as a proof of the form π3 .. . Υ1 , A, Υ2 , Φ, Υ3 ` C Υ1 , A, Υ2 , Ψ, Υ3 ` C the specific rule or as a proof of the form π3 .. . Υ1 , Φ, Υ2 , A, Υ3 ` C Υ1 , Ψ, Υ2 , A, Υ3 ` C the specific rule depending on the relative position of the secondary hypothesis A and of the contexts Φ and Ψ among the hypothesis of the proof π2 . In the first case, the proof 56 π3 .. . π1 .. . Υ1 , A, Υ2 , Φ, Υ3 ` B the specific rule Υ1 , A, Υ2 , Ψ, Υ3 ` B Cut Υ1 , Γ, Υ2 , Ψ, Υ3 ` B is transformed into the proof Γ`A π1 .. . π3 .. . Γ`A Υ1 , A, Υ2 , Φ, Υ3 ` B Cut Υ1 , Γ, Υ2 , Φ, Υ3 ` B the specific rule Υ1 , Γ, Υ2 , Ψ, Υ3 ` B In the second case, the proof π3 .. . π1 .. . Υ1 , Φ, Υ2 , A, Υ3 ` B the specific rule Υ1 , Ψ, Υ2 , A, Υ3 ` B Cut Υ1 , Ψ, Υ2 , Γ, Υ3 ` B is transformed into the proof Γ`A π1 .. . π3 .. . Γ`A Υ1 , Φ, Υ2 , A, Υ3 ` B Cut Υ1 , Φ, Υ2 , Γ, Υ3 ` B the specific rule Υ1 , Ψ, Υ2 , Γ, Υ3 ` B 3.11.7 Left introduction of the tensor (first case) (with low priority) The proof π1 .. . π2 .. . Υ1 , A, Υ2 , B, C, Υ3 ` D Left ⊗ Γ`A Υ1 , A, Υ2 , B ⊗ C, Υ3 ` D Cut Υ1 , Γ, Υ2 , B ⊗ C, Υ3 ` D is transformed into the proof π1 .. . π2 .. . Γ`A Υ1 , A, Υ2 , B, C, Υ3 ` D Cut Υ1 , Γ, Υ2 , B, C, Υ3 ` D Left ⊗ Υ1 , Γ, Υ2 , B ⊗ C, Υ3 ` D Note that this coincides with the transformation described in Section 3.11.6 for the contexts Φ = A, B and Ψ = A ⊗ B. 57 3.11.8 Left introduction of the tensor (second case) (with low priority) The proof π2 .. . π1 .. . Γ`C Υ1 , A, B, Υ2 , C, Υ3 ` D Left ⊗ Υ1 , A ⊗ B, Υ2 , C, Υ3 ` D Cut Υ1 , A ⊗ B, Υ2 , Γ, Υ3 ` D is transformed into the proof π2 .. . π1 .. . Γ`C Υ1 , A, B, Υ2 , C, Υ3 ` D Cut Υ1 , A, B, Υ2 , Γ, Υ3 ` D Left ⊗ Υ1 , A ⊗ B, Υ2 , Γ, Υ3 ` D Note that this coincides with the second transformation described in Section 3.11.6 for the contexts Φ = A, B and Ψ = A ⊗ B. 3.11.9 Left introduction of the tensor unit (with low priority) The proof π1 .. . Γ`A π2 .. . Υ1 , A, Υ2 , Υ3 ` D Left 1 Υ1 , A, Υ2 , 1, Υ3 ` D Cut Υ1 , Γ, Υ2 , 1, Υ3 ` D is transformed into the proof π1 .. . π2 .. . Γ`A Υ1 , A, Υ2 , Υ3 ` D Cut Υ1 , Γ, Υ2 , Υ3 ` D Left 1 Υ1 , Γ, Υ2 , 1, Υ3 ` D Similarly, the proof π1 .. . Γ`A π2 .. . Υ1 , Υ2 , A, Υ3 ` D Left 1 Υ1 , 1, Υ2 , A, Υ3 ` D Cut Υ1 , 1, Υ2 , Γ, Υ3 ` D is transformed into the proof 58 π1 .. . π2 .. . Γ`A Υ1 , Υ2 , A, Υ3 ` D Cut Υ1 , Υ2 , Γ, Υ3 ` D Left 1 Υ1 , 1, Υ2 , Γ, Υ3 ` D Note that this coincides with the two transformations described in Section 3.11.6 for the empty context Φ and the context Ψ = 1. 3.11.10 Right introduction of the linear implication (with low priority) The proof π2 .. . π1 .. . B, Υ1 , A, Υ2 ` C Right ( Γ`A Υ1 , A, Υ2 ` B ( C Cut Υ1 , Γ, Υ2 ` B ( C is transformed into the proof π1 .. . π2 .. . Γ`A B, Υ1 , A, Υ2 ` C Cut B, Υ1 , Γ, Υ2 ` C Right ( Υ1 , Γ, Υ2 ` B ( C 3.12 Discussion Let us briefly come back to the core of the discussion of Sections 2.4 and 2.5 concerning the structure of a category of proof invariants. We show that such a category is monoidal when one relaxes the priorities assigned to the various transformation steps in the cut-elimination procedure. The proof π1 .. . π2 .. . Γ, C, D ` A Left ⊗ Γ, C ⊗ D ` A ∆`B Right ⊗ Γ, C ⊗ D, ∆ ` A ⊗ B may be cut against the identity proof Axiom Axiom A`A B ` B Right ⊗ A, B ` A ⊗ B Left ⊗ A⊗B`A⊗B 59 (30) this resulting in the proof π1 .. . π2 .. . Axiom Axiom Γ, C, D ` A A`A B ` B Right ⊗ Left ⊗ Γ, C ⊗ D ` A ∆`B A, B ` A ⊗ B Right ⊗ Left ⊗ Γ, C ⊗ D, ∆ ` A ⊗ B A⊗B`A⊗B Cut Γ, C ⊗ D, ∆ ` A ⊗ B The compositionality requirement on the category of invariants ensures that this proof has the same denotation as the original proof (30). Now, the cutelimination step described in Section 3.8.1 rewrites the proof into π1 .. . π2 .. . Axiom Axiom A`A B ` B Right ⊗ A, B ` A ⊗ B Cut A, ∆ ` A ⊗ B Cut Γ, C, D ` A ∆`B Left ⊗ Γ, C ⊗ D ` A Γ, C ⊗ D, ∆ ` A ⊗ B which is itself transformed by the step described in Section 3.11.2 which permutes the cut rule and the right introduction of the tensor product, this leading to the proof π2 .. . π1 .. . Axiom B`B ∆`B Cut ∆ ` B Right ⊗ A, ∆ ` A ⊗ B Cut Axiom A`A Γ, C, D ` A Left ⊗ Γ, C ⊗ D ` A Γ, C ⊗ D, ∆ ` A ⊗ B Now, the cut rule and the axiom rule disappear thanks to the cut-elimination step described in Section 3.6.2 π2 .. . π1 .. . Axiom A`A ∆ ` B Right ⊗ Γ, C, D ` A Left ⊗ Γ, C ⊗ D ` A A, ∆ ` A ⊗ B Cut Γ, C ⊗ D, ∆ ` A ⊗ B (31) Then, the cut rule and the left introduction of the tensor are permuted by the cut-elimination step described in Section 3.10.3. Note that this rewriting step is not permitted by our original priority policy: the step described in Section 3.11.1 permuting the cut rule and the right introduction of the tensor should be performed first. Hence, this transformation from (31) to (32) is only 60 possible because we have relaxed our original priority policy. π2 .. . π1 .. . Axiom ∆ ` B Right ⊗ A`A Γ, C, D ` A A, ∆ ` A ⊗ B Cut Γ, C, D, ∆ ` A ⊗ B Left ⊗ Γ, C ⊗ D, ∆ ` A ⊗ B (32) The proof reduces then to the proof: π1 .. . π2 .. . Γ, C, D ` A ∆`B Right ⊗ Γ, C, D, ∆ ` A ⊗ B Left ⊗ Γ, C ⊗ D, ∆ ` A ⊗ B (33) This demonstrates that the two proofs (30) and (33) are denoted by the same invariant in our category. One establishes in the same way that the two proofs (21) and (22) considered in Section 2.5 are denoted by the same invariant in the category. And similarly for the three proofs (23) and (24) and (25). From this follows that the category of denotations is symmetric monoidal when the priority order of the cut-elimination procedure is relaxed. 3.13 Cut-elimination for classical linear logic We have just described in all details the cut-elimination procedure for intuitionistic linear logic. We explain briefly how the procedure may be adapted to classical linear logic. The guiding idea is that every rule of intuitionistic linear logic may be reformulated as a rule of the classical system. For instance, the transformation described in Section 3.8.1 annihilating a left tensor introduction in front of a right tensor introduction, becomes the rule which transforms π1 .. . π3 .. . π2 .. . ` B⊥ , A⊥ , Υ ` Γ, A ` ∆, B ⊗ M ` Γ, ∆, A ⊗ B ` B⊥ M A⊥ , Υ Cut ` Γ, ∆, Υ into π1 .. . ` Γ, A π3 .. . π2 .. . ` ∆, B ` B⊥ , A⊥ , Υ Cut ` ∆, A⊥ , Υ Cut ` Γ, ∆, Υ 61 Similarly, the rule of Section 3.9.3 which describes how promotion interacts with contraction becomes, once restated classically, the rule which transforms the proof π2 .. . π1 .. . `?Γ, A Promotion `?Γ, !A ` Γ, ∆ `?A⊥ , ?A⊥ , ∆ Contraction `?A⊥ , ∆ Cut into the proof π1 .. . π1 .. . π2 .. . `?Γ, A Promotion `?Γ, !A `?A⊥ , ?A⊥ , ∆ `?Γ, A Cut Promotion ⊥ `?Γ, !A `?Γ, ?A , ∆ Cut `?Γ, ?Γ, ∆ Contraction `?Γ, ∆ Adapting in this way all the cut-elimination rules of intuitionistic linear logic presented in Sections 3.4 – 3.11, one obtains a legitimate cut-elimination procedure for classical linear logic. 62 4 Monoidal categories and duality After recalling the definition of a monoidal category, as well as the string diagram notation, we describe two alternative ways to define duality and the notion of ∗-autonomous category (read star-autonomous). On the one hand, a ∗-autonomous category may be seen as a symmetric monoidal closed category equipped with a dualizing object. This is developed in Sections 4.1—4.8 according to the topography below. MonoidalTT TTTT jjjj j TTTT j j j j TTT*  ujjjj Symmetric monoidal Right closed Left closed SSSS jj j SSSS j j SSSS jjjj S)  ujjjj Symmetric monoidal closed  ∗-autonomous On the other hand, a ∗-autonomous category may also be seen as a symmetric linearly distributive category equipped with a duality. The notion of linearly distributive category and its connection to ∗-autonomous categories is developed in Sections 4.9—4.13 following the topography below. Monoidal  Linearly distributive UUUU jjj UUUU jjjj UUUU j j j j UU* j  tjj Left dualityU Symmetric linearly distributive Right duality UUUU iii UUUU iiii i UUUU i i U* tiiii  ∗-autonomous Alternatively, a ∗-autonomous category may be seen as a dialogue category whose negation is involutive. This point is developed in Sections 4.14—4.15 where the notion of dialogue category is introduced. 4.1 Monoidal categories A monoidal category is a category C equipped with a bifunctor ⊗ : C × C −→ C associative up to a natural isomorphism αA,B,C : (A ⊗ B) ⊗ C −→ A ⊗ (B ⊗ C) 63 and with an object e unit up to natural isomorphisms λA : e ⊗ A −→ A, ρA : A ⊗ e −→ A. The structure maps α, λ, ρ must satisfy two axioms. First, the pentagonal diagram (A ⊗ B) ⊗ (C ⊗ D) VVVVV h3 VVαVVV VVVV+ A ⊗ (B ⊗ (C ⊗ D)) O αhhhhhh hh hhhhh ((A ⊗ B) ⊗ C) ⊗ D α⊗D  (A ⊗ (B ⊗ C)) ⊗ D A⊗α α / A ⊗ ((B ⊗ C) ⊗ D) should commute for all objects A, B, C, D of the category. Second, the triangular diagram α / A ⊗ (e ⊗ B) (A ⊗ e) ⊗ B LLL rr LLL rrr LLL r r ρ⊗B L& xrrr A⊗λ A⊗B should commute for all objects A and B of the category. Note that for clarity’s sake, we generally drop the indices on the structure maps α, λ, ρ in our diagrams, and write A instead of idA in compound morphisms like A ⊗ α = idA ⊗ α. The pentagon and triangle axioms ensure that every diagram made of structure maps commutes in the category C. This property is called the coherence property of monoidal categories. It implies among other things that the structure morphisms λe : e ⊗ e −→ e and ρe : e ⊗ e −→ e coincide. This point is worth stressing, since the equality of these two maps is often given as a third axiom of monoidal categories. The equality follows in fact from the pentagon and triangle axioms. We clarify this point in Proposition 2, after the preliminary Proposition 1. Proposition 1 The triangles α / e ⊗ (A ⊗ B) (e ⊗ A) ⊗ B LLL r LLL rrr r LLL r r λ⊗B L& xrrr λ A⊗B and α / A ⊗ (B ⊗ e) (A ⊗ B) ⊗ e LLL rr LLL rrr L r r ρ LL L& xrrr A⊗ρ A⊗B commute in any monoidal category C. 64 Proof. The proof is based on the observation that the functor e ⊗ − : C −→ C is full and faithful, because λ is a natural isomorphism from this functor to the identity functor. So, two morphisms f, g : A −→ B coincide if and only if the morphisms e ⊗ f, e ⊗ g : e ⊗ A −→ e ⊗ B coincide as well. In particular, the first triangle of the proposition commutes if and only if the triangle e⊗α / e ⊗ (e ⊗ (A ⊗ B)) e ⊗ ((e ⊗ A) ⊗ B) QQQ mm QQQ mmm QQQ m m mm e⊗(λ⊗B) QQQ ( vmmm e⊗λ e ⊗ (A ⊗ B) commutes. Now, this triangle commutes if and only if the triangle obtained by adjoining a pentagon on top of it α ((e ⊗ e) ⊗ A) ⊗ B / (e ⊗ e) ⊗ (A ⊗ B) α⊗B  (e ⊗ (e ⊗ A)) ⊗ B α α   / e ⊗ (e ⊗ (A ⊗ B)) e⊗α e ⊗ ((e ⊗ A) ⊗ B) QQQ QQQ mmm QQQ mmm m m m e⊗(λ⊗B) QQQ ( vmmm e⊗λ e ⊗ (A ⊗ B) commutes as well — this comes from the fact that α is an isomorphism. We leave as an exercise to the reader the elementary “diagram-chase” proving that this last triangle commutes, with its two borders equal to: ((e ⊗ e) ⊗ A) ⊗ B (ρ⊗A)⊗B α / (e ⊗ A) ⊗ B / e ⊗ (A ⊗ B). This establishes that the first triangle of the proposition commutes. The second triangle is shown to commute in a similar way.  Proposition 2 The two morphisms λe and ρe coincide in any monoidal category C. Proof. Naturality of λ implies that the diagram e ⊗ (e ⊗ B) λ / e⊗B λ  /B λ e⊗λ  e⊗B 65 commutes. From this follows that the two structure morphisms e ⊗ (e ⊗ B) λ / e⊗B e ⊗ (e ⊗ B) e⊗λ / e⊗B coincide — because the morphism λ : e ⊗ B −→ B is an isomorphism. This is the crux of the proof. Then, one instantiates the object A by the unit object e in the first triangle of Proposition 1, and replaces the morphism λ by the morphism e ⊗ λ, to obtain that the triangle (e ⊗ e) ⊗ B α λ⊗B  e⊗B / e ⊗ (e ⊗ B) e⊗λ =  e⊗B commutes for every object B of the category C. The triangular axiom of monoidal categories indicates then that the two morphisms: (e ⊗ e) ⊗ B λe ⊗B / e⊗B (e ⊗ e) ⊗ B ρe ⊗B / e⊗B coincide for every object B, and in particular for the object B = e. This shows that the two morphisms λe ⊗ e and ρe ⊗ e coincide. Just as in the proof of Proposition 1, we conclude from the fact that the functor − ⊗ e : C −→ C is full and faithful: the two morphisms λe and ρe coincide.  One is generally interested in combining objects A1 , ..., An of a monoidal category C using the “monoidal structure” or “tensor product” of the category, N A . Unfortunately, the tensor product is in order to obtain an object like i i only associativeN up to natural isomorphism. Thus, there are generally several candidates for A . Typically, (A1 ⊗ A2 ) ⊗ A3 and A1 ⊗ (A2 ⊗ A3 ) are two i i isomorphic objects of the category, candidates for the tensor product of A1 , A2 , A3 . This is the reason why the coherence N property is so useful: it enables us to “identify” the various candidates for A in a coherent way. One may thus i i proceed “as if” the isomorphisms α, λ, ρ were identities. This aspect of coherence is important. It may be expressed in a quite elegant and conceptual way. A monoidal category is strict when its structure maps α, λ and ρ areNidentities. So, in a strict monoidal category, there is only one candidate for A . The coherence theorem states that every monoidal category i i is equivalent to a strict monoidal category. Equivalence of monoidal categories is expressed conveniently in the 2-category of monoidal categories, monoidal functors, and monoidal natural transformations. We come back to this point, and provide all definitions, in Chapter 5. Exercise. Show that in every monoidal category C, the set of endomorphisms of the unit object e defines a commutative monoid for the composition, in the sense that f ◦ g = g ◦ f for every two morphisms f, g : e −→ e. Show moreover that composition coincides with tensor product up to the isomorphism ρe = λe , in the sense that f ⊗ g = ρ−1 e ◦ ( f ◦ g) ◦ ρe .  66 4.2 String diagrams String diagrams provide a pleasant topological account of morphisms in monoidal categories. The idea is to depict a morphism f : A ⊗ B ⊗ C −→ D ⊗ E of the monoidal category as D E f A C B The composite g ◦ f : A −→ C of two morphisms f : A −→ B and g : B −→ C is then depicted as: C C g g◦f B = f A A and the tensor product f ⊗ g : A ⊗ C −→ B ⊗ D of two morphisms f : A −→ B and g : C −→ D as: f ⊗g D B B⊗D = g f A A⊗C C Observe that composition and tensor product are depicted as vertical and horizontal composition in string diagrams, respectively. The interested reader will find more on the topic in [55, 56, 86]. See also [73] for an introduction to the topic in the context of linear logic. 4.3 Braided monoidal categories A braided monoidal category is a monoidal category C equipped with a braiding. A braiding is a natural isomorphism γA,B : A ⊗ B −→ B ⊗ A 67 making the hexagonal diagrams / α A ⊗ (B ⊗ C) γ / (B ⊗ C) ⊗ A α  B ⊗ (C ⊗ A) @ (A ⊗ B) ⊗ C / (B ⊗ A) ⊗ C γ⊗C α / B ⊗ (A ⊗ C) B⊗γ and / α−1 (A ⊗ B) ⊗ C γ / C ⊗ (A ⊗ B) α−1  (C ⊗ A) ⊗ B @ A ⊗ (B ⊗ C) / A ⊗ (C ⊗ B) A⊗γ α−1 / (A ⊗ C) ⊗ B γ⊗B commute. Here, we should mention that the name “braiding” comes from the topological account offered by string diagrams. Typically, the first hexagonal coherence diagram is depicted as the equality B C B A C A = A B C (34) A B C whereas the second hexagonal coherence diagram is depicted as the equality C A B C A B A B C = A B C Here, the diagrams should be read from bottom to top, each positive braid permutation corresponding to a morphism γ. One advantage of the pictorial notation is that the associativity morphisms are not indicated. Note that the second hexagon is just the first one in which the morphism γ has been replaced by its inverse γ−1 . Diagrammatically speaking, this amounts 68 to the fact that the second pictorial equality reads upside down (that is, from top to bottom) as the first pictorial equality (34) where every positive braid permutation γ has been replaced by its inverse γ−1 , the negative braid permutation: B C A B C A A B C = A B C The braiding and the unit of the monoidal category are related in the following way. Proposition 3 The triangles A ⊗ eD DD DD ρ DD D" γ A / e⊗A zz zz z z λ |z z e ⊗ AD DD DD D λ DD " γ A / A⊗e zz zz z z ρ z| z commute in any braided monoidal category C. Proof. The idea is to fill the first commutative hexagon with five smaller commutative diagrams: 3 A ⊗ (e ⊗ C) γ / (e ⊗ C) ⊗ A (b) λ⊗A α α (a) (A ⊗ e) ⊗ C γ⊗C ρ⊗C A⊗λ (c)   / A⊗C / C⊗A o γ O fLLL LLL LL (•) (d) λ⊗C λLLL LLL (e) LL + α / e ⊗ (A ⊗ C) (e ⊗ A) ⊗ C λ  e ⊗ (C ⊗ A) D e⊗γ In clockwise order, these diagrams commute (a) by the triangle axiom of monoidal categories, (b) by naturality of γ, (c) by Proposition 1, (d) by naturality of λ, (e) by Proposition 1. From this and the fact that γ is an isomorphism, follows that diagram (•) commutes. Now, one instantiates diagram (•) with C = e. Just as in the proofs of Proposition 1 and 2, one uses the fact that the functor − ⊗ e : C −→ C is full and faithful, in order to deduce that the first triangle of the proposition commutes. The second triangle of the proposition is shown to commute in a similar way.  69 4.4 Symmetric monoidal categories A symmetric monoidal category C is a braided monoidal category whose braiding is a symmetry. A symmetry is a braiding satisfying γB,A = γ−1 for all objects A,B A, B of the category. Note that, in that case, the second hexagonal diagram may be dropped in the definition of braiding, since this diagram commutes for γA,B if and only if the first hexagonal diagram commutes for γB,A = γ−1 . A,B 4.5 Monoidal closed categories A left closed structure in a monoidal category (C, ⊗, e) is the data of • an object A ( B, • a morphism evalA,B : A ⊗ (A ( B) −→ B, for every two objects A and B of the category C. The morphism evalA,B is called the left evaluation morphism. It must satisfy the following universal property. For every morphism f : A ⊗ X −→ B there exists a unique morphism h : X −→ A ( B making the diagram A⊗X Q QQQ QQQ f QQQ A⊗h QQQ  QQ( /B A ⊗ (A ( B) (35) evalA,B commute. A monoidal closed category C is a monoidal category equipped with a left closed structure. There are several alternative definitions of a closed structure, which we review here. It follows from the universality property (35) that every object A of the category C defines an endofunctor B 7→ (A ( B) (36) of the category C. Besides, for every object A, this functor is right adjoint to the functor B 7→ (A ⊗ B). (37) This means that there exists a bijection between the sets of morphisms C(A ⊗ B, C)  C(B, A ( C) (38) natural in B and C. This provides an alternative definition of a left closed structure: a right adjoint to the functor (37), for every object A. The reader 70 interested in the notion of adjunction will find a comprehensive study of the notion in Chapter 5. Then, the parameter theorem (see Theorem 3 in Chapter IV, Section 7 of MacLane’s book [66]) enables us to structure the family of functors (36) indexed by objects of A, as a bifunctor (A, B) 7→ A ( B : Cop × C −→ C (39) contravariant in its first argument, covariant in its second argument. This bifunctor is defined as the unique bifunctor making the bijection (38) natural in A, B and C. This provides yet another alternative definition of left closed structure: a bifunctor (39) and a bijection (38) natural in A, B and C. Exercise. Show that in a monoidal closed category C with monoidal unit e, every object A is isomorphic to the object e ( A. Show moreover that the isomorphism between A and e ( A is natural in A.  4.6 Monoidal biclosed categories A monoidal biclosed category is a monoidal category equipped with a left closed structure as well as a right closed structure. By definition, a right closed structure in a monoidal category (C, ⊗, e) is the data of • an object A  B, • a morphism evarA,B : (B  A) ⊗ A −→ B, for every two objects A and B of the category C. The morphism evarA,B is called the right evaluation morphism. It must satisfy a similar universal property as the left evaluation morphism in Section 4.5, that for every morphism f : X ⊗ A −→ B there exists a unique morphism h : X −→ B  A making the diagram below commute: X⊗A Q QQQ QQQ f QQQ h⊗A QQQ  QQ( /B (B  A) ⊗ A evarA,B (40) As for the left closed structure in Section 4.5, this is equivalent to the property that the endofunctor B 7→ (B ⊗ A) 71 has a right adjoint B 7→ (B  A) for every object A of the category. The parameter theorem ensures then that this family of functors indexed by the object A defines a bifunctor  : C × Cop −→ C and a family of bijections C(B ⊗ A, C)  C(B, C  A) (41) natural in the objects A, B and C. 4.7 Symmetric monoidal closed categories A symmetric monoidal closed category C is a monoidal category equipped with a symmetry and a left closed structure. It is not difficult to show that any symmetric monoidal closed category is also equipped with a right closed structure, defined as follows: • the object B  A is defined as the object A ( B, • the right evaluation morphism evarA,B is defined as (A ( B) ⊗ A γA(B,A / A ⊗ (A ( B) evalA,B /B Symmetric monoidal closed categories provide the necessary structure to interpret the formulas and proofs of the multiplicative and intuitionistic fragment of linear logic. The symmetry interprets exchange, the operation of permuting formulas in a sequent, while the tensor product and closed structure interpret the multiplicative conjunction and implication of the logic, respectively. This logical perspective on categories with structure is often enlightening, both for logic and for categories. By way of illustration, there is a famous principle in intuitionistic logic that every formula A implies its double negation ¬¬A. This principle holds also in intuitionistic linear logic. In that case, the negation of a formula A is given by the formula A ( ⊥, where ⊥ stands for the multiplicative formula False. As a matter of fact, the formula False may be replaced by any other formula ⊥ for that purpose, in particular when no formula False is available in the logic. So, there is a proof π in intuitionistic linear logic that every formula A implies its double negation (A ( ⊥) ( ⊥, whatever the chosen formula ⊥. This fundamental principle of logic has a categorical counterpart in any monoidal biclosed category C, and more specifically, in any symmetric monoidal closed category. Like in linear logic, any object of the category C can play the role of ⊥, understood intuitively as the formula False. One shows that there exists a morphism ∂A : A −→ ⊥  (A ( ⊥) 72 for every object A of the monoidal biclosed category C, and that this morphism is natural in A. This reflects the logical phenomenon in a non commutative framework: indeed, when the category C is symmetric, the two objects ⊥  (A ( ⊥) (A ( ⊥) ( ⊥ coincide (up to isomorphism) and the map ∂A : A −→ (A ( ⊥) ( ⊥ is precisely the interpretation of the proof π that every formula A implies its double negation (A ( ⊥) ( ⊥ in intuitionistic linear logic. The morphism ∂A is constructed by a series of manipulations on the identity morphism: idA(⊥ : (A ( ⊥) −→ (A ( ⊥). First, one applies the bijection (38) associated to the left closed structure, from right to left, in order to obtain the morphism: A ⊗ (A ( ⊥) −→ ⊥ (42) Then, one applies the bijection (41) associated to the right closed structure, from left to right, in order to obtain the morphism: ∂A : A −→ ⊥  (A ( ⊥). When the category C is symmetric monoidal closed, the morphism ∂A is alternatively constructed by pre-composing the morphism (42) with the symmetry γA,A(⊥ : (A ( ⊥) ⊗ A −→ A ⊗ (A ( ⊥) so as to obtain the morphism (A ( ⊥) ⊗ A −→ ⊥. then the bijection (38) from left to right: ∂A : A −→ (A ( ⊥) ( ⊥. Exercise. For every object ⊥ of a monoidal biclosed category C, construct a morphism ∂A : A −→ (⊥  A) ( ⊥. Show that the two morphisms ∂A and ∂A are natural in A.  73 4.8 ∗-autonomous categories A ∗-autonomous category is a monoidal biclosed category C equipped with a dualizing object. A dualizing object ⊥ is an object of the category such that the two morphisms ∂A : A −→ (⊥  A) ( ⊥ ∂A : A −→ ⊥  (A ( ⊥) constructed in Section 4.7 are isomorphisms, for every object A of the category. From now on, we will only consider in this survey the situation when the monoidal biclosed category C is in fact symmetric monoidal closed. In that case, an object ⊥ is dualizing precisely when the canonical morphism ∂A : A −→ (A ( ⊥) ( ⊥ is an isomorphism for every object A of the category. This notion of dualizing object may be given a logical flavor. There is a governing principle in classical logic that the disjunction of a formula A and of its negation ¬A is necessarily true. This principle of Tertium non Datur is supported by the idea that a formula is either true or false. Interestingly, this principle of classical logic may be formulated alternatively as the property that every formula A is equivalent to its double negation ¬¬A. This principle does not hold in intuitionistic logic: a formula A implies its double negation ¬¬A intuitionistically, but the converse is not necessarily true. On the other hand, the existence of a dualizing object ⊥ in a symmetric monoidal closed category enables an interpretation of classical multiplicative linear logic and its involutive negation, instead of just intuitionistic multiplicative linear logic. Typically, the multiplicative disjunction A M B is defined as follows: A M B = ((A ( ⊥) ⊗ (B ( ⊥)) ( ⊥. (43) Exercise. Show that the object ⊥ ( ⊥ is isomorphic to the unit object e in any ∗-autonomous category.  Exercise. Show that the multiplicative disjunction A M B induces a monoidal structure (C, M, ⊥) in any symmetric monoidal closed category C with dualizing object ⊥.  4.9 Linearly distributive categories A linearly distributive category C is a monoidal category twice: once for the bifunctor ⊗ : C × C −→ C with unit e and natural isomorphisms α⊗A,B,C : (A ⊗ B) ⊗ C −→ A ⊗ (B ⊗ C), λ⊗A : e ⊗ A −→ A, ρ⊗A : A ⊗ e −→ A, 74 and again for the bifunctor • : C×C −→ C with unit u and natural isomorphisms α•A,B,C : (A • B) • C −→ A • (B • C), λ•A : u • A −→ A, ρ•A : A • u −→ A. In order to distinguish them, the operations ⊗ and • are called “tensor product” and “cotensor product” respectively. The tensor product is required to distribute over the cotensor product by natural morphisms δLA,B,C : A ⊗ (B • C) −→ (A ⊗ B) • C, δRA,B,C : (A • B) ⊗ C −→ A • (B ⊗ C). These structure maps must satisfy a series of commutativity axioms: six pentagons and four triangles, which we review below. The pentagons relate the distributions δL and δR to the associativity laws, and to themselves. We were careful to draw these pentagons in a uniform way. This presentation emphasizes the fact that the distributions are (lax) associativity laws between the tensor and the cotensor products. Consequently, each of the pentagonal diagram below is a variant of the usual pentagonal diagram for monoidal categories. Note that there are exactly 23 = 8 different ways to combine four objects A, B, C, D by a tensor and a cotensor product. The two extremal cases (only tensors, only cotensors) are treated by the requirement that the tensor and cotensor products define monoidal categories. Each of the six remaining cases is treated by one pentagon below. (A • B) ⊗ (C ⊗ D) VVVV R h3 VVVδ V VVVV V+ A • (B ⊗ (C ⊗ D)) O α⊗ hhhhh hhh hhhh ((A • B) ⊗ C) ⊗ D δR ⊗D A•α⊗  (A • (B ⊗ C)) ⊗ D δR / A • ((B ⊗ C) ⊗ D) (A • B) • (C ⊗ D) VVVV • h3 VVVαV VVVV V+ A • (B • (C ⊗ D)) O δR hhhhh hhh hhhh ((A • B) • C) ⊗ D α• ⊗D  (A • (B • C)) ⊗ D A•δR δR / A • ((B • C) ⊗ D) (A ⊗ B) • (C • D) kVVVV L h3 VVVδ V α• hhhhh h VVVV h h h h V hh A ⊗ (B • (C • D)) ((A ⊗ B) • C) • D O O A⊗α• δL •D (A ⊗ (B • C)) • D o δL 75 A ⊗ ((B • C) • D) (A ⊗ B) ⊗ (C • D) VVVV ⊗ h VVVαV VVVV V+ A ⊗ (B ⊗ (C • D)) δL hhhhh hhh shhhh ((A ⊗ B) ⊗ C) • D α⊗ •D A⊗δL  (A ⊗ (B ⊗ C)) • D o  A ⊗ ((B ⊗ C) • D) δL (A • B) ⊗ (C • D) VVVV R h VVVδ V VVVV V+ A • (B ⊗ (C • D)) δL hhhhh hhh shhhh ((A • B) ⊗ C) • D δR •D A•δL  (A • (B ⊗ C)) • D  / A • ((B ⊗ C) • D) α• (A ⊗ B) • (C ⊗ D) kVVVV L h3 VVVδ V VVVV V A ⊗ (B • (C ⊗ D)) O δR hhhhh hhh hhhh ((A ⊗ B) • C) ⊗ D O δL ⊗D A⊗δR α⊗ (A ⊗ (B • C)) ⊗ D / A ⊗ ((B • C) ⊗ D) The triangles relate the distributions to the units. Again, each triangle is a variant of the familiar diagram in monoidal categories, analyzed in Proposition 1. δL e ⊗ (A • B) λ⊗ = δL = δR / A • (B ⊗ e) ρ⊗  A•B  A•B / (A ⊗ B) • u (u • A) ⊗ B ρ• A⊗ρ•  A⊗B (A • B) ⊗ e λ⊗ •B  A•B A ⊗ (B • u) / (e ⊗ A) • B A•ρ⊗ = δR λ• ⊗B  A⊗B  A⊗B  A•B / u • (A ⊗ B) λ• =  A⊗B Exercise. Show that every monoidal category defines a linearly distributive category in which the tensor and cotensor products coincide.  4.10 Duality in linearly distributive categories Let C be a linearly distributive category, formulated with the same notations as in Section 4.9. A right duality in C is the data of: • an object A∗ , • two morphisms axRA : e −→ A∗ • A and cutRA : A ⊗ A∗ −→ u 76 for every object A of the category C. The morphisms are required to make the diagrams A⊗e A⊗axR / A ⊗ (A∗ • A) e ⊗ A∗ axR ⊗A∗ / (A∗ • A) ⊗ A∗ δL δR  (A ⊗ A∗ ) • A ρ⊗  Ao λ⊗ cutR •A λ  u•A •  A∗ • (A ⊗ A∗ ) A∗ •cutR  A∗ o  A∗ • u ρ• commute. To every morphism f : A −→ B in the category C, one associates the morphism f ∗ : B∗ −→ A∗ constructed in the following way: A∗ • (A ⊗ B∗ ) O B∗ (λ⊗ )−1  e ⊗ B∗ A∗ •( f ⊗B∗ ) / A∗ • (B ⊗ B∗ ) O δR R ∗ ax ⊗B A∗ •cutR / A∗ • u ρ• δR / (A∗ • A) ⊗ B∗ ∗ ∗ (A • f )⊗B  A∗ / (A∗ • B) ⊗ B∗ The coherence diagrams ensure that this operation on morphisms defines a contravariant functor (A 7→ A∗ ) : Cop −→ C. Moreover, one shows that Proposition 4 In any linearly distributive category C with a right duality, • the functor (A ⊗ −) is left adjoint to the functor (A∗ • −), • the functor (− • B) is right adjoint to the functor (− ⊗ B∗ ), for all objects A, B of the category. In particular, any such category is monoidal closed. There is also a notion of left duality in a linearly distributive category C, which is given by the data of: • an object ∗A, • two morphisms axLA : e −→ A • ∗A and cutLA : ∗A ⊗ A −→ u for every object A of the category C. Just as in the case of a right duality, the morphisms are required to make the coherence diagrams e⊗A axL ⊗A A⊗axL ∗ / (A • ∗A) ⊗ A ∗ A⊗e δL δR  A • (∗A ⊗ A) λ⊗  Ao  (∗A ⊗ A) • ∗A ρ⊗ A•cutL ρ• / ∗A ⊗ (A • ∗A)  ∗ o A  A•u 77 cutL •∗A λ •  u • ∗A commute. Proposition 5 In any linearly distributive category C with a left duality, • the functor (− ⊗ B) is left adjoint to the functor (− • ∗B), • the functor (A • −) is right adjoint to the functor (∗A ⊗ −), for all objects A, B of the category. Exercise. Show that there is a natural isomorphism between A, ∗(A∗ ) and (∗A)∗ in any linearly distributive category with a left and right duality. Hint: show that the bijections C(A, B)  C(e, A∗ • B)  C(∗(A∗ ), B) are natural in A and B. Deduce that there exists a natural isomorphism between A and ∗(A∗ ). Proceed similarly to establish the existence of a natural isomorphism between A and (∗A)∗ .  Exercise. Suppose that C is a linearly distributive category with a right duality. Deduce from the previous exercise, and some diagrammatic inspection, that there exists at most one left duality in the category C, up to the expected notion of isomorphism between left dualities.  4.11 Braided linearly distributive categories A braided linearly distributive category C is a linearly distributive category in which the two monoidal structures are braided, with braidings given by natural isomorphisms: γ⊗A,B : A ⊗ B −→ B ⊗ A, γ•A,B : A • B −→ B • A. Moreover, the braidings and the distributions should make the diagrams A ⊗ (B • C) / A ⊗ (C • B) γ⊗ γ• / C • (A ⊗ B) C•γ⊗ γ• ⊗C / (B • A) ⊗ C γ⊗ / (B ⊗ C) • A γ •A A⊗γ• δL  (A ⊗ B) • C (A • B) ⊗ C δR δR  A • (B ⊗ C) / (C • B) ⊗ A / C ⊗ (B • A) δL γ • ⊗ (44)  / C • (B ⊗ A) (45)  / (C ⊗ B) • A commute, for all objects A, B, C. Exercise. Show that every braided monoidal category defines a braided linearly distributive category in which the tensor and cotensor products coincide.  78 4.12 Symmetric linearly distributive categories A symmetric linear distributive category C is a braided linearly distributive category whose two braidings γ⊗ and γ• are symmetries. Here, recall that a symmetry γ is a braiding satisfying γB,A = γ−1 for all objects A, B of the A,B category. Just as in the case of symmetries in monoidal categories, note that the second coherence diagram (44) may be dropped in the definition of braided linearly distributive category. Indeed, the diagram commutes for γ⊗A,B and γ•A,B if and only if the second diagram commutes for their inverse (γ⊗A,B )−1 = γ⊗B,A and (γ•A,B )−1 = γ•B,A . 4.13 ∗-autonomous categories as linearly distributive categories In a symmetric linearly distributive category, any right duality (A 7→ A∗ ) induces a left duality (A 7→ ∗A) given by ∗A = A∗ and the structure morphisms: axLA = γ•A∗ ,A ◦ axRA , cutLA = cutRA ◦ γ⊗A∗ ,A . We have seen in Section 4.10 (last exercise) that this defines the unique left duality in the category C, up to the expected notion of isomorphism between left duality. In fact, Cockett and Seely prove that this provides another formulation Proposition 6 (Cockett-Seely) The three notions below coincide: • ∗-autonomous categories, • symmetric linearly distributive categories with a right duality, • symmetric linearly distributive categories with a left duality. 4.14 Dialogue categories We conclude the chapter by introducing the notion of dialogue category, which generalizes the notion of ∗-autonomous category by relaxing the hypothesis that negation is involutive. Several definitions of dialogue category are possible. So, we find clarifying to review here four of these definitions – and to explain in which way they differ. First definition. A dialogue category is defined as a symmetric monoidal category (C, ⊗, 1) equipped with an exponentiable object ⊥, called the tensorial pole of the category. Recall that an object ⊥ is exponentiable when every functor A C(A ⊗ B, ⊥) 7→ : Cop −→ Cat is representable by an object B ( ⊥ and a bijection φA,B : C(A ⊗ B, ⊥) 79  C(A, B ( ⊥) natural in A. A simple argument based on the Yoneda principle shows that the family of objects B ( ⊥ induces (in a unique way) a functor B B(⊥ 7→ Cop −→ C : (46) such that the family φA,B is natural in A and B. Second definition. An alternative (and essentially equivalent) definition of dialogue category is possible, where one asks of the exponentiable object ⊥ that every functor A C(A ⊗ B1 ⊗ · · · ⊗ Bn , ⊥) 7→ Cop : −→ Cat is representable by an object B1 ( · · · ( Bn ( ⊥ (47) and a bijection φA,B1 ,...,Bn C(A ⊗ B1 ⊗ · · · ⊗ Bn , ⊥) :  C(A, B1 ( · · · ( Bn ( ⊥) natural in A, for every sequence B1 , . . . , Bn of objects of the category C. Here, the tensor product A ⊗ B1 ⊗ · · · ⊗ Bn (· · · ((A ⊗ B1 ) ⊗ B2 ) ⊗ · · · ⊗ Bn ) := should be parsed as a left to right sequence of binary tensor products. This n-ary definition of tensorial pole is equivalent to the previous one, up to the choice of objects (47) for n ≥ 2. In particular, there exists for each natural number n ∈ N a (uniquely determined) functor n z (B1 , . . . , Bn ) 7→ B1 ( · · · ( Bn ( ⊥ : }| { Cop × · · · × Cop −→ C such that the family φA,B1 ,...,Bn is natural in A and B1 , . . . , Bn . Third definition. This observation leads to an equivalent definition of dialogue category, where the notion of exponentiable object ⊥ is replaced by a family (Sn )n∈N of n-ary functors, expressing negation. In this style, a dialogue category is defined as a symmetric monoidal category (C, ⊗, 1) equipped with a tensorial negation defined as a family of functors n z Sn : }| op C × ··· × C { op −→ C for each natural number n ∈ N, equipped with a bijection ψA,B1 ,B2 ,...,Bn : C(A ⊗ B1 , Sn−1 (B2 , . . . , Bn ))  C(A, Sn (B1 , B2 , . . . , Bn )) 80 (48) natural in A, B1 , . . . , Bn . This notion of tensorial negation reformulates precisely the n-ary notion of tensorial pole formulated in the second definition. On the one hand, every tensorial pole ⊥ defines a tensorial negation as Sn (A1 , . . . , An ) := A1 ( · · · ( An ( ⊥ with family of bijections defined as ψA,B1 ,...,Bn := φA,B1 ,B2 ,...,Bn ◦ φ−1 A⊗B1 ,B2 ,...,Bn Conversely, every tensorial negation S induces a tensorial pole ⊥ = S0 with representing objects and bijections defined as expected: A1 ( · · · ( An ( ⊥ φA1 ,...,An := := Sn ( A1 , . . . , An ) ψA1 ,A2 ,...,An−1 ,An ◦ · · · ◦ ψA1 ⊗···⊗An−2 ,An−1 ,An ◦ ψA1 ⊗···⊗An−1 ,An This back and forth translation induces a one-to-one relationship between the tensorial negations S and the exponentiable objects ⊥ with choice of representing objects (47). Fourth definition. The n-ary definition of tensorial negation S formulated in (48) may be replaced by an unary definition, but at the price of a coherence diagram. In this alternative formulation, a tensorial negation is defined as a functor ¬ : Cop −→ C (49) equipped with a bijection ψA,B,C : C(A ⊗ B, ¬C)  C(A, ¬(B ⊗ C)) natural in A, B and C. One requires moreover that the coherence diagram C(A ⊗ (B ⊗ C), ¬D) C(α,¬D) / C((A ⊗ B) ⊗ C, ¬D) ψA⊗B,C,D  C(A ⊗ B, ¬(C ⊗ D)) ψA,B⊗C,D (50) ψA,B,C⊗D  C(A, ¬((B ⊗ C) ⊗ D)) o C(A,¬α)  C(A, ¬(B ⊗ (C ⊗ D))) commutes for all objects A, B, C and D. This single coherence axiom ensures in particular that the other expected coherence diagram ψA,1,B / C(A, ¬(1 ⊗ B)) C(A ⊗ 1, ¬B) MMM p8 MMM ppp p MMM p p C(ρ,¬B) MMM pppC(A,¬λ) M& ppp C(A, ¬B) 81 commutes, for all objects A and B. At this point, it is worth explaining in what sense this definition of unary negation coincides with the definition of tensorial pole ⊥ in our second definition of dialogue category, or of n-ary negation S in our third definition of dialogue category, up to a straightforward notion of equivalence. On the one hand, every unary negation induces a tensorial pole ⊥ with representing objects defined as A1 ( · · · ( An ( ⊥ ¬ (A1 ⊗ · · · ⊗ An ) := equipped with the natural family of bijections φA,B1 ,...,Bn defined as C(A ⊗ B1 ⊗ · · · ⊗ Bn , ⊥) C(α,⊥) C(A, (B ⊗ C) ( ⊥) O C(A,¬ρ−1 )  ψA,B1 ⊗···⊗Bn ,1 C(A ⊗ (B1 ⊗ · · · ⊗ Bn ), ⊥) / C(A, ¬((B1 ⊗ · · · ⊗ Bn ) ⊗ 1)) where α denotes a sequence of associativity laws α and α−1 . Conversely, every tensorial pole ⊥ induces the unary negation defined as ¬ A : 7→ A(⊥ equipped with the natural family of bijections ψA,B,C defined as C(A ⊗ B, C ( ⊥) C(A, (B ⊗ C) ( ⊥) O φ−1 A⊗B,C  C((A ⊗ B) ⊗ C, ⊥) φA,B⊗C C(α−1 ,⊥) (51) / C(A ⊗ (B ⊗ C), ⊥) Note that it is not necessary to assume the coherence diagram (50) in order to construct the tensorial pole ⊥ from the tensorial negation. Consequently, every tensorial negation (without coherence) induces a tensorial negation (with coherence) by translating back the tensorial pole ⊥ into the language of tensorial negations. So, the coherence diagram (50) is simply here to ensure that there is no extra information in the original tensorial negation, and that the back and forth translation between (unary) negations and poles keeps the negation invariant. This implies in particular that the family of isomorphisms ψA,B,C is of the particular form (51). On the other hand, the back and forth translation preserves the tensorial poles up to a natural isomorphism A1 ( · · · ( An ( ⊥  (A1 ⊗ · · · ⊗ An ) ( ⊥ which relates the original choice of representing objects, to the choice of representing objects induced by back and forth translation. 82 4.15 ∗-autonomous as dialogue categories The notion of dialogue category is motivated by its ubiquity: indeed, every object ⊥ in a symmetric monoidal closed category C defines a tensorial pole, and thus a dialogue category. Another motivation comes from the deep connections with game semantics mentioned in Section 2.7 and discussed further in the concluding Chapter 9. Observe already that every tensorial negation induces an adjunction L Cf ⊥ ' Cop (52) R between the dialogue category C and its opposite category Cop , where R coincides with the functor ¬ whereas the functor L is defined as the opposite functor ¬op . The adjunction simply mirrors the existence of bijections C(A, ¬B)  C(B, ¬A)  Cop (¬A, B) natural in A and B, obtained in the following way: C(A, ¬B) φ−1 A,B / C(A ⊗ B, ⊥) −◦γB,A / C(B ⊗ A, ⊥) φB,A / C(B, ¬A) The adjunction L a R induces a monad R◦L whose unit η defines the well-known family of morphisms ηA : A −→ ¬¬A (53) reflecting the logical principle that every formula A implies its double negation ¬¬A. This leads to yet another formulation of ∗-autonomous category, based this time on dialogue categories: Proposition 7 The three notions below coincide: • ∗-autonomous categories, • dialogue categories where the adjunction (52) is an equivalence, • dialogue categories where the unit (53) is an isomorphism. The notion of adjunction is studied at length in the next Chapter 5. Recall here that an adjunction L a R is called an equivalence when its unit η and its counit ε are isomorphisms. 4.16 Notes and references The notion of linearly distributive is introduced by Robin Cockett and Robert Seely in [26]. A coherence theorem for linearly distributive categories has been established by the two authors, in collaboration with Rick Blute and David Trimble [19]. The construction of the free linearly distributive category over a given category C (or more generally, a polycategory) is described in full details. 83 The approach is based on the proof-net notation introduced by Jean-Yves Girard in linear logic [40]. The main difficulty is to describe properly the equality of proof-nets induced by the free linearly distributive category. An interesting conservativity result is established there: the canonical functor from a linearly distributive category to the free ∗-autonomous category over it, is a full and faithful embedding. The notion of ∗-autonomous category was introduced by Michael Barr, see [7]. Note that there also exists a non symmetric variant of ∗-autonomous category, defined and studied in [8]. 84 5 Adjunctions between monoidal categories In this chapter as well as in its companion Chapter 7, we discuss one of the earliest and most debated questions of linear logic: what is a categorical model of linear logic? This topic is surprisingly subtle and interesting. A few months only after the introduction of linear logic, there was already a general agreement among specialists • that the category of denotations L should be symmetric monoidal closed in order to interpret intuitionistic linear logic, • that the category L should be ∗-autonomous in order to interpret classical linear logic, • that the category L should be cartesian in order to interpret the additive connective &, and cocartesian in order to interpret the additive connective ⊕. But difficulties (and possible disagreements) arose when people started to axiomatize the categorical properties of the exponential modality “!”. These categorical properties should ensure that the category L defines a modular invariant of proofs for the whole of linear logic. Several alternative definitions were formulated, each one adapted to a particular situation or philosophy: Seely categories, Lafont categories, Linear categories, etc. Today, twenty years after the formulation of linear logic, it seems that a consensus has finally emerged between these various definitions — around the notion of symmetric monoidal adjunction. It appears indeed that each of the axiomatizations of the exponential modality ! implements a particular recipe to produce a symmetric monoidal adjunction between the category of denotations L and a specific cartesian category M, as depicted below. (L,m) (M, ×, e) j ⊥ * (L, ⊗, 1) (M,n) Our presentation in Chapter 7 of the categorical models of linear logic is thus regulated by the theory of monoidal categories, and more specifically, by the notion of symmetric monoidal adjunction. For that reason, we devote the present chapter to the elementary theory of monoidal categories and monoidal adjunctions, with an emphasis on the 2-categorical aspects of the theory: • Sections 5.1 – 5.6: we recall the notions of lax and oplax monoidal functor, this including the symmetric case, and the notion of monoidal natural transformation between such functors, • Section 5.7: we extend the string diagram notation with a notion of functorial box, enabling us to depict monoidal functors, 85 • Section 5.8 – 5.9: after recalling the definition of a 2-category, we construct the 2-category LaxMonCat with monoidal categories as objects, lax monoidal functors as horizontal morphisms, and monoidal natural transformations as vertical morphisms, • Sections 5.10 – 5.14: the 2-categorical definition of adjunction is formulated in three different ways, and applied to the 2-category LaxMonCat in order to define the notion of monoidal adjunction, • Section 5.15 – 5.16: the notion of monoidal adjunction is characterized as an adjunction F∗ a F∗ between monoidal categories, in which the left adjoint functor (F∗ , m) is strong monoidal. • Section 5.17: in this last section, we explicate the notion of symmetric monoidal adjunction, and characterize it as a monoidal adjunction in which the left adjoint functor (F∗ , m) is strong and symmetric. The various categorical axiomatizations of linear logic: Lafont categories, Seely categories, Linear categories, and their relationship to monoidal adjunctions, are discussed thoroughly in the companion Chapter 7. 5.1 Lax monoidal functors A lax monoidal functor (F, m) between monoidal categories (C, ⊗, e) and (D, •, u) is a functor F : C −→ D equipped with natural transformations m2A,B : FA • FB −→ F(A ⊗ B), m0 : u −→ Fe, making the three diagrams α• (FA • FB) • FC / FA • (FB • FC) m•FC FA•m  F(A ⊗ B) • FC  FA • F(B ⊗ C) m m  F((A ⊗ B) ⊗ C) FA • u ρ• / FA O m  / F(A ⊗ (B ⊗ C)) u • FB Fρ⊗ FA•m  FA • Fe Fα⊗ λ• Fλ⊗ m•FB  Fe ⊗ FB / F(A ⊗ e) / FB O m / F(e ⊗ B) commute in the category D for all objects A, B, C of the category C. A strong monoidal functor is defined as a lax monoidal functor whose mediating maps m2 and m0 are isomorphisms. A strict monoidal functor is a strong monoidal functor whose mediating maps are identities. 86 Remark. Our terminology is based on the idea that lax monoidal functors are lax morphisms between pseudo-algebras for a particular 2-dimensional monad in the 2-category of categories: the monad which associates to a category its free symmetric monoidal category, see for instance [62]. At the same time, we have chosen to call strong monoidal functor what would be probably called pseudo (or weak) monoidal functor in this philosophy. Remark. We will encounter at the beginning of Chapter 6 one of the original motivations for the definition of lax monoidal functor, discussed by Jean Bénabou in [11]. The category 1 with one object and its identity morphism defines a monoidal category in a unique way. It appears then that a lax monoidal functor from this monoidal category 1 to a monoidal category C is the same thing as a monoid in the category C. As we will see in Section 6.2, this has the remarkable consequence that the structure of monoid (and of monoid morphism) is preserved by lax monoidal functors. 5.2 Oplax monoidal functors The definition of a lax monoidal functor is based on a particular orientation of the mediating maps: from the object FA • FB to the object F(A ⊗ B), and from the object u to the object Fe. Reversing the orientation leads to another notion of “lax” monoidal functor, explicated now. An oplax monoidal functor (F, n) between monoidal categories (C, ⊗, e) and (D, •, u) consists of a functor F : C −→ D and natural transformations n2A,B : F(A ⊗ B) −→ FA • FB n0 : Fe −→ u making the three diagrams Fα⊗ F((A ⊗ B) ⊗ C) n n  FA • F(B ⊗ C)  F(A ⊗ B) • FC n•FC FA•n  (FA • FB) • FC F(A ⊗ e) Fρ⊗  FA • Fe α • / FA O FA•n  / FA • (FB • FC) F(e ⊗ B) ρ• n / F(A ⊗ (B ⊗ C)) Fλ⊗ λ• n  Fe • FB / FA • u / FB O n•FB / u • FB commute in the category D, for all objects A, B, C of the category C. The notion of oplax monoidal functor is slightly less familiar than its lax counterpart. It may be justified by the following observation. 87 Exercise. Show that every functor F : C −→ D between cartesian categories defines an oplax monoidal functor (F, n) in a unique way.  The definition of oplax monoidal functor leads to an alternative definition of strong monoidal functor, defined now as an oplax monoidal functor whose mediating maps n2 and n0 are isomorphisms. We leave the reader to prove in the next exercise that this definition of strong monoidal functor is equivalent to the definition given in Section 5.1. Exercise. Show that every oplax monoidal functor (F, n) whose mediating morphisms n2 and n0 are isomorphisms, defines a lax monoidal functor (F, m) with mediating morphisms m2A,B and m0 the inverse of n2A,B and n0 .  5.3 Natural transformations Suppose that F and G are two functors between the same categories: C −→ D. We recall that a natural transformation θ : F⇒G : C −→ D between the two functors F and G is a family θ of morphisms θA : FA −→ GA of the category D indexed by the objects A of the category C, making the diagram θA / GA FA Ff  FB Gf  / GB θB commute in the category D, for every morphism f : A −→ B in the category C. 5.4 Monoidal natural transformations (between lax functors) We suppose here that (F, m) and (G, n) are lax monoidal functors between the same monoidal categories: (C, ⊗, e) −→ (D, •, u). A monoidal natural transformation θ : (F, m) ⇒ (G, n) : 88 (C, ⊗, e) −→ (D, •, u) between the lax monoidal functors (F, m) and (G, n) is a natural transformation θ : F⇒G : C −→ D between the underlying functors, making the two diagrams θA •θB FA • FB m / GA • GB m n  F(A ⊗ B) θA⊗B  Fe  / G(A ⊗ B) u2 22 22 22 2n2 22 22  θe / Ge commute, for all objects A and B of the category C. 5.5 Monoidal natural transformations (between oplax functors) The definition of monoidal natural transformation formulated in Section 5.4 for lax monoidal functors is easily adapted to the oplax situation. A monoidal natural transformation θ : (F, m) ⇒ (G, n) : (C, ⊗, e) −→ (D, •, u) between two oplax monoidal functors (F, m) and (G, n) is a natural transformation θ : F ⇒ G : C −→ D between the underlying functors, making the two diagrams F(A ⊗ B) θA⊗B m  FA • FB / G(A ⊗ B) n θA •θB  / GA • GB θe Fe1 11 11 11 m 11 11 11   u / Ge n commute, for all objects A and B of the category C. We have seen in Section 5.2 that every functor F between cartesian categories is oplax in a canonical way. We leave the reader to establish as an exercise that natural transformations between such functors are themselves monoidal. Exercise. Suppose that θ : F ⇒ G : C −→ D is a natural transformation between two functors F and G acting on cartesian categories C and D. Show that the natural transformation θ is monoidal between the functors F and G understood as oplax monoidal functors.  89 5.6 Symmetric monoidal functors (lax and oplax) We suppose here that the two monoidal categories (C, ⊗, e) and (D, •, u) are symmetric, with symmetries noted γ⊗ and γ• respectively. A lax monoidal functor (F, m) : (C, ⊗, e) −→ (D, •, u) is called symmetric when the diagram γ• FA • FB / FB • FA m m  F(A ⊗ B)  / F(B ⊗ A) Fγ⊗ commutes in the category D for all objects A and B of the category C. Similarly, an oplax monoidal functor (F, n) (C, ⊗, e) −→ (D, •, u) : is called symmetric when the diagram Fγ⊗ F(A ⊗ B) / F(B ⊗ A) n n  FA • FB  / FB • FA γ• commutes in the category D for all objects A and B of the category C. Exercise. We have seen in Section 5.2 that every functor F between cartesian categories lifts to an oplax monoidal functor (F, n) in a unique way. Show that this oplax monoidal functor is symmetric.  5.7 Functorial boxes in string diagrams String diagrams may be extended with a notion of functorial box in order to depict functors between categories. In this notation, a functor F : −→ C D is represented as a box labeled by the label F, drawn around the morphism f : A −→ B transported by the functor from the category C to the category D. 90 FB FB B Ff f = A F FA FA The purpose of a box is to separate an inside world from an outside world. In this case, the inside world is the source category C and the outside world is the target category D. Observe in particular that a string of type FA outside the box (thus, in the category D) becomes a string of type A (thus, in the category C) when it crosses the frontier and enters the box. Similarly, a string of type B inside the box (in the category C) becomes a string of type FB (in the category D) when it crosses the frontier and leaves the box. Given a pair of morphisms f : A −→ B and g : B −→ C, the two functorial equalities F(g ◦ f ) = Fg ◦ F f F(A) = FA are depicted in a graphically pleasant way: FC C FC FA C A FA g g B F B = = FB B f F f A F FA A F FA A FA FA Observe that exactly one string enters and exits each functorial box F. We will see below that the purpose of monoidal functors is precisely to implement functorial boxes with multiple inputs and outputs. Let us explain how this is achieved. Consider a lax monoidal functor F with coercion maps m. Given k objects in the category C, there are several ways to combine the coercions maps m in order to construct the morphism mA1 ,...,Ak : F(A1 ) • . . . • F(Ak ) −→ F(A1 ⊗ . . . ⊗ Ak ). The definition of a lax monoidal functor, and more specifically the coherence diagrams recalled in Section 5.1, ensure that these various combinations define the same morphism mA1 ...Ak in the end. This morphism is nicely depicted as a box F in which k strings labelled A1 , · · · , Ak enter simultaneously, join together as 91 a unique string labelled A1 ⊗ · · · ⊗ Ak , which then exits the box. For illustration, the two structural morphisms m[A1 ,A2 ,A3 ] and m[−] are depicted as follows: F (A1 ⊗ A2 ⊗ A3 ) FI A1 ⊗ A2 ⊗ A3 I (54) F A1 A2 A3 F A1 F A2 F A3 F More generally, given a morphism f : A1 ⊗ · · · ⊗ Ak −→ B in the source category C, one depicts the morphism F( f ) ◦ mA1 ...Ak : FA1 ⊗ · · · ⊗ FAk −→ F(A1 ⊗ · · · ⊗ Ak ) −→ FB obtained by precomposing the image F( f ) with the coercion map mA1 ...Ak in the target category D, as the functorial box below, with k inputs and exactly one output: FB B f A1 F Ak F A1 F Ak The coherence properties of a monoidal functor enable to “merge” two monoidal boxes in a string diagram, without changing its meaning: FC FC C C g g Ak A1 F B FB B = B f f F A1 F Ai F Aj F Ak Aj Ai A1 F F A1 F Ak 92 Aj Ai F Ai F Aj F Ak Note that an oplax monoidal functor may be depicted in a similar fashion, as a functorial box in which exactly one string enters, and several strings (possibly none) exit. A strong monoidal functor is at the same time a lax monoidal functor (F, m) and an oplax monoidal functor (F, n). It is thus depicted as a functorial box in which several strings may enter, and several strings may exit. Besides, the coercion maps m are inverse to the coercion maps n. Two diagrammatic equalities follow, which enable to split a “strong monoidal” box horizontally: F Ck F C1 C1 F C1 Ck F Ck C1 Ck g g F B1 Bj F B1 = F Bj f f A1 F Ai F A1 A1 F Ai F A1 F Ai F Ai as well as vertically: F B1 F Bk B1 Bj F D1 g A1 Ai F A1 F Ai F C1 A1 F Ai F A1 F Ck Dl g f Ck F Dl D1 Bj = C1 F D1 F Bk B1 Dl f F F B1 F Dl D1 C1 F F C1 F Ai Ck F Ck This diagrammatic account of monoidal functors extends to natural transformations. Suppose given a natural transformation θ : F −→ G : C −→ D between two functors F and G. The naturality property of θ is depicted as the diagrammatic equality: GB GB θ FB B f F B f = A A G GA θ FA FA 93 Now, suppose that the two categories C and D are monoidal, and that the natural transformation θ is monoidal between the two lax monoidal functors F and G. The monoidality condition on the natural transformation θ ensures the diagrammatic equality: GB GB θ FB B B f F A1 f = Ak G A1 Ak GAk GA1 θ F A1 F A1 F Ak θ F Ak in which the natural transformation θ “transforms” the lax monoidal box F into the lax monoidal box G, and “replicates” as one natural transformation θ on each of the k strings A1 , . . . , Ak entering the lax monoidal boxes F and G. The notion of monoidal natural transformation between oplax monoidal functors leads to a similar pictorial equality, which the reader will easily guess by turning the page upside down. 5.8 The language of 2-categories In order to define the notion of monoidal adjunction between monoidal categories, we proceed in three stages: • In this section, we recall the notion of 2-category, • In Section 5.9, we construct the 2-category LaxMonCat with monoidal categories as objects, lax monoidal functors as horizontal morphisms, and monoidal natural transformations as vertical morphisms, • In Section 5.11, we define what one means by an adjunction in a 2-category, and apply the definition to the 2-category LaxMonCat in order to define the notion of monoidal adjunction. Basically, a 2-category C is a category in which the class C(A, B) of morphisms between two objects A and B is not a set, but a category. In other words, a 2-category is a category in which there exist morphisms f : A −→ B between objects, and also morphisms α : f ⇒ g between morphisms f : A −→ B and g : A −→ B with the same source and target. The underlying category is noted C0 . The morphisms f : A −→ B are called horizontal morphisms, and the morphisms α : f ⇒ g are called vertical morphisms or cells. They are generally represented as 2-dimensional arrows between the 1-dimensional 94 arrows f : A −→ B and g : A −→ B of the underlying category C0 : f A  ⇓α BB g Cells may be composed “vertically” and “horizontally”. We write β∗α : f ⇒h for the vertical composite of two cells α : f ⇒ g and β : g ⇒ h, which is represented diagrammatically as: f f ⇓α A g  /B G = A ⇓β∗α  BB ⇓β h h We write α1 ◦ α2 : f2 ◦ f1 ⇒ g2 ◦ g1 for the horizontal composite of two cells α1 : f1 ⇒ g1 and α2 : f2 ⇒ g2 , represented diagrammatically as: A ⇓α1 g1 f2 ◦ f1 f2 f1  BB  BC ⇓α2 = A ⇓α2 ◦α1  BC g2 ◦g1 g2 The vertical and horizontal composition laws are required to define categories: they are associative and have identities: • the vertical composition has an identity cell 1 f : f ⇒ f for every morphism f of the underlying category C0 , • the horizontal composition has an identity cell 1A : idA ⇒ idA for every object A and associated identity morphism idA : A −→ A of the underlying category C0 . The interchange law asks that composing four cells 95 α1 : f1 ⇒ g1 β1 : g1 ⇒ h1 α2 : f2 ⇒ g2 β2 : g2 ⇒ h2 vertically then horizontally as (β2 ∗ α2 ) ◦ (β1 ∗ α1 ) : f2 ◦ f1 ⇒ h2 ◦ h1 : f2 ◦ f1 ⇒ h2 ◦ h1 or horizontally then vertically as (β2 ◦ β1 ) ∗ (α2 ◦ α1 ) as in the diagram below f2 f1 ⇓α1 /B G g1 A ⇓α2  g2 ⇓β1 ⇓β2 h1 h2  /C G makes no difference: (β2 ∗ α2 ) ◦ (β1 ∗ α1 ) = (β2 ◦ β1 ) ∗ (α2 ◦ α1 ) Finally, two coherence axioms are required on the identities: first of all = 1 f2 ◦ 1 f1 1 f2 ◦ f1 for every pair of horizontal morphisms f1 : A −→ B and f2 : B −→ C, then 1A = 1idA requiring that the horizontal 2-dimensional identity 1A coincides with the vertical 2-dimensional identity 1idA on the 1-dimensional identity morphism idA : A −→ A, for every object A. Exercise. Show that every pair of morphisms h1 : A −→ B and h2 : C −→ D in a 2-category C defines a functor from the category C(B, C) to the category C(A, D) which transports every cell f B  ⇓α g 96 @C to the cell h2 ◦ f ◦h1 A  ?D ⇓1h2 ◦α◦1h1 h2 ◦g◦h1  5.9 The 2-category of monoidal categories and lax functors We start by recalling a well-known property of category theory: Proposition 8 Categories, functors and natural transformations define a 2category, noted Cat. Proof. The vertical composite θ ∗ ζ of two natural transformations ζ : F ⇒ G : C −→ D θ : G ⇒ H : C −→ D and is defined as the natural transformation θ∗ζ F⇒H : C −→ D : with components (θ ∗ ζ)A : ζA FA θA / GA / HA. The horizontal composite θ ◦ ζ of two natural transformations ζ : F1 ⇒ G1 : C −→ D θ : F2 ⇒ G2 : D −→ E and is defined as the natural transformation θ◦ζ F2 ◦ F1 ⇒ G2 ◦ G1 : C −→ E : with components (θ ◦ ζ)A : F2 F1 A G2 G1 A −→ defined as the diagonal of the commutative square F2 F1 A F 2 ζA θF1 A  G2 F1 A / F2 G1 A θG1 A G2 ζA 97  / G2 G1 A We leave the reader to check as an exercise that the constructions just defined satisfy the axioms of a 2-category.  The whole point of introducing the notion of 2-category in Section 5.8 is precisely that: Proposition 9 Monoidal categories, lax monoidal functors and monoidal natural transformations between lax monoidal functors define a 2-category, noted LaxMonCat. Proof. The composite of two lax monoidal functors (F, m) : (C, ⊗, e) −→ (D, •, u) and (G, n) : (D, •, u) −→ (E, ·, i) is defined as the composite G◦F of the two underlying functors F and G, equipped with the mediating maps: / G(FA • FB) n GFA · GFB Gm / GF(A ⊗ B) and n i / Gu Gm / GFe. The vertical and horizontal composition of monoidal natural transformations are defined just as in the 2-category Cat. We leave the reader to check that the vertical and horizontal composites of monoidal natural transformations define monoidal natural transformations, and from this, that the constructions satisfy the axioms of a 2-category.  It is not difficult to establish in the same way that Proposition 10 Symmetric monoidal categories, symmetric lax monoidal functors and monoidal natural transformations between lax monoidal functors define a 2-category, noted SymMonCat. Proposition 11 Symmetric monoidal categories, symmetric oplax monoidal functors and monoidal natural transformations between oplax monoidal functors define a 2-category, noted SymOplaxMonCat. Exercise. Show that every 2-category considered in this section: Cat LaxMonCat SymMonCat SymOplaxMonCat are cartesian as categories, and also as 2-categories. This means that every pair of objects A and B is equipped with two projection morphisms A×B π1 /A A×B π2 /B satisfying the following universal property: for every pair of vertical morphisms θf : f1 ⇒ f2 98 : X −→ A θg g1 ⇒ g2 : : X −→ B there exists a unique vertical morphism hθ f , θ g i h f1 , g1 i ⇒ h f2 , g2 i : : X −→ A × B satisfying the two equalities below: h f1 ,g1 i X X f1 # A; × B ⇓ hθ f , θ g i π1 /A = X ⇓ θf h f2 ,g2 i f2 h f1 ,g1 i g1 # A; × B ⇓ hθ f , θ g i π2 /B = X ⇓ θg  @A  @B g2 h f2 ,g2 i Show that every such cartesian 2-category is also a cartesian category [Hint: restrict the universality property to vertical identity morphisms.]  5.10 Adjunctions between functors By definition, an adjunction is a triple (F∗ , F∗ , φ) consisting of two functors F∗ : D −→ C F∗ : C −→ D and a family of bijections φA,B C(A, F∗ B)  D(F∗ A, B) : indexed by objects A of the category C, and objects B of the category D. The functor F∗ is called left adjoint to the functor F∗ , and one writes F∗ a F∗ . Besides, the family φ is required to be natural in A and B. This point is sometimes misunderstood, or simply forgotten. For that reason, we explain it briefly here. Suppose we have a morphism h : A −→ F∗ B in the category C, and a pair of morphisms hA : A0 −→ A in the category C and hB : B −→ B0 in the category D. The two morphisms hA and hB should be 99 understood as actions in the group-theoretic sense, transporting the morphism h to the morphism h0 = F∗ (hB ) ◦ h ◦ hA A0 −→ F∗ B0 . : The morphism h0 is alternatively defined as making the diagram / F∗ B h AO F∗ hB hA  / F∗ B0 0 h A0 commute in the category C. Note however that the action of hA and hB on the set C(A, F∗ B) is not exactly a group action, because the action transports an element h ∈ C(A, F∗ B) to an element h0 ∈ C(A0 , F∗ B0 ) of a potentially different set of morphisms. It is worth remembering at this point that a category may be seen as a monoid with several objects. Accordingly, the function C(A, F∗ B) −→ C(A0 , F∗ B0 ) defined by the action of hA and hB may be seen as component of a functor C(−, F∗ −) : Cop × D −→ Set where Set denotes the category with sets as objects, and functions as morphisms. This functor generalizes the familiar notion of group action to a setting with several objects. Thus, it may be called a categorical action of the categories Cop and D on the family of sets C(A, F∗ B). Naturality means that the bijection φ preserves this action of the categories Cop and D on the families of sets C(A, F∗ B) and D(F∗ A, B). Hence, expressed in a concise and conceptual fashion, naturality in A and B means that φ defines a natural transformation φ : C(−, F∗ −) ⇒ D(F∗ −, −) : Cop × D −→ Set. Equivalently, naturality in A and B means that the equality φA0 ,B0 (h0 ) = hB ◦ φA,B (h) ◦ F∗ (hA ) is satisfied, that is, that the diagram F∗O A φA,B (h) F∗ hA F∗ A0 /B hB φA0 ,B0 (h0 )  / B0 commutes in the category D, for all morphisms h, hA and hB . 100 5.11 Adjunctions in the language of 2-categories The definition of adjunction exposed in the previous section may be reformulated in an elegant and conceptual way, using the language of 2-categories. This reformulation is based on the observation • that an object A in the category C is the same thing as a functor [A] from the category 1 (the category with one object equipped with its identity morphism) to the category C, • that a morphism h : A −→ B in the category C is the same thing as a natural transformation [h] : [A] ⇒ [B] between the functors representing the objects A and B, • that the functor [A] : 1 −→ C composed with the functor F∗ : C −→ D coincides with the functor [F∗ A] associated to the object F∗ A = F∗ ◦ [A] [F∗ A] : 1 −→ D for every object A of the category C. And similarly, that = F∗ ◦ [B] [F∗ B] : 1 −→ C for every object B of the category D. Putting all this together, the adjunction φA,B becomes a bijection between the natural transformations [A] ⇒ F∗ ◦ [B] : 1 −→ C : 1 −→ C. and the natural transformations F∗ ◦ [A] ⇒ [B] Diagrammatically, the bijection φA,B defines a one-to-one relationship between the cells [A] -C O 1 ⇓ 1D [B] and the cells -C [A] 1 F∗ ⇓ F∗  1D [B] 101 in the 2-category Cat. Interestingly, it is possible to replace the category 1 by any category E in the bijection below. We leave the proof as pedagogical exercise to the reader. Exercise. Show that for every adjunction (F∗ , F∗ , φ) the family φ extends to a family (also noted φ) indexed by pairs of coinitial functors A : E −→ C B : E −→ D whose components φA,B define a bijection between the natural transformations A ⇒ F∗ ◦ B : E −→ C : E −→ C. and the natural transformations F∗ ◦ A ⇒ B Formulate accordingly the naturality condition on the extended family φ.  The discussion (and exercise) leads us to a pleasant definition of adjunction in a 2-category. From now on, we suppose given a 2-category C. An adjunction in the 2-category C is defined as a triple ( f∗ , f ∗ , φ) consisting of two morphisms f ∗ : D −→ C f∗ : C −→ D and a family of bijections φa,b : C(E, C)(a, f ∗ ◦ b)  C(E, D)( f∗ ◦ a, b) indexed by pairs of coinitial morphisms a : E −→ C b : E −→ D in the 2-category C. In that case, the morphism f∗ is called left adjoint to the morphism f ∗ in the 2-category C, and one writes f∗ a f ∗ . The family φ is required to be natural in a and b, in the following sense. Suppose that the bijection φa,b transports the cell θ to the cell ζ = φa,b (θ) — as depicted below. -C -C a a O E f∗ ⇓θ b φa,b E 7−→ 1D f∗ ⇓ζ b  1D Suppose given a morphism h : F −→ E and two cells α : a0 ⇒ a ◦ h : F −→ C β : b ◦ h ⇒ b0 : F −→ D 102 represented diagrammatically as: a0 a -" C ⇓α F /E h ⇓β b 1< D b0 Naturality in a and b means that the bijection φa,b preserves the actions of the cells α and β, in the following sense: the bijection φa0 ,b0 transports the cell θ0 obtained by pasting together the three cells α, β, θ to the cell ζ0 obtained by pasting together the three cells α, β, ζ — as depicted below. a0 a0 -" C O a ⇓α /E F ⇓α f∗ ⇓θ -" C a φa0 ,b0 7−→ /E F b 1< D f∗ ⇓ζ ⇓β ⇓β b  1< D b0 b0 Exercise. Show that the definition of adjunction given in Section 5.10 coincides with this definition of adjunction expressed in the 2-category Cat. Show moreover that the original formulation of naturality is limited to the instance in which E = F is the category 1 with one object, and h : F −→ E is the identity functor on that category.  5.12 Another formulation: the triangular identities As just defined in Section 5.11, suppose given an adjunction ( f∗ , f ∗ , φ) in a 2category C. The two cells η : idC ⇒ f ∗ ◦ f∗ ε : f∗ ◦ f ∗ ⇒ idD are defined respectively as the cells related to the vertical identity cells 1 f∗ and 1 f by the bijections φidC , f∗ and φ f ∗ ,idD — as depicted below. 103 ∗ -C O idC C 7−→ C 1D ⇓1 f ∗ φ f ∗ ,idD 7−→ f∗ D f∗  1D -C f∗ 1D idD ⇓1 f∗ f∗ -C O f∗ D φidC , f∗ f∗ ⇓η f∗ -C idC f∗ ⇓ε  1D idD This leads to a purely algebraic (and equivalent) definition of adjunction in the 2-category C. An adjunction is alternatively defined as a quadruple ( f∗ , f ∗ , η, ε) consisting of two morphisms: f ∗ : D −→ C f∗ : C −→ D and two cells η : idC ⇒ f ∗ ◦ f∗ ε : f∗ ◦ f ∗ ⇒ idD satisfying the two triangular identities below: (ε ◦ f∗ ) ∗ ( f∗ ◦ η) = 1 f∗ ( f ∗ ◦ ε) ∗ (η ◦ f ∗ ) = 1f and ∗ ∗ : C −→ D : D −→ C. ∗ The morphisms f ◦ f∗ and f∗ ◦ f are called the monad and the comonad of the adjunction, respectively. The cells η and ε are called respectively the unit of the monad f ∗ ◦ f∗ and the counit of the comonad f∗ ◦ f ∗ . Diagrammatically, the two triangular identities are represented as: idC idC ⇓η C f∗ /D f∗  /C f∗ /D D = C f∗ /D ⇓1 f∗  C ⇓ε idD idD 104 f∗ /D D idC idC ⇓η D f ∗ /C f∗ /D D f∗  /C = D f∗ /C ⇓1 f ∗ DD f∗  /C ⇓ε idD idD We leave to the reader (exercise below) the proof that this formulation of adjunction coincides with the previous one. Exercise. Show that the definition of adjunction based on triangular identities is equivalent to the definition of adjunction in a 2-category C formulated in Section 5.11.  5.13 A dual definition of adjunction The definition of adjunction formulated in Section 5.12 is not only remarkable for its conciseness; it is also remarkable for its self-duality. Notice indeed that an adjunction ( f∗ , f ∗ , η, ε) in a 2-category C induces an adjunction ( f∗ )op a ( f ∗ )op between the morphisms ( f∗ )op : D −→ C ( f ∗ )op : C −→ D in the 2-category Cop in which the direction of every morphism is reversed (but the direction of cells is maintained.) From this, it follows mechanically that the original definition of adjunction formulated in Section 5.11 may be dualized! An adjunction in a 2-category C is thus alternatively defined as a triple ( f∗ , f ∗ , ψ) consisting of two morphisms f ∗ : D −→ C f∗ : C −→ D and a family of bijections ψa,b : C(C, E)(a, b ◦ f∗ )  C(D, E)(a ◦ f ∗ , b) indexed by pairs of cofinal morphisms a : C −→ E, b : D −→ E in the 2-category C. The family ψ of bijections should be natural in a and b in a dualized sense of Section 5.11. Suppose that the bijection ψa,b transports the cell θ to the cell ζ = ψa,b (θ) — as depicted below. 105 a C f∗  E I ⇓θ  D a CO ψa,b f∗ 7−→ D b  E I ⇓ζ b Suppose given a morphism h : E −→ F and two cells α : a0 ⇒ h ◦ a : C −→ F β : h ◦ b ⇒ b0 : D −→ F represented diagrammatically as: a0 C a ⇓α  E I D h ⇓β  /F J b b0 Just as in Section 5.11, naturality in a and b means that the bijection ψa,b preserves the actions of the cells α and β. Namely, the bijection ψa0 ,b0 transports the cell θ0 obtained by pasting together the three cells α, β, θ to the cell ζ0 obtained by pasting together the three cells α, β, ζ — as depicted below. a0 a C f∗  D a0 ⇓α  E I ⇓θ ⇓β  /F J a CO ψa0 ,b0 7−→ f∗ D b b0 ⇓α  E I ⇓ζ ⇓β  /F J b b0 It is thus possible to define an adjunction as a triple ( f∗ , f ∗ , φ) in the style of Section 5.11, or as a triple ( f∗ , f ∗ , ψ) as just done here. Remarkably, the two bijections φ and ψ are compatible in the following sense. Suppose given two cells θ1 : f∗ ◦ a1 ⇒ b1 : E1 −→ D θ2 : a2 ◦ f ∗ ⇒ b2 : D −→ E2 depicted as follows: 106 -C O a1 E1 f∗ ⇓θ1 f∗ and  EG 2 ⇓θ2  D 1D b1 a2 C b2 The equality (ψa2 ,b2 (θ2 ) ◦ 1b1 ) ∗ (1a2 ◦ θ1 ) = (1b2 ◦ φa1 ,b1 (θ1 )) ∗ (θ2 ◦ 1a1 ) between cells a2 ◦ a1 ⇒ b2 ◦ b1 is then satisfied; diagrammatically speaking: .C O a1 E1 ⇓θ1 b1 f∗ a1 a2 ⇓ψ(θ2 ) 0D  EE 2 E1 = ⇓φ(θ1 ) b1 b2 .C f∗  0D a2  EE 2 ⇓θ2 b2 Exercise. Deduce the triangular identities of Section 5.12 from the compatibility just mentioned between the bijections φ and ψ.  5.14 Monoidal adjunctions Basically, the notion of monoidal adjunction is defined by instantiating the general definition of adjunction in a 2-category, to the particular 2-category LaxMonCat introduced in Section 5.9. Among the three equivalent definitions of adjunction, we choose to apply the definition based on triangular identities (in Section 5.11). This definition provides indeed a particularly simple formulation of monoidal adjunctions, seen as refinements of usual adjunctions in Cat. We will see later, in Section 5.16, how to characterize these monoidal adjunctions in a very simple way – this providing a precious tool for the construction of models of linear logic. Suppose given a pair of lax monoidal functors: (F∗ , m) : (C, ⊗, e) −→ (D, •, u) (F∗ , n) : (D, •, u) −→ (C, ⊗, e). A monoidal adjunction (F∗ , m) a (F∗ , n) between the lax monoidal functors is simply defined as an adjunction (F∗ , F∗ , η, ε) between the underlying functors F∗ : D −→ C F∗ : C −→ D whose natural transformations η : idC ⇒ F∗ ◦ F∗ ε : F∗ ◦ F∗ ⇒ idD are monoidal in the sense elaborated in Section 5.4. 107 5.15 A duality between lax and oplax monoidal functors As a preliminary step towards the characterization of monoidal adjunctions formulated next section, we establish the existence of a one-to-one relationship between the lax monoidal structures p equipping a right adjoint functor F∗ and the oplax monoidal structures n equipping a left adjoint functor F∗ between two monoidal categories. So, suppose given two monoidal categories (C, ⊗, e) and (D, •, u) as well as a functor F∗ : C −→ D left adjoint to a functor F∗ : D −→ C. Diagrammatically: F∗ Cf & ⊥ D F∗ In this situation, Proposition 12 Every lax monoidal structure (F∗ , p) on the functor F∗ induces an oplax monoidal structure (F∗ , n) on the functor F∗ , defined as follows: n2A,B : F∗ (A ⊗ B) F∗ (η⊗η) F∗ A •O F∗ B ε  F∗ p F∗ (F∗ F∗ A ⊗ F∗ F∗ B) n0 : F∗ p F∗ e / F∗ F∗ (F∗ A • F∗ B) ε / F∗ F∗ u / u. Conversely, every oplax monoidal structure (F∗ , n) on the functor F∗ induces a lax monoidal structure (F∗ , p) on the functor F∗ , defined as follows: p2A,B : F∗ A ⊗ F∗ B F∗ A •O F∗ B η F∗ (ε•ε)  F∗ F∗ (F∗ A ⊗ F∗ B) p0 : e η F∗ n / F∗ F∗ e / F∗ (F∗ F∗ A • F∗ F∗ B) F∗ n / F∗ u. Moreover, the two functions (p 7→ n) and (n 7→ p) are inverse, and thus define a one-to-one relationship between the lax monoidal structures on the functor F∗ and the oplax monoidal structures on the functor F∗ . Note that the oplax monoidal structure n may be defined alternatively from the lax monoidal structure p as the unique family of morphisms making the 108 diagrams η A⊗B η⊗η / F∗ F∗ (A ⊗ B) F∗ n  F∗ F∗ A ⊗ F∗ F∗ B p  / F∗ (F∗ A • F∗ B) η e / F∗ F∗ e p F∗ n  F∗ u  F∗ u = commute for all objects A and B of the category C. Conversely, the lax monoidal structure p may be defined from the oplax monoidal structure n as the unique family of morphism making the diagrams n F∗ (F∗ A ⊗ F∗ B) / F∗ F∗ A • F∗ F∗ B ε⊗ε F∗ p  F∗ F∗ (A • B) ε = F∗ e F∗ e F∗ p  / A•B n  F∗ F∗ u ε  /u commute for all objects A and B of the category D. Remark. Although we will not develop this point here, we should mention that Proposition 12 may be established by purely graphical means. Typically, the construction of n2A,B from p2A,B is depicted as a 3-dimensional string diagram F∗ F∗ ε p2A,B F∗ F∗ η B η F∗ B A A which should be read from left to right, as the transformation of F∗ (A) ⊗ F∗ (B) into F∗ (A ⊗ B). Note that the string itself represents the “trajectory” of the functor F∗ and of its right adjoint functor F∗ inside the diagram. The third dimension is used here to represent the cartesian product of the 2-category Cat, this transporting us in a 3-categorical situation. Exercise. Check that the two functions (p 7→ n) and (n 7→ p) of Proposition 12 are indeed inverse. Then, formulate the proof topologically using string diagrams.  109 5.16 A characterization of monoidal adjunctions Here, we suppose given two monoidal categories (C, ⊗, e) and (D, •, u) and a monoidal functor (F∗ , m) : (C, ⊗, e) −→ (D, •, u). Just as in Section 5.15, we suppose moreover that the functor F∗ is left adjoint to a functor F∗ : D −→ C. We investigate now when the adjunction F∗ a F∗ may be lifted to a monoidal adjunction (F∗ , m) a (F∗ , p). (55) Obviously, this depends on the lax structure p chosen to equip the functor F∗ . By Proposition 12 in Section 5.15, every such lax structure p is associated in a one-to-one fashion to an oplax structure n on the functor F∗ . Hence, the question becomes: when does a pair of lax and oplax structures m and n on the functor F∗ define a monoidal adjunction (F∗ , m) a (F∗ , p) by the bijection n 7→ p ? The answer to this question is remarkably simple. We leave the reader to establish as an exercise that: Exercise. Establish the two statements below: • the oplax structure n is right inverse to the lax structure m if and only if the natural transformation η is monoidal from the identity functor on the category C to the lax monoidal functor (F∗ , p) ◦ (F∗ , m), • the oplax structure n is left inverse to the lax structure m if and only if the natural transformation ε is monoidal from the lax monoidal functor (F∗ , m) ◦ (F∗ , p) to the identity functor on the category D. By the oplax structure n is right inverse to the lax structure m, we mean that the morphisms m2A,B ◦ n2A,B : m0 ◦ n0 : / F∗ A • F∗ B n F∗ (A ⊗ B) n F∗ e /u / F∗ (A ⊗ B) m / F∗ e m coincide with the identity for every pair of objects A and B of the category C. Similarly, by the oplax structure n is left inverse to the lax structure m, we mean that the morphisms n2A,B ◦ m2A,B : n0 ◦ m0 : / F∗ (A ⊗ B) m F∗ A • F∗ B u m 110 / F∗ e / F∗ A • F∗ B n n /u coincide with the identity for every pair of objects A and B of the category C.  This leads to the following characterization of monoidal adjunctions, originally noticed by Max Kelly. Proposition 13 Suppose given two monoidal categories (C, ⊗, e) and (D, •, u) and a lax monoidal functor (F∗ , m) : (C, ⊗, e) −→ (D, •, u). Suppose that the functor F∗ is left adjoint to a functor F∗ : D −→ C. Then, the adjunction F∗ a F∗ lifts to a monoidal adjunction (F∗ , m) a (F∗ , p) if and only if the lax monoidal functor (F∗ , m) is strong. In that case, the lax structure p is associated by the bijection of Proposition 12 to the oplax structure n = m−1 provided by the inverse of the lax structure m. In particular, the left adjoint functor (F∗ , m) is strongly monoidal in every monoidal adjunction (F∗ , m) a (F∗ , p). 5.17 Symmetric monoidal adjunctions The notion of symmetric monoidal adjunction is defined in the same fashion as for monoidal adjunctions, that is, by instantiating the general definition of adjunction in a 2-category, to the particular 2-category SymMonCat defined in Proposition 10 of Section 5.14. We explain briefly how the characterization of monoidal adjunctions formulated in the previous section is adapted to the symmetric case. The 2-category SymMonCat has symmetric monoidal categories as objects, symmetric monoidal functors as horizontal morphisms, and monoidal natural transformations as vertical morphisms. So, a symmetric monoidal adjunction is simply a monoidal adjunction (F∗ , m) a (F∗ , p) between two lax monoidal functors (F∗ , m) : (C, ⊗, e) −→ (D, •, u) (F∗ , p) : (D, •, u) −→ (C, ⊗, e) in which: 111 • the two monoidal categories (C, ⊗, e) and (D, •, u) are equipped with symmetries γ⊗ and γ• , • the two lax monoidal functors (F∗ , m) and (F∗ , p) are symmetric in the sense of Section 5.6. Symmetric monoidal adjunctions may be characterized in the same way as monoidal adjunctions in Proposition 13. The important point to observe is that in Proposition 12 of Section 5.15, the lax monoidal functor (F∗ , p) is symmetric if and only if the oplax monoidal functor (F∗ , n) is symmetric. This leads to the following variant of the previous proposition: Proposition 14 Suppose given two symmetric monoidal categories (C, ⊗, e) and (D, •, u) and a symmetric lax monoidal functor (F∗ , m) (C, ⊗, e) −→ (D, •, u). : Suppose that the functor F∗ is left adjoint to a functor F∗ D −→ C. : Then, the adjunction F∗ a F∗ lifts to a symmetric monoidal adjunction (F∗ , m) a (F∗ , p) if and only if the lax monoidal functor (F∗ , m) is strong. In that case, the lax structure p is associated by the bijection of Proposition 12 to the oplax structure n = m−1 provided by the inverse of the lax structure m. 5.18 Notes and references The notion of adjunction was formulated for the first time in 1958 in an article by Daniel Kan [58]. The 2-categorical definition of adjunction was introduced in a seminal article by Ross Street [84]. We do not introduce the notion of Kan extension in this chapter, although the trained reader will recognize them immediately in our treatment of adjunctions exposed in Section 5.11. In fact, our description of adjunctions may be understood as a bottom-up reconstruction of the notion of mate cell introduced by Ross Street in [84]. The interested reader will find the relationship between adjunctions and Kan extensions already mentioned in the original paper by Daniel Kan, as well as in Chapter 10 of MacLane’s book [66]. 112 6 Monoids and monads In this chapter, we recall the definitions and main properties of monoids and monads. Once dualized as comonoids and comonads, the two notions play a central role in the definition of the various categorical models of linear logic exposed in our next Chapter 7. 6.1 Monoids A monoid in a monoidal category (C, ⊗, 1) is defined as a triple (A, m, u) consisting of an object A and two morphisms /Ao u 1 m A⊗A making the associativity diagram / A⊗A m⊗A (A ⊗ A) ⊗ A α m  A ⊗ (A ⊗ A) / A⊗A A⊗m  /A m and the two unit diagrams / A⊗A o A⊗1 1 ⊗ AF x FF x x FF xx FF xx FF x m F xxρ λ FF xx FF x x FF F"  |xxx A A⊗u u⊗A commute. A monoid morphism f : (A, mA , uA ) −→ (B, mB , uB ) between monoids (A, mA , uA ) and (B, mB , uB ) is defined as a morphism f : A −→ B between the underlying objects in the category C, making the two diagrams A⊗A f⊗f / B⊗B uA mA  A mB f  /B A 113  1> >> >>uB >> >>  /B f commute. A monoid defined in a symmetric monoidal category (C, ⊗, 1) is called commutative when the diagram A ⊗ AE EE EE E m EEE E" γ A / A⊗A y y y yy y yy m y| y commutes. Exercise. Show that one retrieves the usual notions of monoid, of commutative monoid and of monoid morphism when one applies these definitions to the monoidal category (Set, ×, 1) with sets as objects, functions as morphisms, cartesian product as tensor product, and terminal object as unit.  6.2 The category of monoids One reason invoked by Jean Bénabou for introducing the notion of lax monoidal functor is its remarkable affinity with the traditional notion of monoid, see [11]. This affinity is witnessed by the following lifting property. To every monoidal category (C, ⊗, 1), one associates the category Mon(C, ⊗, 1) • with objects the monoids, • with morphisms the monoid morphisms. Then, every lax monoidal functor (F, n) : (C, ⊗, e) −→ (D, •, u) induces a functor Mon(F, n) : Mon(C, ⊗, e) −→ Mon(D, •, u) which transports a monoid (A, mA , uA ) to the monoid (FA, mFA , uFA ) defined as follows: mFA : FA ⊗ FA uFA : u n2 / F(A ⊗ A) FmA n0 / Fe / FA uA / FA We leave it to the reader to check that Mon(F, n) does indeed define a functor. This may be established directly by simple diagram chasing, or more conceptually by completing the exercise below. Exercise. Show that the category 1 consisting of one object and its identity morphism is monoidal. Show that a lax monoidal functor from the monoidal category 1 to a monoidal category C = (C, ⊗, 1) is the same thing as a monoid 114 in this category; and that the category LaxMonCat(1, C) coincides with the category Mon(C, ⊗, 1) with monoids as objects and monoid morphisms as morphisms. Deduce the existence of the functor Mon(F, n) from 2-categorical considerations.  Note that the category Mon(C, ⊗, 1) is not monoidal in general. However, the category becomes monoidal, even symmetric monoidal, when the underlying category (C, ⊗, 1) is symmetric monoidal. Proposition 15 Every symmetric monoidal category (C, ⊗, 1) induces a symmetric monoidal category Mon(C, ⊗, 1) with the monoidal unit defined as λ=ρ /1o id1 1 (56) 1⊗1 and the tensor product (A ⊗ B, mA⊗B , uA⊗B ) defined as uA⊗B : mA⊗B : ρ−1 =λ−1 1 (A ⊗ B) ⊗ (A ⊗ B) α  A ⊗ (B ⊗ (A ⊗ B)) A⊗α−1  A ⊗ ((B ⊗ A) ⊗ B) / 1⊗1 uA ⊗uB / A⊗B (A ⊗ A) ⊗ (B ⊗ B) O mA ⊗mB / A ⊗ B. α A ⊗ (A ⊗ (B ⊗ B)) O A⊗(γ⊗B) A⊗α / A ⊗ ((A ⊗ B) ⊗ B) as tensor product of two monoids (A, mA , uA ) and (B, mB , uB ). Moreover, the forgetful functor U : Mon(C, ⊗, 1) −→ (C, ⊗, 1) which transports a monoid (A, m, u) to its underlying object A is strict monoidal (that is, its coercion maps are provided by identities) and symmetric. We observed at the beginning of the section that every lax monoidal functor between monoidal categories (F, n) : (C, ⊗, e) −→ (D, •, u) lifts to a functor Mon(F, n) : Mon(C, ⊗, e) −→ Mon(D, •, u). We have seen moreover in Proposition 15 that when the monoidal categories (C, ⊗, e) and (D, •, u) are symmetric, they induce symmetric monoidal categories Mon(C, ⊗, e). In that situation, and when the lax monoidal functor (F, n) is symmetric, the functor Mon(F, n) lifts to a symmetric lax monoidal functor — equipped with the coercions n. This induces a commutative diagram of 115 symmetric lax monoidal functors: Mon(C, ⊗, e) Mon(F,n) / Mon(D, •, u) U U  (C, ⊗, e)  / (D, •, u) (F,n) A monoid in the category of monoid is the same thing as a commutative monoid: this phenomenon was first observed by Eckmann and Hilton. We suggest that the reader check this fact for himself in the following exercise. Exercise. Show that every commutative monoid in a symmetric monoidal category (C, ⊗, 1) lifts to a commutative monoid in the category Mon(C, ⊗, 1). Conversely, show that every monoid in the category Mon(C, ⊗, 1) is obtained in such a way. Conclude that the category Mon(Mon(C, ⊗, 1), ⊗, 1) is isomorphic (as a symmetric monoidal category) to the full subcategory of Mon(C, ⊗, 1) with commutative monoids as objects, equipped with the same monoidal structure as the surrounding category Mon(C, ⊗, 1).  André Joyal and Ross Street observe in [56] that the Eckmann-Hilton phenomenon applies also to monoidal categories: this says that a monoidal category in the 2-category of monoidal categories and strong monoidal functors, is the same thing as a braided monoidal category. The interested reader will check this fact in the following exercise. Exercise. A multiplication on a monoidal category (C, ⊗, e) is defined as a pair of strong monoidal functors (, m) : (C, ⊗, e) × (C, ⊗, e) −→ (C, ⊗, e) (u, n) : 1 −→ (C, ⊗, e) equipped with two monoidal natural transformations /C O id C ⇓λ   1×C u×C /C O id C    C×1 / C×C ⇓ρ C×u  / C×C Observe in particular that every multiplication includes an isomorphism mA,B,C,D : (A ⊗ B)  (C ⊗ D) −→ (A  C) ⊗ (B  D). natural in A, B, C and D. Now, show that every braiding γ on a monoidal category (C, ⊗, 1) induces a multiplication where the two binary products coincide AB := 116 A⊗B and mA,B,C,D makes the diagram commute mA,B,C,D (A ⊗ B) ⊗ (C ⊗ D) α / (A ⊗ C) ⊗ (B ⊗ D) α   A ⊗ (C ⊗ (B ⊗ D))  A ⊗ ((B ⊗ C) ⊗ D)  / A ⊗ ((C ⊗ B) ⊗ D) A ⊗ (B ⊗ (C ⊗ D)) A⊗α−1 A⊗α−1 A⊗(γB,C ⊗D) and the extra structure defined just as expected: λA := λ−1 A : A −→ 1 ⊗ A ρA := ρ−1 A : A −→ A ⊗ 1 u(∗) := e. Conversely, show that every multiplication on a monoical category (C, ⊗, 1) induces a braiding γ possibly formulated as a natural transformation γ C,C / C×C C × 7C 77  77   γ 77  7 ⇒ ⊗ ⊗ 77 77  7  C and defined by pasting the natural transformations C×C γC,C   1×C×C×1 id λ×ρ ⇒  γ1×C,C×1 u×C×C×u  C×C×C×C ) / C×C  / C×1×1×C C×u×u×C γC,C  / C×C×C×C ρ×λ ⇐ id ⊗×⊗ ×   u m C×C C × CO ⇒ OOO oo OO ooo o o ⊗ OO' wo C More on the topic will be found in the original article by Joyal and Street [56].  6.3 Comonoids Every category C defines an opposite category Cop obtained by reversing the direction of every morphism in the category C. The resulting category Cop has 117 the same objects as the category C, and satisfies = Cop (A, B) C(B, A) for all objects A and B. A remarkable aspect of the theory of monoidal categories is its self-duality. Indeed, every monoidal category (C, ⊗, e) defines a monoidal category (Cop , ⊗, e) on the opposite category Cop , with same tensor product and unit as in the original category C. From this, it follows that every notion formulated in the theory of “monoidal categories” may be dualized by reversing the direction of morphisms in the definition. This principle is nicely illustrated by the notion of comonoid, which is dual to the notion of monoid formulated in Section 6.1. Hence, a comonoid in a monoidal category (C, ⊗, 1) is defined as a triple (A, d, e) consisting of an object A and two morphisms 1o e / A⊗A d A making the associativity diagram / A⊗A d A / (A ⊗ A) ⊗ A d⊗A α d  A⊗A  / A ⊗ (A ⊗ A) A⊗d and the two unit diagrams 1⊗A o e⊗A A ⊗O A λ A⊗e / A⊗1 ρ d  Ao A id id  /A commute. A comonoid morphism f : (A, dA , eA ) −→ (B, dB , eB ) is defined as a morphism f : A −→ B between the underlying objects in the category C, making the two diagrams A f dA  A⊗A /B A> >> >> > eA >> > dB f⊗f  / B⊗B 118 f /B eB 1 commute. A comonoid defined in a symmetric monoidal category (C, ⊗, 1) is called commutative when the diagram yy yy y y yy y| y A⊗A d AE EE EE d EE EE E" / A⊗A γ commutes. 6.4 Cartesian categories among monoidal categories In a cartesian category, every object defines a comonoid. Conversely, it is useful to know when a monoidal category (C, ⊗, 1), in which every object defines a comonoid, is a cartesian category. This is precisely what the next proposition clarifies. Proposition 16 Let (C, ⊗, 1) be a monoidal category. The monoidal structure is cartesian (that is, the tensor product is a cartesian product, and the tensor unit is terminal) if and only if there exists a pair of natural transformations d and e with components dA : A −→ A ⊗ A eA : A −→ 1 such that: 1. (A, dA , eA ) is a comonoid for every object A, 2. the diagram A⊗B / (A ⊗ B) ⊗ (A ⊗ B) dA⊗B (A⊗eB )⊗(eA ⊗B) id  A⊗B o (57)  (A ⊗ 1) ⊗ (1 ⊗ B) ρ⊗λ commutes for all objects A and B, 3. the component e1 : 1 −→ 1 coincides with the identity morphism. Proof. The direction (⇒) is reasonably immediate, and we leave it as exercise to the reader. We prove the other more difficult direction (⇐). We show that for all objects A and B, the morphisms π1 : A⊗B π2 : A⊗B A⊗eB / A⊗1 ρ /A eA ⊗B / 1⊗B λ /B 119 define the two projections of a cartesian product. To that purpose, we need to show that for all morphisms f : X −→ A g X −→ B : there exists a unique morphism h f, gi X −→ A ⊗ B : making the diagram f X '  >>   >> e1 eA >>    1 commutes. From this and the hypothesis that e1 is the identity morphism follows that the morphism f necessarily coincides with the morphism eA . The tensor unit 1 is thus a terminal object of the category C. This concludes the proof of Proposition 16.  Remark. The first hypothesis of Proposition 16 that (A, dA , eA ) defines a comonoid may be replaced by the weaker hypothesis that the two diagrams A dA λ dA A eA ⊗A id  Ao / A⊗A / A⊗A A⊗eA id  1⊗A  Ao ρ  A⊗1 commute for every object A. Observe indeed that coassociativity of the comultiplication law dA is never used in the proof. This is essentially in this way that Albert Burroni formulated the result in his pioneering work on graphical algebras and recursivity [23]. Note moreover that one does not need to assume that the category (C, ⊗, 1) is symmetric monoidal nor that every object A defines a commutative comonoid, in order to state Proposition 16. However, the situation becomes nicely conceptual when the category (C, ⊗, 1) is equipped with a symmetry. In that case, indeed, the two endofunctors X 7→ X ⊗ X X 7→ 1 on the category C may be seen as lax monoidal endofunctors of the monoidal category (C, ⊗, 1). The coercions m of the functor X 7→ X ⊗ X are defined in a similar fashion as the product of two monoids in Proposition 15: m0 : m2A,B : ρ−1 =λ−1 1 (A ⊗ B) ⊗ (A ⊗ B) α  A ⊗ (B ⊗ (A ⊗ B)) A⊗α−1  A ⊗ ((B ⊗ A) ⊗ B) / 1⊗1 (A ⊗ A) ⊗ (B ⊗ B) O α A ⊗ (A ⊗ (B ⊗ B)) O A⊗(γ⊗B) 122 A⊗α / A ⊗ ((A ⊗ B) ⊗ B) (60) The coercion n of the functor X 7→ 1 is defined as the identity n0 : 1 −→ 1 and the morphism n2 = λ1 = ρ1 : 1 ⊗ 1 −→ 1. Note that the endofunctors X 7→ X ⊗ X and X 7→ 1 are strong and symmetric, but we do not care about this additional property here. The following result is folklore: Corollary 17 Let (C, ⊗, 1) be a symmetric monoidal category. The tensor product is a cartesian product and the tensor unit is a terminal object if and only if there exists a pair of monoidal natural transformations d and e with components dA : A −→ A ⊗ A eA : A −→ 1 defining a comonoid (A, dA , eA ) for every object A. Proof. The direction (⇒) is easy, and left as exercise to the reader. The other direction (⇐) is established by applying Proposition 16. To that purpose, we show that Diagram (57) commutes for all objects A and B, and that the component e1 coincides with the identity. This is deduced by an elementary diagram chasing in which the assumption that d and e are monoidal is here to ensure that e1 = id and that the diagram A⊗B dA ⊗dB / (A ⊗ A) ⊗ (B ⊗ B) α A ⊗ (A ⊗ (B ⊗ B))  A⊗α A ⊗ ((A ⊗ B) ⊗ B) −1  A⊗(γ⊗B) A ⊗ ((B ⊗ A) ⊗ B) id  A⊗α A ⊗ (B ⊗ (A ⊗ B))  A⊗B α / (A ⊗ B) ⊗ (A ⊗ B) −1 dA⊗B commutes for all objects A and B.  Remark. Note that the statement of Corollary 17 does not require the hypothesis that the comonoid (A, dA , eA ) is commutative. It is also interesting to notice that the hypothesis of monoidality of the natural transformations d and e is only used in the binary case for d and in the nullary case for e. In particular, the proof does not require the nullary case for d which states that the equality d1 = λ1 holds. Similarly, it does not require the binary case for e which states that the 123 diagram 1⊗1 v: eA ⊗eB vvv v vv vv λ=ρ A ⊗ BH HH HH H eA⊗B HHH H$  1 commutes for all object A and B. 6.5 The category of commutative comonoids To every symmetric monoidal category (C, ⊗, 1), we associate the category Comon(C, ⊗, 1) • with commutative comonoids as objects, • with comonoid morphisms as morphisms. The category Comon(C, ⊗, 1) is symmetric monoidal with the monoidal structure defined in Proposition 15 in Section 6.2 dualized. We establish below that the tensor product is a cartesian product, and that the tensor unit is a terminal object in the category Comon(C, ⊗, 1). This folklore property is deduced from Proposition 16. Corollary 18 The category Comon(C, ⊗, 1) is cartesian. Proof. Once dualized, Proposition 15 in Section 6.2 states that the category Comon(C, ⊗, 1) is symmetric monoidal. By definition, every object A of the category Comon(C, ⊗, 1) is a commutative comonoid A = (A, dA , eA ) of the underlying symmetric monoidal category (C, ⊗, 1). This commutative comonoid lifts to a commutative comonoid in the symmetric monoidal category Comon(C, ⊗, 1). This is precisely the content (once dualized) of the exercise appearing at the end of Section 6.2. Similarly, every morphism f : A −→ B in the category Comon(C, ⊗, 1) defines a comonoid morphism f : (A, dA , eA ) −→ (B, dB , eB ) in the underlying monoidal category (C, ⊗, 1). From this follows that f is a comonoid morphism f : (A, dA , eA ) −→ (B, dB , eB ) in the monoidal category Comon(C, ⊗, 1) itself. This proves that d and e are natural transformations in the category Comon(C, ⊗, 1). Finally, the construction of the monoids 1 and A ⊗ B in Proposition 15 in Section 6.2 implies that, 124 once dualized, Diagram (57) commutes for all objects A and B, and that the morphism e1 coincides with the identity. We apply Proposition 16 and conclude that in the category Comon(C, ⊗, 1), the tensor product is a cartesian product, and the tensor unit is a terminal object.  Corollary 19 A symmetric monoidal category (C, ⊗, 1) is cartesian if and only if the forgetful functor U : Comon(C, ⊗, 1) −→ C defines an isomorphism of categories. Exercise. By isomorphism of categories, we mean a functor U with an inverse, that is, a functor V such that the two composite functors U ◦ V and V ◦ U are the identity. Suppose that the functor (U, m) is strong monoidal and symmetric between symmetric monoidal categories — as this is the case in Corollary 19. Show that the inverse functor V lifts as a strong monoidal and symmetric functor (V, n) such that (U, m)◦(V, n) and (V, n)◦(U, m) are the identity functors, with trivial coercions. [Hint: use the fact that V is at the same time left and right adjoint to the functor U, with trivial unit η and counit ε, and apply Proposition 14 in Section 5.17, Chapter 5.]  Exercise. Establish the following universality property of the forgetful functor U above, understood as a symmetric and strict monoidal functor (U, p) whose coercion maps p are provided by identities. Show that for every oplax monoidal functor (F, m) : (D, ×, e) −→ (C, ⊗, 1) from a cartesian category (D, ×, e) to a symmetric monoidal category (C, ⊗, 1) there exists a unique symmetric oplax monoidal functor (G, n) : (D, ×, e) −→ Comon(C, ⊗, 1) making the diagram of symmetric oplax monoidal functors (G,n) (D, ×, e) / Comon(C, ⊗, 1) || (U,p) (F,m) (D, ×, e)  / (C, ⊗, 1) commute.  6.6 Monads and comonads A monad T = (T, µ, η) in a category C consists of a functor T : C −→ C and two natural transformations 125 µ : T◦T ⇒ T η : I ⇒ T making the associativity diagram Tµ T3 / T2 µ µT  T2  /T µ and the two unit diagrams ηT Tη / T2 o IT @ TI @@ ~ ~ @@ ~~ @@ ~~ @@ ~ µ ~~ idT @@ @@ ~~ idT ~ @@ ~~  ~~ T commute, where I denotes the identity functor on the category C. Exercise. Show that the category Cat(C, C) of endofunctors on a category C • with functors F : C −→ C as objects, • with natural transformations θ : F ⇒ G as morphisms, defines a strict monoidal category in which • the product F ⊗ G of two functors is defined as their composite F ◦ G, • the unit e is defined as the identity functor on the category C. Show that a monad on the category C is the same thing as a monoid in the monoidal category (Cat(C, C), ◦, I).  Dually, a comonad (K, δ, ε) in a category C consists of a functor K : C −→ C and two natural transformations δ : K ⇒ K◦K ε : K ⇒ I making the associativity diagram K δ δ  K2 / K2 Kδ δK 126  / K3 and the two unit diagrams εK Kε / KI IK `@o KO 2 @@ ~> ~ @@ ~~ @@ ~~ @@ ~ δ ~~ idK @@ @@ ~~ idK ~ @@ ~~ ~ K commute. We take this opportunity to indicate how these equalities would be depicted in the language of string diagrams. K K K K K δ δ δ = δ K K K K K K ε ε δ = K = δ K K Exercise. Show that a comonad on a category C is the same thing as a comonoid in its monoidal category (Cat(C, C), ◦, I) of endofunctors.  Exercise. Every object A in a monoidal category (C, ⊗, e) defines a functor X 7→ A ⊗ X : C −→ C. Show that this defines a strong monoidal functor from the monoidal category (C, ⊗, e) to its monoidal category (Cat(C, C), ◦, I) of endofunctors. Deduce that every monoid (A, m, u) in the monoidal category (C, ⊗, e) defines in this way a monad (T, µ, η) on the category C; and dually, that every comonoid (A, d, e) defines in this way a comonad (K, δ, ε) on the category C.  We have seen that a monad (resp. a comonad) over a category C is a monoid (resp. a comonoid) in the monoidal category Cat(C, C) of endofunctors and natural transformations. This leads to a generic notion of monad and comonad in a 2-category, developed in Section 6.9. 127 6.7 Monads and adjunctions Every adjunction F∗ Cf & ⊥ (61) D F∗ induces a monad (T, µ, η) on the category C and a comonad (K, δ, ε) on the category D, in which the functors T and K are the composites: T = F∗ ◦ F∗ K = F∗ ◦ F∗ and the two natural transformations η : 1C ⇒ F∗ ◦ F∗ ε : F∗ ◦ F∗ ⇒ 1D are constructed as explained in Section 5.12 of Chapter 5. Here, we use the notation 1C for the identity functor of the category C. The two natural transformations µ and δ are then deduced from η and ε by composition: µ = F∗ ◦ ε ◦ F∗ δ = F∗ ◦ η ◦ F∗ : : F∗ ◦ F∗ ◦ F∗ ◦ F∗ ⇒ F∗ ◦ F∗ F∗ ◦ F∗ ⇒ F∗ ◦ F∗ ◦ F∗ ◦ F∗ We leave the reader to check that, indeed, we have defined a monad (T, µ, η) and a comonad (K, δ, ε). The proof follows from the triangular equalities formulated in Chapter 5 (Section 5.12). It may also be performed at a more abstract 2-categorical level, as will be explored in Section 6.9. Conversely, given a monad (T, µ, η) on the category C, does there exist an adjunction (61) whose induced monad on the category C coincides precisely with the monad (T, µ, η). The answer happens to be positive, and positive twice: there exists indeed two different canonical ways to construct such an adjunction, each one based on a specific category CT and CT . F∗ Cf ⊥ G∗ ' Cf CT F∗ ⊥ ' CT G∗ The two categories are called: • the Kleisli category CT of the monad, • the Eilenberg-Moore category CT of the monad. The construction of the two categories CT and CT will be readily found in any textbook on category theory, like Saunders Mac Lane’s monograph [66] or Francis Borceux’s Handbook of Categorical Algebra [22]. However, we will define them in turn here. The reason is that, once dualized and adapted to comonads, the two categories CT and CT play a central role in the semantics of proofs in linear logic – as we will emphasized in our next Chapter 7. The Kleisli category CT has 128 • the same objects as the category C, • the morphisms A −→ B are the morphisms A −→ TB of the category C. Composition is defined as follows. Given two morphisms f : A −→ B g : B −→ C in the category CT , understood as morphisms f : A −→ TB g : B −→ TC in the category C, the morphism g◦ f A −→ C : in the category CT is defined as the morphism A f Tg / TB µ / TTC / TC. The identity on the object A is defined as the morphism ηA : A −→ TA in the category C. Exercise. Prove that the composition law defines indeed a category CT . Observe in particular that proving associativity of the composition law leads to consider the diagram 3 7T D ooo T h ooo o Tµ ooo  ooo 2 2 T C T 7 D oo7 ooo o Tg ooo o Th µ µ oo oo ooo ooo o o o o   o o 7 TC 8 TB o n7 TD p o p o nnn f ppp g ooo n h n p p oo nn ppp nnn ooo ppp nnn ooo B D C A 2 in the category C, and to check that the two morphisms from A to TD coincide. Here, we write T2 and T3 for the composite functors T2 = T◦T and T3 = T◦T◦T.  The right adjoint functor CT F∗ 129 /C transports every object A of the Kleisli category CT to the object TA of the category C, and every morphism f A −→ B : in the category CT understood as a morphism f A −→ TB : in the category C, to the morphism F∗ ( f ) = Tf TA µ / T2 B / TB in the category C. The left adjoint functor / CT F∗ C transports every object A of category C to the same object A of the Kleisli category CT ; and every every morphism f A −→ B : in the category C, to the morphism F∗ ( f ) : f A ηB /B / TB in the category C, understood as a morphism A −→ B in the category CT . The Eilenberg-Moore category CT has • the algebras of the monad (T, µ, η) as objects, • the algebra morphisms as morphisms. An algebra of the monad (T, µ, η) is defined as a pair (A, h) consisting of an object A of the category C, and a morphism h : TA −→ A making the two diagrams T2 A >TAAA AA }} } ηA }} AAh AA } } AA } } A }} /A A µA h Th  TA id 130 / TA h  /A commute in the category C. An algebra morphism f (A, hA ) −→ (B, hB ) : is defined as a morphism f : A −→ B between the underlying objects in the category C, making the diagram Tf TA hA / TB hB  A f  /B commute. The right adjoint functor /C G∗ CT is called the forgetful functor. It transports every algebra (A, h) to the underlying object A, and every algebra morphism f (A, hA ) −→ (B, hB ) : to the underlying morphism f : A −→ B. The left adjoint functor G∗ C / CT is called the free functor. It transports every object A to the algebra µA : T2 A −→ TA This algebra (TA, µA ) is called the free algebra associated to the object A. Every morphism f : A −→ B of the category C is transported by the functor G∗ to the algebra morphism T f : (TA, µA ) −→ (TB, µB ). Exercise. Check that the pair (TA, µA ) defines indeed an algebra of the monad (T, µ, η); and that the morphism T f : TA −→ TB defines an algebra morphism between the free algebras (TA, µA ) and (TB, µB ).  Exercise. Show that the morphisms f : A −→ B of the Kleisli category CT may be alternatively defined as the morphisms f : TA −→ TB 131 of the underlying category C making the diagram Tf T2 A / T2 B µA µB  TA  / TB f commute. Reformulate in this setting the composition law previously defined for the Kleisli category CT . Deduce that there exists a full and faithful functor from the Kleisli category CT to the category CT of Eilenberg-Moore algebras, transporting every object A to its free algebra (TA, µA ). This formulation enables to see the Kleisli category CT as a category of free algebras for the monad (T, µ, η).  It is folklore in category theory that: • the adjunction F∗ a F∗ based on the Kleisli category CT is initial among all the possible “factorizations” of the monad (T, δ, ε) as an adjunction, • the adjunction G∗ a G∗ based on the Eilenberg-Moore category CT is terminal among all the possible “factorizations” of the monad (T, δ, ε) as an adjunction. We will not develop this point here, although it is a fundamental aspect of the topic. The interested reader will find a nice exposition of the theory in Mac Lane’s monograph [66]. 6.8 Comonads and adjunctions Because we are mainly interested in the categorical semantics of linear logic, we will generally work with a comonad (K, δ, ε) on a category C of proof invariants, instead of a monad (T, µ, η). This does not matter really, since a comonad on the category C is the same thing as a monad on the opposite category Cop . Consequently, the two constructions of a Kleisli category CT and of an EilenbergMoore category CT for a monad, dualize to: • a Kleisli category CK , • a category CK of Eilenberg-Moore coalgebras for the comonad (K, δ, ε) with the expected derived adjunctions: F∗ CK g ⊥ G∗ & CK g C ∗ ⊥ G∗ F 132 & C The Kleisli category CK has: • the objects of the category C as objects, • the morphisms KA −→ B as morphisms A −→ B. The Eilenberg-Moore category CK has • the coalgebras of the comonad (K, δ, ε) as objects, • the coalgebra morphisms as morphisms. A coalgebra of the comonad (K, δ, ε) is defined as a pair (A, h) consisting of an object A of the category C, and a morphism h : A −→ KA making the two diagrams h A >KAAA AA }} } AAεA h }} AA } } AA }} A } } /A A δ h  KA id / KA Kh  / K2 A commute in the category C. A coalgebra morphism f : (A, hA ) −→ (B, hB ) is defined as a morphism f : A −→ B between the underlying objects in the category C, making the diagram A f hA  KA /B hB Kf  / KB commute. 6.9 Symmetric monoidal comonads The notion of symmetric monoidal comonad plays a central role in the definition of a linear category, the third axiomatization of linear logic presented in Chapter 7. Instead of explaining the notion directly, we proceed as in Chapter 5 and define on the first hand a generic definition of comonad (k, δ, ε) over an object C in a 2-category C. This 2-categorical definition of comonad generalizes 133 the definition of comonad exposed previously: indeed, a comonad in the sense of Section 6.6 is the same thing as a comonad in the 2-category Cat of categories, functors, and natural transformations. A symmetric monoidal comonad is then defined as a comonad in the 2-category SymMonCat of symmetric monoidal categories, lax monoidal functors, and monoidal natural transformations, introduced in Proposition 10, at the end of Section 5.9. The general definition of a comonad in a 2-category is nice and conceptual. Every object C in a 2-category C induces a strict monoidal category C(C, C) with objects the horizontal morphisms f C −→ C : with morphisms the cells θ f ⇒g : : C −→ C and with monoidal structure provided by horizontal composition in the 2-category C. A comonad on the object C is then simply defined as a comonoid of this monoidal category C(C, C). This elegant and concise definition may be expounded in the following way. A comonad on the object C is the same thing as a triple (k, ε, δ) consisting of a horizontal morphism k : C −→ C and two vertical cells ε and δ depicted as k /C ⇑ δ C k k  /C @ ⇓ ε idC satisfying the following equalities, expressing associativity: /C ?   ⇓ δ    k  k k     ⇓ δ     /C C k CO k /C CO ? ?? ?? ?? ⇓ δ ?? ?? k ?? k k ?? ?? ?? ⇓ δ ?? ?  /C C k = k and the two unit laws: 134 k ⇓ δ C k ⇓ ε /C G k k k /C = idC C  @C ⇓ 1k ⇓ δ = C k /C k ⇓ ε /C G idC k A monad on the object C is defined in a similar fashion, as a monoid in the monoidal category C(C, C). Exercise. Show that every adjunction f∗ a f ∗ between morphisms f∗ : C −→ D and f ∗ : D −→ C in a 2-category C induces a monad on the object C and a comonad on the object D.  The converse statement is studied next section. 6.10 Symmetric monoidal comonads and adjunctions Every adjunction in a 2-category C induces a monad and a comonad in the 2categorical sense. Conversely, we have seen in Section 6.6 that every comonad K over a category C induces two particular adjunctions: 1. an adjunction with the Kleisli category CK , 2. an adjunction with the category of Eilenberg-Moore coalgebras CK . Besides, the comonad associated to each adjunction is precisely the comonad K. This well-known fact about comonads in the 2-category Cat is not necessarily true in an arbitrary 2-category C. In particular, the statement becomes only half-true (and thus, half-false) for a comonad in the 2-category SymMonCat. It is worth clarifying this important point here. Consider the forgetful 2-functor U : SymMonCat −→ Cat which transports every symmetric monoidal category to its underlying category. Because this operation is 2-functorial, it transports every comonad K in SymMonCat to a comonad UK in Cat. This comonad UK generates two adjunctions in Cat, one for each of the two categories CUK and CUK . The question is whether each of these two adjunctions in Cat lifts to adjunctions in SymMonCat. It appears that it is not necessarily the case: a general 2-categorical argument developed by Stephen Lack in [62] demonstrates that the adjunction with the category CUK of Eilenberg-Moore coalgebras lifts to an adjunction 135 in SymMonCat (L,m) (CK , ⊗K , 1) d $ (C, ⊗, 1) ⊥ (62) (M,n) whereas the adjunction with the Kleisli category CUK does not necessarily lift to an adjunction in SymMonCat. In the symmetric monoidal adjunction (62), the category CUK = CK is equipped with the symmetric monoidal structure: A⊗B hA  KA hA ⊗hB B A K ⊗ hB  KB = 1  KA ⊗ KB m0  K1 mA,B  K(A ⊗ B) (63) On the other hand, the adjunction between C and its Kleisli category CK does not lift in general to a symmetric monoidal adjunction. However, we may proceed dually, and define an oplax symmetric monoidal comonad as a comonad in the 2-category SymOplaxMonCat of symmetric monoidal categories, oplax monoidal functors, and monoidal natural transformations introduced in Proposition 11, at the very end of Section 5.9. Interestingly, the same 2-categorical argument by Stephen Lack applies by duality, and shows that (dually to the previous case) the adjunction with the Kleisli category CUK lifts to an adjunction in SymOplaxMonCat (L,m) (CK , ⊗K , 1) d ⊥ $ (C, ⊗, 1) (M,n) whereas the adjunction between C and its Eilenberg-Moore category CK does not lift in general to such a symmetric oplax monoidal adjunction. Here, the monoidal structure of the category C lifts to the Kleisli category CK of the symmetric oplax monoidal comonad ((K, n), δ, ε) in the following way. Every pair of morphisms f : A −→ A0 and g : B −→ B0 in the category CK may be seen alternatively as a pair of morphisms f : KA −→ A0 and 136 g : KB −→ B0 in the category C. The morphism f ⊗K g in the category CK is defined as the morphism f ⊗K g : n2A,B K(A ⊗ B) f ⊗g / (KA ⊗ KB) / A0 ⊗ B0 (64) in the category C. 6.11 A useful property of retractions between coalgebras In this section, we suppose given a comonad (K, µ, η) on a category C. We also suppose given two coalgebras (A, hA ) and (B, hB ) and a retraction i idA r A −→ B −→ A = A −→ A between the underlying objects. We establish the following useful property. Proposition 20 Suppose that i is a coalgebra morphism i (A, hA ) −→ (B, hB ). : Then, for every coalgebra (X, hX ) and morphism f : X −→ A the two following statements are equivalent: • the morphism f is a coalgebra morphism f (X, hX ) −→ (A, hA ) : • the composite morphism i ◦ f is a coalgebra morphism i◦ f : (X, hX ) −→ (B, hB ). Proof. The direction (⇒) is immediate: the morphism i ◦ f the composite of two coalgebra morphisms when f is a coalgebra morphism. As such, it is a coalgebra morphism. The direction (⇐) is less obvious to establish. Suppose that i ◦ f is a coalgebra morphism. This means that the diagram X f /A i hB hX  KX /B Kf / KA 137 Ki  / KB (65) commutes. From this follows that the diagram f X /A /B i hX hB  KX / KA o Kf Kr (66)  KB commutes, by post-composing with Kr and applying the equality = Kr ◦ Ki K(r ◦ i) = idKA . At this point, one applies the hypothesis that the morphism i is a coalgebra morphism, and consequently, that the diagram A i hA  KA /B hB Ki  / KB commutes. This implies that the diagram A i hA  KA o /B hB Kr (67)  KB by applying the same recipe as previously to deduce Diagram (66) from Diagram (65). Putting together Diagram (66) and Diagram (67) one obtains that the diagram X f hA hX  KX /A Kf 138  / KA commutes. This establishes that the morphism f is a coalgebra morphism.  Remark. Proposition 20 may be reformulated as a lifting property of the coalgebra morphism i. The lifting property states that every coalgebra morphism g (X, hX ) : −→ (B, hB ) lifts as a morphism f along the morphism i in the category CK of EilenbergMoore coalgebras, when it lifts as the morphism f along the morphism i in the underlying category C. Diagrammatically, this means that every time a diagram (X, hX ) 99 99 99 99g 99 99 99  / (B, hB ) (A, hA ) i in the category CK of Eilenberg-Moore coalgebras is transported by the forgetful functor to the fragment of a commuting diagram f A  X1 11 11 11 g 11 11 11  /B (68) i in the category C, the original diagram may be also completed as a commuting diagram (X, hX ) 99  99   99   f  99g  99 (69)   99   99    / (A, hA ) (B, hB ) i in the category CK of Eilenberg-Moore coalgebras. Furthermore, the resulting Diagram (69) is transported to the Diagram (68) by the forgetful functor — this simply meaning in this case that the morphism f obtained by lifting g along i is a coalgebra morphism. 139 7 Categorical models of linear logic We review here three alternative categorical semantics of linear logic: Lafont categories, Seely categories, and Linear categories. We show that, in each case, the axiomatization induces a symmetric monoidal adjunction (L, m) a (M, n) between the symmetric monoidal closed category of denotations L and a specific cartesian category M. The reader starting at this point will find in Section 5.17 of Chapter 5 the definition and characterization of a symmetric monoidal adjunction. Definition 21 A linear-non-linear adjunction is a symmetric monoidal adjunction between lax symmetric monoidal functors (L,m) (M, ×, e) * ⊥ j (L, ⊗, 1) (70) (M,n) in which the category M is equipped with a cartesian product × and a terminal object e. The notations L and M are mnemonics for Linearization and Multiplication. Informally, the functor M transports a linear proof — which may be used exactly once as hypothesis in a reasoning — to a multiple proof — which may be repeated or discarded. Conversely, the functor L transports a multiple proof to a linear proof — which may then be manipulated as a linear entity inside the symmetric monoidal closed category L. This categorical machinery captures the essence of linear logic: it works just like a weaving loom, producing the linguistic texture of proofs by back and forth application of the functors L and M, all the logical rules occurring in L, all the structural rules occurring in M. The exponential modality ! of linear logic is then interpreted as the comonad on the category L defined by composing the two functors of the adjunction: ! = L ◦ M. This factorization of the modality is certainly one of the most interesting aspects of the categorical semantics of linear logic: we will start the chapter by studying in Section 7.1 one of its noteworthy effects. Seen from that point of view, each categorical semantics of linear logic provides a particular recipe to construct a cartesian category (M, ×, e) and a monoidal adjunction (L, m) a (M, n) starting from the symmetric monoidal category (L, ⊗, e): • Lafont category: the category M is defined as the category Comon(L, ⊗, e) with commutative comonoids of the category (L, ⊗, e) as objects, and comonoid morphisms between them as morphisms, 140 • Seely category: the category M is defined as the Kleisli category L! associated to the comonad ! which equips the category L in the definition of a Seely category (here, one needs to replace Seely’s original definition by the definition of a new-Seely category advocated by Bierman in [16]). • Linear category: the category M is defined as the category L! of EilenbergMoore coalgebras associated to the symmetric monoidal comonad ! which equips the category L in the definition of a Linear category. We recall here how symmetric monoidal adjunctions are characterized by Proposition 14 in Section 5.17 of Chapter 5: an adjunction between functors LaM lifts to a symmetric monoidal adjunction (L, m) a (M, n) if and only if the monoidal functor (L, m) : (M, ×, e) −→ (L, ⊗, 1) is symmetric and strong monoidal. The purpose of each axiomatization of linear logic is thus to provide what is missing (not much!) to be in such a situation. • Lafont category: the category M = Comon(L, ⊗, e) associated to a given symmetric monoidal category (L, ⊗, e) is necessarily cartesian; and the forgetful functor L from Comon(L, ⊗, e) to (L, ⊗, e) is strict monoidal and symmetric. Thus, the only task of Lafont’s axiomatization is to ensure that the forgetful functor L has a right adjoint M. • Seely category: given a comonad (!, ε, δ) on the category L, there exists a canonical adjunction L a M between the category L and its Kleisli category M = L! . Moreover, since the category L is supposed to be cartesian in the definition of a Seely category, its Kleisli category L! is necessarily cartesian. The only task of the axiomatization is thus to ensure that the functor L is strong monoidal and symmetric. • Linear category: given a symmetric monoidal comonad (!, ε, δ, p) on the symmetric monoidal category (L, ⊗, e), there exists a canonical symmetric monoidal adjunction (L, m) a (M, n) between the symmetric monoidal category (L, ⊗, e) and its category M = L! of Eilenberg-Moore coalgebras. The category L! is equipped with the symmetric monoidal structure induced from (L, ⊗, e). The only task of the axiomatization is thus to ensure that this symmetric monoidal structure on the category L! defines a cartesian category. The reader will find the notions of symmetric monoidal comonad, of Kleisli category, and of category of Eilenberg-Moore coalgebras, introduced in the course of Chapter 5 and Chapter 6. 141 7.1 The transmutation principle of linear logic One fundamental principle formulated by Jean-Yves Girard in his original article on linear logic [40] states that the exponential modality ! transports (or transmutes in the language of alchemy) the additive connective & and its unit > into the multiplicative connective ⊗ and its unit 1. This means formally that there exists a pair of isomorphisms !A⊗!B  !(A&B) 1  !> (71) for every formula A and B of linear logic. Quite remarkably, the existence of these isomorphisms may be derived from purely categorical principles, starting from the slightly enigmatic factorization of the exponential modality as ! = L ◦ M. We find useful to start the chapter on this topic, because it demonstrates the beauty and elegance of categorical semantics. At the same time, this short discussion will provide us with a categorical explanation (instead of a prooftheoretic one) for the apparition of the isomorphisms (71) in any cartesian category of denotations L — and will clarify the intrinsic nature and properties of these isomorphisms. In order to interpret the additive connective & and unit > of linear logic, we suppose from now on that the category of denotations L is cartesian, with: • the cartesian product of a pair of objects A and B noted A&B, • the terminal object noted >. We took the opportunity of the series of exercises at the end of Section 5.2, of Section 5.5 and of Section 5.6, to establish the two remarkable facts below: Proposition 22 The two following statements hold: • every functor F between cartesian categories lifts as a symmetric oplax monoidal functor (F, j) in a unique way, • every natural transformation between two such symmetric oplax monoidal functors is monoidal. From this, it follows easily that the adjunction L Mf ⊥ & L M lifts as a symmetric and oplax monoidal adjunction: 142 (L, j) (M, ×, e) ⊥ j * (L, &, >) (M,k) between the cartesian categories (M, ×, e) and (L, &, >) seen as symmetric monoidal categories. By symmetric oplax monoidal adjunction, we mean an adjunction in the 2-category SymOplaxMonCat defined in Proposition 11, at the very end of Section 5.9. By duality, such an adjunction is characterized in Proposition 14 of Section 5.17 as an adjunction in which the right adjoint functor (M, k) is strong monoidal and symmetric. By this slightly sinuous path, we get another proof of the well-known principle that right adjoint functors preserve limits (in that case, the cartesian products and the terminal object) modulo isomorphism. Thus, taken separately, each of the two functors appearing in the symmetric monoidal adjunction (M,k) (L, &, >) (L,m) / (M, ×, e) / (L, ⊗, e) is strong monoidal and symmetric. From this follows that their composite (!, p) = (L, m) ◦ (M, k) : (L, &, >) / (L, ⊗, e) is also strong monoidal and symmetric. By the definition of such a functor, the monoidal structure p defines a pair of isomorphisms p2A,B : !A⊗!B −→ !(A&B)  p0 : 1 −→ !>  natural in the objects A and B of the category L, and satisfying the coherence axioms formulated in Section 5.1 and Section 5.6. 7.2 Lafont categories A Lafont category is defined as a symmetric monoidal closed category (L, ⊗, 1) in which the forgetful functor U : Comon(L, ⊗, 1) −→ L has a right adjoint. In that case, the right adjoint functor ! is called a free construction, because it associates the free commutative comonoid !A to any object A of the category L. Equivalently, a Lafont category is defined as a symmetric monoidal closed category (L, ⊗, 1) in which there exists for every object A of the category, a commutative comonoid !A = (!A, dA , eA ) and a morphism εA : !A −→ A 143 satisfying the following universality property: for every commutative comonoid X = (X, d, e) and for every morphism f = X −→ A there exists a unique comonoid morphism f† : (X, d, e) −→ (!A, dA , eA ) making the diagram 5 !A f † llll ll l l lll εA X RRRR RRR RRR  R) f A commute in the category L. The statement of Proposition 15 originally formulated for commutative monoids in Section 6.2 may be adapted by duality to commutative comonoids. The resulting proposition states that the forgetful functor U is strict monoidal and symmetric. From this and Proposition 14 follows that the adjunction U a ! between the forgetful functor and the free construction lifts to a symmetric monoidal adjunction: (L,m) (Comon(L, ⊗, 1), ⊗, 1) g ⊥ ' (L, ⊗, 1) (M,n) where the functor L is defined as the forgetful functor U from the category Comon(L, ⊗, 1) of commutative comonoids to the underlying symmetric monoidal category (L, ⊗, 1). Finally, we apply Corollary 18 in Section 6.5 and deduce that the category Comon(L, ⊗, 1) is cartesian. This establishes that Proposition 23 Every Lafont category defines a linear-non-linear adjunction, and thus, a model of intuitionistic linear logic. Remark. One well-known limitation of this categorical axiomatization is that the exponential modality is necessarily interpreted as a free construction. This limitation is problematic is many concrete case studies, especially in game semantics, where several exponential modalities may coexist in the same category L, each of them expressing a particular duplication policy: repetitive vs. non repetitive, uniform vs. non uniform, etc. The interested reader will find more about this topic here [53, 70]. It is thus useful to point out that the category 144 Comon(L, ⊗, 1) may be replaced by any full subcategory M closed under tensor product and containing the unit comonoid 1. In that situation, the original definition of Lafont category is conveniently extended to the following definition of what we called “new-Lafont category” in [72]: a symmetric monoidal closed category (L, ⊗, 1) satisfying the additional property that the (restriction to M of the) forgetful functor U : M −→ L has a right adjoint. As previously, this definition may be stated alternatively as a universality property of the morphism εA : !A −→ A with respect, this time, to the commutative comonoids (X, d, e) appearing in the subcategory M, instead of all the commutative comonoids. We leave the reader check that Proposition 23 adapts smoothly to this new definition. This extended definition of Lafont category is very useful: we will see for instance in Chapter 8 that it axiomatizes properly the qualitative (or set-theoretic) modality !set on coherence spaces. We will also take advantage of this extended definition later in this chapter, when we crossbreed the two definitions of Lafont and of Seely category in Section 7.5. 7.3 Seely categories A Seely category is defined as a symmetric monoidal closed category (L, ⊗, 1) with finite products (binary product noted A&B and terminal object noted >) together with 1. a comonad (!, δ, ε), 2. two natural isomorphisms m2A,B : m0 !A⊗!B  !(A&B) : 1  !> making (!, m) : (L, &, >) −→ (L, ⊗, 1) a symmetric monoidal functor. Finally, one asks that the coherence diagram !A⊗!B m / !(A&B) δA&B  !!(A&B) δA ⊗δB  !!A⊗!!B !h!π1 ,!π2 i m 145  / !(!A&!B) (72) commutes in the category L for all objects A and B. Recall from Chapter 5 that our hypothesis that the functor (!, m) is symmetric monoidal means that the four diagrams α (!A⊗!B)⊗!C / !A ⊗ (!B⊗!C) m⊗!C !A⊗m  !(A&B)⊗!C  !A⊗!(B&C) m m  !((A&B)&C) !A ⊗ 1 ρ / !A O m⊗!B γ m m !γ (74) / !(>&B) / !B⊗!A m  !(A&B) / !B O !λ  !>⊗!B / !(A&>) !A⊗!B λ 1⊗!B !ρ m  / !(A&(B&C)) !α !A⊗m  !A⊗!> (73) (75)  / !(B&A) commute in the category L for all objects A, B and C. A general categorical argument explained in the course of Section 6.7 and Section 6.8 establishes that the comonad (!, δ, ε) generates an adjunction L L! ` ⊥ L (76) M between the original category L and the Kleisli category L! associated to the comonad. At this point, we want to show that the adjunction (76) defines a linear-non-linear adjunction. To that purpose, we need to establish two properties in turn: 1. that the Kleisli category L! is cartesian, 2. that the adjunction (76) lifts to a symmetric lax monoidal adjunction. The Kleisli category L! is cartesian. The proof is not particularly difficult. By definition of Seely category, the category L is cartesian, with finite products noted (&, >). As a right adjoint functor, the functor M preserves limits, and in 146 particular finite products. This establishes that the image A&B = M(A&B) of the cartesian product A&B of the objects A and B in the category L defines a cartesian product of the objects A = M(A) and B = M(B) in the category L! . Similarly, the image > = M(>) of the terminal object > in the category L is a terminal object in the category L! . This establishes that the category L! is cartesian, with finite products (&, >) inherited from the category L. Note that the argument is quite general: it shows indeed that the Kleisli category CK induced by a comonad K in a cartesian category C inherits the cartesian structure from C. Although the proof is completed, it is worth explaining for illustration how the cartesian product & lifts from a bifunctor on the category L to a bifunctor on the category L! . Every pair of morphisms f : A −→ A0 and g : B −→ B0 (77) in the category L! may be seen alternatively as a pair of morphisms f : !A −→ A0 and g : !B −→ B0 in the category L. The morphism f &g in the category L! is then defined as the morphism f &g : !(A&B) h!π1 ,!π2 i / (!A&!B) f &g / A0 &B0 (78) in the category L. This is related to the discussion at the end of Section 6.10. The lifting property mentioned in Proposition 22 of Section 7.1 implies that the comonad ! on the cartesian category L lifts (in a unique way) to a symmetric oplax monoidal comonad (!, n) on the symmetric monoidal category (L, &, >). The coercion n is provided by the family of morphisms n2A,B : !(A&B) h!π1 ,!π2 i / !A&!B where π1 and π2 denote the two projections of the cartesian product, and h−, −i denotes the pairing bracket; and by the unique morphism n0 : !> /> to the terminal object. The definition (78) of f &g is thus an instance of the definition (64) of a tensor product ⊗K for the Kleisli category CK associated to a symmetric oplax monoidal monad K, exposed at the end of Section 6.10. The adjunction (76) lifts to a symmetric lax monoidal adjunction. We have just established that the Kleisli category L! associated to the comonad ! is cartesian. We still need to show that the adjunction (76) lifts to a symmetric 147 monoidal adjunction (L,m) (L! , &, >) d $ (L, ⊗, 1) ⊥ (M,n) in order to establish that every Seely category induces a linear-non-linear adjunction. Our characterization of symmetric monoidal adjunctions in Proposition 14 (Section 5.17) ensures that this reduces to showing that the functor L equipped with a particular family m of isomorphisms in L defines a strong monoidal functor. The axioms of a Seely category are precisely intended to provide these isomorphisms m. One main difficulty in order to establish that (L, m) defines a strong monoidal functor, is to show that the family of isomorphisms m is natural with respect to the category L! and not only with respect to the category L. The functor L transports every morphism f A −→ B : of the category L! seen alternatively as a morphism f !A −→ B : of the category L, to the morphism L( f ) : δA !f !A −→ !!A −→ !B of the category L. Thus, naturality of m with respect to the category L! means that the following diagram !A⊗!B m / !(A&B) δ δ⊗δ  !!(A&B)  !!A⊗!!B  !(!A&!B) !h!π1 ,!π2 i ! f ⊗!g  !A0 ⊗!B0 (79) !( f &g) m  / !(A0 &B0 ) commutes in the category L for every pair of morphisms f and g depicted in (77). Note that we take advantage here of our explicit description in Equation (78) of the morphism f &g in the category L! . Commutativity of Diagram (79) is established by the following diagram chase 148 / !(A&B) m !A⊗!B δ δ⊗δ  !!(A&B) (1) !h!π1 ,!π2 i  !!A⊗!!B  / !(!A&!B) m (2) ! f ⊗!g  !A0 ⊗!B0 (1) (2) coherence diagram (75), naturality of m with respect to L. !( f &g)  / !(A0 &B0 ) m which combines the first coherence diagram (75) defining a Seely category, to the naturality of m with respect to the category L. This establishes the naturality of m with respect to the category L! . One concludes the proof by observing that the last four coherence diagrams (73—75) defining a Seely category are precisely here to ensure that (L, m) defines a strong monoidal functor from the cartesian category (L! , &, >) to the symmetric monoidal category (L, ⊗, 1). From this follows that Proposition 24 Every Seely category defines a linear-non-linear adjunction, and thus a model of intuitionistic linear logic with additives. The converse property is easily established at this stage. Proposition 25 Suppose that L is a cartesian and symmetric monoidal closed category, involved in a linear-non-linear adjunction (70). Suppose moreover that the functor M : L −→ M is bijective on objects. Then, the category L and the comonad ! = L ◦ M define a Seely category, whose Kleisli category L! is isomorphic to the category M. Proof. The proof is based on the observation that the two following statements are equivalent, for any adjunction L a M : • the functor M : L −→ M is bijective on objects, • the category M is isomorphic to the Kleisli category L! induced by the comonad ! = L ◦ M associated to the adjunction. This enables to identify the two categories M and L! . Accordingly, the functor L : M −→ L transports every object A in M = L! to the object !A in L. The coercion of the strong monoidal functor (L, m) provides the two natural isomorphisms m2A,B : m0 !A⊗!B  !(A&B) 149 : 1  !> defining a Seely category. We still need to check the five coherence diagrams (72—75). The first coherence diagram: Diagram (72) follows from naturality of m with respect to the Kleisli category L! . Indeed, the diagram coincides with Diagram (79) instantiated at the identity f = id!A : !A −→ !A g = id!B : !B −→ !B in the category L seen alternative in the category M = L! as components f = ηA : A −→ !A g = ηB : B −→ !B of the unit η of the monad ! = M ◦ L induced by the adjunction L a M. Commutativity of the four last coherence diagrams (73—75) is an immediate consequence of the fact that the functor (L, m) is symmetric strong monoidal. This establishes Proposition 25.  Remark. Here, we call Seely category what Gavin Bierman calls a new-Seely category in his work on categorical models of linear logic [16]. See the discussion at the end of the chapter. 7.4 Linear categories A linear category is a symmetric monoidal closed category (L, ⊗, 1) together with 1. a symmetric monoidal comonad ((!, m), δ, ε) in the lax monoidal sense, 2. two monoidal natural transformations d and e whose components dA : !A −→ !A⊗!A eA : !A −→ 1 form a commutative comonoid (A, dA , eA ) for all object A. Moreover, one requires that for every object A 3. the two morphisms dA and eA are coalgebra morphisms, 4. the morphism δA is a comonoid morphism. Diagrammatically, these two additional assertions require (for Assertion 3.) that the two diagrams !A dA / !A⊗!A !A eA /1 δA ⊗δA  !!A⊗!!A δA  !!A δA m !dA  !!A  / !(!A⊗!A) 150 m !eA  / !1 commute, and (for Assertion 4.) that the two diagrams !A δA / !!A dA  !A⊗!A δA !A1 11 11 11 eA 1 11 11   1 d!A δA ⊗δA  / !!A⊗!!A / !!A e!A commute for every object A. We will establish below that every linear category induces a linear-non-linear adjunction. By a general categorical property discussed in Section 6.10, we know already that the (lax) symmetric monoidal comonad ((!, m), δ, ε) induces a symmetric monoidal adjunction (L,m) (L! , ⊗, 1) d ⊥ $ (L, ⊗, 1) (80) (M,n) So, we only have to establish that the monoidal structure (⊗, 1) inherited from the category L defines a cartesian structure in the category L! of EilenbergMoore coalgebras. The recipe applied to transport the monoidal structure from the category L to its category L! of Eilenberg-Moore coalgebras is recalled in Equation (63) of Section 6.10. Plan of the proof. We establish below that the monoidal structure (⊗, 1) defines a cartesian product on the category L! if and only if the three additional assertions 2, 3 and 4 are satisfied. The proof is elementary but far from immediate. In particular, it does not seem to follow from general abstract properties. The argument may be summarized as follows. In a linear category, every free coalgebra (!A, δA ) is equipped with a comonoid structure. The idea is to transport this comonoid structure to every coalgebra (A, hA ) by using the fact that every such coalgebra is a retract of the free coalgebra (!A, δA ). This is the purpose of Propositions 26 and 27. This recipe provides every coalgebra (A, hA ) with a pair of morphisms dA eA A −→ A ⊗ A A −→ 1 The purpose of Proposition 28 is then to establish that the two morphisms dA and eA are coalgebra morphisms, and define a monoidal natural transformation in the symmetric monoidal category (L! , ⊗, 1) of Eilenberg-Moore coalgebras. Once this fact established, there only remains to apply the characterization of cartesian categories formulated in the previous Chapter 6 (see Corollary 17 in 151 Section 6.4) in order to conclude that the monoidal structure (⊗, 1) is cartesian in the category L! of Eilenberg-Moore coalgebras. This establishes that every linear category induces a linear-non-linear adjunction (80) with its category L! of Eilenberg-Moore coalgebras. The converse property, stated by Proposition 30, is reasonably immediate. We hope that this short summary will help the reader to grasp the general argument of the proof. We start the proof by a basic observation on linear categories. Proposition 26 In a linear category L, every coalgebra (A, hA ) induces a retraction hA εA A −→ !A −→ A making the diagram A hA / !A hA  !A dA dA  !A⊗!A εA ⊗εA  A⊗A hA ⊗hA (81)  / !A⊗!A commute. Proof. By definition of a linear category, the diagram !A δA d!A dA  !A⊗!A / !!A δA ⊗δA  / !!A⊗!!A commutes for every object A. Post-composing this diagram with the morphism εA ⊗ εA and then applying the equality εA ◦ δA = id!A induces another commutative diagram !A δA dA  !A⊗!A o / !!A d!A εA ⊗εA 152  !!A⊗!!A (82) We deduce from the diagram chase below that Diagram (81) commutes for every coalgebra hA in a linear category. / !A hA A δA (a) hA  !A  / !!A !hA (b) dA  !A⊗!A d!A  / !A⊗!A hA ⊗hA (a) (b) (c) (d) dA ε!A ⊗ε!A (c)  A⊗A (d)  / !!A⊗!!A !hA ⊗!hA εA ⊗εA / !A id  / !A⊗!A id property of the coalgebra hA naturality of d naturality of ε Diagram (82) commutes This concludes the proof of Proposition 26.  Proposition 27 Suppose that in a monoidal category (C, ⊗, 1) there exists a retraction idA i r (83) A −→ B −→ A = A −→ A between an object A and a comonoid (B, dB , eB ). Then, the two following statements are equivalent: • the object A lifts as a comonoid (A, dA , eA ) in such a way that the morphism i A −→ B defines a comonoid morphism i (A, dA , eA ) −→ (B, dB , eB ) (84) • the diagram i A /B i  B dB dB  B⊗B r⊗r  A⊗A i⊗i 153  / B⊗B (85) commutes. Besides, when the two properties hold, the comonoid (A, dA , eA ) is defined in a unique possible way, as dA A A / A⊗A eA /1 = i A = /B A dB i / B ⊗ B r⊗r / A ⊗ A / B eB / 1 (86) Proof. The direction (⇒) is easy. Suppose indeed that (A, dA , eA ) defines a comonoid such that i defines a comonoid morphism (84). In that case, by definition of a comonoid morphism, the two diagrams A dA  A⊗A /B A0 00  00   00  eB eA 00  00  00    1 /B i i dB  / B⊗B i⊗i commute. Now, the diagram i A dA /B dB  A⊗A o r⊗r  B⊗B commutes as well, because it is obtained by post-composing the left-hand side diagram with the morphism r ⊗ r, and by applying the equality r ◦ i = idA . This establishes already that the comonoid A is necessarily defined by Equation (86). In particular, the equality dA = (r ⊗ r) ◦ dB ◦ i implies that Diagram (85) commutes, for the simple reason that i is a comonoid morphism. We prove the difficult direction (⇐) now. Suppose that Diagram (85) commutes. We want to show that the triple (A, dA , eA ) defined in Equation (86) satisfies the equational properties of a comonoid: associativity, units. The two diagrams below are obtained by post-composing part (a) of Diagram (86) with the 154 morphism B ⊗ r and the morphism r ⊗ B, and by applying the equality r ◦ i = idA : /B i A i /B i A i  B  B dB dB  B⊗B dB  B⊗B r⊗r  B⊗B  / B⊗A i⊗A (87)  B⊗B r⊗r B⊗r  A⊗A dB r⊗B  A⊗A  / A⊗B A⊗i By construction, the two diagrams commute. Associativity of comultiplication dA is established by the diagram chase below. /B A HH HH HH i HH i HH HH  $ B B / A⊗A r⊗B  / A⊗B A⊗i / B⊗B dB (c) dB  B⊗B  B⊗B dB ⊗B B⊗r  A⊗A  / B⊗A (a) (b) (c) (d) (e) (f) dB ⊗A (d) B⊗dB  / B ⊗ (B ⊗ B) α / (B ⊗ B) ⊗ B (e) r⊗r i⊗A r⊗r (b) dB (a) / B⊗B dB i (f) (B⊗B)⊗r  / (B ⊗ B) ⊗ A r⊗(B⊗B) A⊗dB  / A ⊗ (B ⊗ B) (r⊗r)⊗A A⊗(r⊗r) / (A ⊗ A) ⊗ A α  / A ⊗ (A ⊗ A) left-hand side of Diagram (87), right-hand side of Diagram (87), coassociativity of dB , bifunctoriality of ⊗, bifunctoriality of ⊗, naturality of α and bifunctoriality of ⊗. Similarly, one of the two equalities A dA / A⊗A eA ⊗A / 1⊗A λA /A = 155 A i /B r /A = A idA /A expected from the unit eA is established by the diagram chase below. /B i A /B id i  B (b) dB id (a) dB  B⊗B  B⊗B r⊗r B⊗r  A⊗A  / B⊗A (a) (b) (c) (d) i⊗A eB ⊗B / 1⊗B (c) 1⊗r λB (d)  / 1⊗A eB ⊗A λA  /B r  /A left-hand side of Diagram (87) unit law of the comonoid (B, dB , eB ) bifunctoriality of ⊗ naturality of λ The other expected equality of the unit eA is established similarly, by a diagram chase involving this time the right-hand side of Diagram (87). This shows that the triple (A, dA , eA ) defined by the two equalities of Equation (86) satisfies indeed the laws of a comonoid. At this point, it is reasonably immediate that the morphism i in the retraction (83) defines a comonoid morphism (84). Indeed, this fact underlies the hypothesis that Diagram (85) commutes, and the definition of the counit eA . This concludes the proof of Proposition 27.  We carry on our investigation of the category L! of Eilenberg-Moore coalgebras equipped with the monoidal structure (⊗, 1) inherited from the linear category L. We establish the main result of the section: Proposition 28 The monoidal structure inherited from a linear category (L, ⊗, 1) is cartesian in its category L! of Eilenberg-Moore coalgebras. Proof. The proof is based on the characterization of cartesian categories among symmetric monoidal categories formulated in Corollary 17 of Section 6.4. Together, Propositions 26 and 27 ensure that in a linear category L, every coalgebra (A, hA ) induces a comonoid (A, dA , eA ) with comultiplication dA and counit eA defined as dA A A / A⊗A = /1 = eA A hA / !A A 156 dA hA / !A⊗!A / !A eA εA ⊗εA /1 / A⊗A (88) In order to apply Corollary 17, we need to establish that the morphisms dA and eA are coalgebra morphisms, and that they define monoidal natural transformations in the category L! of Eilenberg-Moore coalgebras. We proceed in three steps. The morphisms dA and eA are coalgebra morphisms. lished in Propositions 26 and 27 that the two diagrams A / !A hA  A⊗A hA ⊗hA / !A hA A0 00 00 00 eA 00 00 00   1 dA dA We have estab-  / !A⊗!A eA (89) commute in the category L. The right-hand side of the diagram implies immediately that eA = eA ◦ hA is a coalgebra morphism, as the composite of two coalgebra morphisms. This is easily checked: the morphism eA is a coalgebra morphism by definition of a linear category, and the morphism hA is a coalgebra morphism because the diagram A hA hA hA  !A / !A !hA  / !!A commutes by definition of a coalgebra (A, hA ). On the other hand, the proof that dA = hA ◦ dA ◦ (εA ⊗ εA ) defines a coalgebra morphism is not so immediate, at least because the morphism εA ⊗ εA has no reason to be a coalgebra morphism. The left-hand side of Diagram (89) shows that the morphism dA is the result of lifting the coalgebra morphism dhA ◦ dA along the coalgebra morphism hA ⊗ hA . Our proof is based on the additional observation that the coalgebra morphism hA ⊗ hA defines a retraction A⊗A hA ⊗hA −→ !A⊗!A εA ⊗εA −→ A ⊗ A in the underlying category L. At this point, we apply the lifting property stated in Corollary 20 (Section 6.11) and conclude that the morphism dA is a coalgebra morphism. We have just established that Definition (88) induces for every coalgebra (A, hA ) a comonoid (A, dA , eA ) in the category (L! , ⊗, 1) of Eilenberg-Moore coalgebras. There remains to show that the families d and e are natural and monoidal transformations in this category. 157 Naturality of d and e. This is nearly immediate. Naturality of d and e is equivalent to the statement that every coalgebra morphism f A −→ B : is at the same time a comonoid morphism f : (A, dA , eA ) −→ (B, dB , eB ). This fact is not difficult to establish diagrammatically, starting from the explicit definition of dA and eA provided by Equation (88). Naturality of d and e means that the two diagrams below commute. A f hB hA  !A !f dA  !A⊗!A A  / !B ! f ⊗! f  / !B⊗!B εB ⊗εB f⊗f f hA dB εA ⊗εA  A⊗A /B  / B⊗B /B hB   !f / !B !A ? ??  ??  ??  e eA ?? ??  B   1 The top squares commute because f is a coalgebra morphism, and the other cells commute by naturality of d and e. This establishes that every coalgebra morphism is a comonoid morphism, or equivalently, that dA : A −→ A ⊗ A eA : A −→ 1 are natural transformations in the category L! of Eilenberg-Moore coalgebras. Monoidality of d and e. The remark at the end of Section 6.4 implies that in order to establish that the natural transformations d and e are monoidal, one only needs to check the binary part of the definition for d and the nullary part of the definition for e. For the binary case, monoidality of d means that 158 the diagram / A⊗B id A⊗B hA ⊗hB  !A⊗!B hA ⊗hB m  !A⊗!B  / !(A ⊗ B) m (a) dA ⊗dB dA⊗B  (!A⊗!A) ⊗ (!B⊗!B) !A⊗γ⊗!B / (!A⊗!B) ⊗ (!A⊗!B) m⊗m  / !(A ⊗ B)⊗!(A ⊗ B) (εA ⊗εA )⊗(εB ⊗εB ) (b) (εA ⊗εB )⊗(εA ⊗εB ) (c) εA⊗B ⊗εA⊗B  (A ⊗ A) ⊗ (B ⊗ B) A⊗γ⊗B  / (A ⊗ B) ⊗ (A ⊗ B) id  / (A ⊗ B) ⊗ (A ⊗ B) commutes for all coalgebras (A, hA ) and (B, hB ). This is easily established by diagram chasing. In this diagram, the pentagon (a) commutes because the natural transformation d is monoidal. The square (b) commutes because the symmetry γ is natural. Finally, the triangle (c) commutes because the natural transformation ε is monoidal. This establishes that the diagram commutes. For the nullary case, monoidality of e means that the morphism e1 : 1 h1 −→ !1 e1 −→ 1 is equal to the identity. This is established using the equality h1 = m0 formulated in Equation (63) of Section 6.10, and the equality 1 h1 −→ !1 e1 −→ 1 = 1 id −→ 1 which follows from the fact that the natural transformation e is monoidal. At this point, we are ready to apply Corollary 17 (Section 6.4) and to deduce that the monoidal structure (⊗, 1) defined in Equation (63) of Section 6.10 is cartesian in the category L! of Eilenberg-Moore coalgebras. This concludes the proof of Proposition 28.  Remark. One consequence of Proposition 28 is that the natural transformations d and e are monoidal (remember indeed that Corollary 17 states an equivalence, not just an implication). However, for the sake of completeness, we establishing here the two cases not treated in the last part of the proof of Proposition 28, this proving (directly) that the natural transformations d and e are monoidal. For the nullary case, monoidality of d means that the morphism d1 : 1 h1 −→ !1 d1 −→ !1⊗!1 159 ε⊗ε −→ 1⊗1 is inverse to the morphism λ1 . This is established by the equality h1 = m0 and the diagram chasing 1 m0  !1 λ−1 1 (a) d1 / 1⊗1 m0 ⊗m0  / !1⊗!1 id  1A ⊗ 1 (b) ε1 ⊗ε1 where the left square (a) commutes by lax monoidality of the functor (!, m) and the right triangle (b) commutes by monoidality of the natural transformation ε. For the binary case, monoidality of e means that the diagram !A⊗!B : vv v hA ⊗hB vv vv vv vv id A ⊗ BH HH HH HH H hA ⊗hB HH H#  !A⊗!A eA ⊗eB m / 1⊗1 FF FF FFλ=ρ FF FF F" (a) y< 1 yy y yy yy eA⊗B y yy / !(A ⊗ B) commutes for all coalgebras (A, hA ) and (B, hB ). This is established by observing that the square (a) commutes because the natural transformation e is monoidal. It is worth remembering in these two proofs that the coercion law 1 ⊗ 1 −→ 1 of the constant functor (X 7→ 1) is provided by the morphism λ1 = ρ1 . Indeed, this morphism defines the multiplication law of the unit of the category Mon(L! , ⊗, 1) of monoids in the category L! of Eilenberg-Moore coalgebras, formulated in Equation (56) of Section 6.2. Since the task of Proposition 28 was precisely to complete the introductory remarks on Diagram (80), we conclude that Proposition 29 Every linear category defines a linear-non-linear adjunction, and thus a model of intuitionistic linear logic. The converse property is easy to establish at this stage. Proposition 30 Suppose that L is a symmetric monoidal closed category, involved in a linear-non-linear adjunction (70). Suppose moreover that the adjunction L a M is comonadic. Then, the category L and the comonad ! = L ◦ M define a linear category, whose category L! of Eilenberg-Moore coalgebras is isomorphic to the category M. 160 By comonadic adjunction, we mean an adjunction where M is isomorphic to the category L! of Eilenberg-Moore coalgebras, and the monoidal structure (⊗, 1) inherited from the symmetric monoidal category (L, ⊗, 1) provides a cartesian structure in this category. Equivalently, the symmetric monoidal category (L! , ⊗, 1) is isomorphic to the cartesian category (M, ×, e) in the 2-category SymMonCat of symmetric monoidal categories and lax monoidal functors introduced in Proposition 10 at the end of Section 5.9. Proof. The proof of Proposition 30 is reasonably immediate. We have seen at the end of Section 6.9 that every symmetric lax monoidal adjunction (70) induces a symmetric lax monoidal comonad ! = L ◦ M on the symmetric monoidal category (L, ⊗, 1). This establishes the first assertion required by the definition of a linear category. By hypothesis, the monoidal structure inherited from the symmetric monoidal category (L, ⊗, 1) provides the cartesian structure of the category L! . The second assertion follows then from the characterization of cartesian categories among symmetric monoidal categories formulated in Corollary 17 of Section 6.4. This characterization also implies the third assertion: the two morphisms dA and eA are coalgebra morphisms because they are exhibited by Corollary 17 as morphisms in the category L! of Eilenberg-Moore coalgebras. Finally, the last assertion required by the definition of a linear category follows from the observation (see Corollary 19 of Section 6.5) that every morphism of a cartesian category is a comonoid morphism. The morphism δA is a coalgebra morphism, and thus an element of the cartesian category (L! , ⊗, 1). From this follows that the morphism δA is a comonoid morphism in the category (L! , ⊗, 1) and consequently a comonoid morphism in the underlying category (C, ⊗, 1). This concludes the proof of Proposition 30.  Remark. The proof of Proposition 28 appears originally in Gavin Bierman’s PhD thesis [15]. The interested reader will find alternative proofs of Propositions 28 and 30 in Paola Maneggia’s PhD thesis [68] as well as in unpublished notes by Andrea Schalk [81] and by Robin Houston [47]. Remark. The last assertion (Assertion 4.) in the definition of a linear category is sometimes replaced in the literature by the apparently stronger requirement that 4bis. whenever f : (!A, δA ) −→ (!B, δB ) is a coalgebra morphism between free coalgebras, then it is also a comonoid morphism. However, the two definitions of linear category are equivalent. On the one hand, Assertion 4. follows from Assertion 4bis. because δA is a coalgebra morphism between the free coalgebras (!A, δA ) and (!!A, δ!A ). Conversely, one deduces Assertion 4bis. from the four assertions defining a linear category at the beginning of the section. We have established in Proposition 28 that the category L! is cartesian. By definition, every is a morphism of this category. By Corollary 17 of Section 6.4, every coalgebra morphism f : (!A, δA ) −→ (!B, δB ) is thus a comonoid morphism in the category (L, ⊗, 1). Every such morphism f is 161 thus a comonoid morphism in the underlying category (L, ⊗, 1). This concludes the short argument establishing that the two alternative definitions of linear category are equivalent. 7.5 Lafont-Seely categories We introduce here a fourth axiomatization of intuitionistic linear logic, which cross-breeds Lafont categories and Seely categories. The axiomatization is designed to be simple: in particular, it does not require to establish that the modality ! defines a comonad — a property which is often difficult to check in full detail, for instance in game-theoretic models. It is also general: unlike the original definition of Lafont categories, the axiomatization is not limited to the free construction. A Lafont-Seely category is defined as a symmetric monoidal closed category (L, ⊗, 1) with finite products (noted A&B and >) together with the following data: 1. for every object A, a commutative comonoid = !A (!A, dA , eA ) with respect to the tensor product, and a morphism εA : !A −→ A satisfying the following universal property: for every morphism f : !A −→ B there exists a unique comonoid morphism f† : (!A, dA , eA ) −→ (!B, dB , eB ) making the diagram 5 !B f † llll lll l l ll εB !A RRRR RRR RRR  R) f B (90) commute, 2. for all objects A and B, two comonoid isomorphisms between the commutative comonoids: p2A,B : (!A, dA , eA ) ⊗ (!B, dB , eB ) −→ (!(A&B), dA&B , eA&B )  −1 p0 : (1, ρ−1 1 = λ1 , id1 ) −→ (!>, d> , e> )  162 Every Lafont-Seely category defines a symmetric monoidal adjunction (L,m) (M, ⊗, 1) d ⊥ $ (L, ⊗, 1) (M,n) in which: • M is the full subcategory of Comon(L, ⊗, 1) whose objects are the commutative comonoids isomorphic (as comonoids) to a commutative comonoid of the form (!A, dA , eA ). • the functor L is the restriction of the forgetful functor U from the cartesian category Comon(L, ⊗, 1) of commutative comonoids to the underlying symmetric monoidal category (L, ⊗, 1). It follows easily from our Corollary 18 established in Section 6.5 that the category M equipped with the tensor product ⊗ and the tensor unit 1 is cartesian. This establishes that: Proposition 31 Every Lafont-Seely category L induces a linear-non-linear adjunction, and thus a model of intuitionistic linear logic with additives. Remark. Coming back to the concluding remark of our Section 7.3 devoted to Lafont categories, we have just defined that every Lafont-Seely category defines in fact a Lafont category in the relaxed sense discussed there. 7.6 Soundness in string diagrams We briefly mention a diagrammatic proof of soundness for the various categorical semantics discussed in this chapter. A model is sound when the interpretation of a proof provides an invariant modulo cut-elimination. So, the purpose of a categorical model of linear logic is precisely to provide a sound model of the logic. Interestingly, the original definition of linear-non-linear adjunction required that the category M is cartesian closed [13]. People realized only later that this additional condition is not necessary in order to establish soundness: the weaker hypothesis that the category M is cartesian is sufficient for that purpose [5, 6]. This important observation is supported today by a diagrammatic account based on string diagrams and functorial boxes, two notations recalled in this survey in Section 4.2 (Chapter 4) and in Section 5.7) (Chapter 5). Soundness of this relaxed notion of linear-non-linear adjunction is important because it implies in turn soundness of the alternative axiomatizations of linear logic discussed in this chapter: Lafont categories, Seely categories, Lafont-Seely categories, and linear categories. This fact is an easy consequence of the fact that each axiomatization induces a particular linear-non-linear adjunction. 163 The diagrammatic argument for soundness is based on the idea that the algebraic decomposition of the exponential modality as = ! L◦M has a purely diagrammatic counterpart, based on the notion of functorial box introduced in Section 5.7, and related to the notion of exponential box introduced by Jean-Yves Girard for proof-nets of linear logic [40]. Diagrammatically speaking, the decomposition formula means that the exponential box ! with its auxiliary doors labeled by the formulas !A1 , ..., !Ak and with its principal door labeled by the formula !B factors as a functorial box (interpreting the lax monoidal functor M) enshrined inside another functorial box (interpreting the strong monoidal functor L) in the following way: !B LM B B MB B f f = M A1 ! Ak A1 L !Ak !A1 Ak M Ak M A1 LM Ak LM A1 In this diagrammatic formulation, the category M lies “inside” the functorial box L, while the category L lies “inside” the functorial box M and “outside” the functorial box L. The category M is cartesian, with binary product noted × here. As explained in Section 6.4 (Chapter 6), every object X of the category M is equipped with a “diagonal” morphism dX X −→ X × X : natural in X. In particular, every object A of the category L is transported by the functor M to an object MA equipped with a diagonal morphism dMA : MA −→ MA × MA in the category M. The contraction combinator of linear logic is interpreted as the morphism L(dMA ) in the category L. The morphism is depicted diagrammatically as the diagonal string dMA enshrined inside the functorial box L: !A !A c LM A LM A MA MA = d L MA LM A !A 164 In order to establish soundness of the categorical model, one needs to check in a careful and meticulous way that the interpretation [π] of a proof π is invariant modulo all the cut-elimination rules enumerated in Chapter 3. Instead of giving the full argument here, we explain how to proceed with the particularly important and pedagogical example of the cut-elimination step involving a contraction rule and the introduction rule of the exponential modality, explicated in Section 3.9.3 (Chapter 3). One benefit of translating proofs into string diagrams is that the original cutelimination step is decomposed into a series of more atomic steps. First, the box L which enshrines the diagonal dMA merges with the box L which enshrines the content f of the exponential box. This releases the diagonal dMA inside the cartesian category M enshrined in the exponential box. LM B LM B LM B MB MB LM B MB MB d d MB L MB LM B MB B = B f f M A1 L M A1 Ak L M Ak M A1 M Ak M A1 LM Ak LM A1 LM Ak LM A1 Ak Then, the diagonal dMA replicates the morphism f enshrined by the lax monoidal box M. Note that the duplication step is performed in the cartesian category M enshrined by the functorial box L, and that the equality follows from the naturality of d. LM B LM B MB MB B B f f M A1 M A1 Ak M A1 M Ak M A1 M Ak d d L Ak M A1 M Ak LM A1 LM Ak 165 Once the duplication performed, the strong monoidal box is split in three horizontal parts. LM B LM B MB MB B B f f M A1 Ak M A1 L A1 M Ak M Ak M A1 M Ak M A1 M Ak L d d L M A1 M Ak LM A1 LM Ak The intermediate box is then removed LM B LM B MB MB B B f f M L A1 Ak M A1 M A1 Ak M Ak M A1 M Ak LM A1 LM Ak d d L M A1 M Ak LM A1 LM Ak and the remaining monoidal boxes L are split vertically. 166 LM B LM B MB MB B B f M A1 L f A1 Ak Ak M M A1 M Ak L LM A1 LM Ak d d M A1 L L M Ak LM Ak LM A1 Note that this series of diagrammatic transformations on the functorial box L are valid precisely because the functor L is symmetric and strong monoidal. This completes the categorical and diagrammatical account of this particular cut-elimination step. The other cut-elimination steps of linear logic involving the exponential box ! are decomposed in a similar fashion. This diagrammatic account of soundness is a typical illustration of the harmony between proof theory and categorical algebra advocated in this survey. 7.7 Notes and references In his original formulation, Robert Seely defines a Girard category as a ∗-autonomous category (L, ⊗, 1) with finite products, together with 1. a comonad (!, δ, ε), 2. for every object A, a comonoid (!A, dA , eA ) with respect to the tensor product, 3. two natural isomorphisms m2A,B : !A⊗!B !(A&B) m0 : 1 !> which transport the comonoid structure (A, ∆A , uA ) of the cartesian product to the comonoid structure (!A, dA , eA ) of the tensor product, in the sense that the diagrams !A⊗!A nn6 n n nnn nnn n n n m !A PPP PPP PPP PPP !∆A P'  dA !(A&A) commute. 167 71 ppp p p pp ppp p p p m !A NN NNN NNN NNN !uA NN'  eA !> In Seely’s axiomatization, linear logic is explicitly reduced to a decomposition of intuitionistic logic. To quote Seely in [82]: “what is really wanted [of a model of intuitionistic linear logic] is that the Kleisli category associated to [the comonad] (!, δ, ε) be cartesian closed, so the question is: what is the minimal condition on (!, δ, ε) that guarantees this — i.e. can we axiomatize this condition satisfactorily?” A few years later, Nick Benton, Gavin Bierman, Valeria de Paiva and Martin Hyland [12, 50] reconsidered Seely’s axioms from the point of view of linear logic, instead of intuitionistic logic. Surprisingly, they discovered that something is missing in Seely’s axiomatization. More precisely, Bierman points out in [15, 16] that the interpretation of proofs in a Seely category is not necessarily invariant under cutelimination. One main reason is that the diagram δA / !A f Γ / !!A / !B !g dA (91) dB  !A⊗!A δA ⊗δA / !!A⊗!!A !g⊗!g  / !B⊗!B /C h which interprets the duplication of a proof !g ◦ δA !A −→ !B : inside a proof h ◦ dB ◦!g ◦ δA ◦ f : Γ −→ !C does not need to commute in Seely’s axiomatization. Bierman suggests to call newSeely category any Seely category in which the adjunction between the original category L and its Kleisli category L! is symmetric monoidal. This amounts precisely to our definition of Seely category in Section 7.3. In that case, the category provides invariants of proofs, see Proposition 24. In particular, Diagram (91) is shown to commute by pasting the two diagrams below: Γ f / !A δA / !!A !g / !B d!A dA  !A⊗!A δA ⊗δA  / !!A⊗!!A dB !g⊗!g  / !B⊗!B h /C The definition of linear-non-linear adjunction was introduced by Nick Benton in [13] after discussions with Martin Hyland and Gordon Plotkin. The interested reader will find related work by Andrew Barber and Gordon Plotkin [5] on Dual Intuitionistic Linear Logic (DILL). The logic DILL is based on a term calculus which was subsequently extended to classical linear logic by Masahito Hasegawa [45]. The three authors develop a comparison to Robin Milner’s action calculi in collaboration with Philippa Gardner [4, 34]. Note that in a somewhat different line of research, Marcelo Fiore, Gordon Plotkin and John Power [79, 32] formulate Axiomatic Domain Theory as a linear-non-linear adjunction with extra structure. See also the fibered variant introduced by Lars Birkedal, Rasmus Møgelberg and Rasmus Lerchedahl Petersen, in order to interpret a linear variant of Abadi & Plotkin logic [17]. 168 8 Two models of interaction: spaces and games In this last chapter of the survey before the conclusion, we review two models of linear logic, where formulas are interpreted respectively as coherence spaces and as sequential games. The two models are different in nature: • the coherence space model is static because it reduces a proof to the set of its halting positions. So, in this model, every formula A is interpreted as the graph [A] whose vertices are the halting positions of the formula, and whose edges x ^ _ y indicate when two halting positions x and y may appear in the same proof. A proof π of formula A is interpreted as a clique [π] of the graph [A] consisting of the halting positions of π. The outcome of the interaction between a proof π and a counter-proof π0 is provided by the intersection [π] ∩ [π0 ] of their sets [π] and [π0 ] of halting positions. This intersection [π] ∩ [π0 ] is a clique (as a subset of [π]) and an anticlique (as a subset of [π0 ]). Hence, it contains at most one position: the result of the interaction between π and π0 . • the game model is dynamic because it interprets a proof as a strategy interacting with its environment. In this model, every formula A is interpreted as a decision tree [A] whose vertices are the intermediate positions of the formula. A proof π of formula A is interpreted as an alternating strategy [π] of the game [A] induced by its intermediate (some of them halting) positions. The outcome of the interaction between a proof π and a counter-proof π0 is the play obtained by letting the strategy [π] interact against the counter-strategy [π0 ]. The two strategies are deterministic. Hence, this play s is unique, and describes the series of symbolic transformations involved during the interaction between the proofs π and π0 . In this section, we illustrate the idea that the very same model of linear logic (typically, coherence spaces) may be formulated in one style, or in another: linear-non-linear adjunction, Lafont category, Seely category, linear category – this depending on the structure the semanticist wishes to focus on. As explained in Chapter 7, each formulation leads to a linear-non-linear adjunction, and thus, to a model of linear logic. 8.1 Coherence spaces Jean-Yves Girard discovered in 1986 a very simple account of the stable model of intuitionistic logic defined by Gérard Berry [14] at the end of the 1970s, based on the category STABLE of qualitative domains and stable functions [39]. A few months later, Girard realized that (a full subcategory of) the category STABLE may be defined alternatively as the Kleisli construction induced by a comonad !set on a self-dual category COH of coherence spaces. This semantic construction is at the origin of linear logic, see [40]. We find useful to start the chapter by recalling it. 169 Qualitative domains and stable functions A qualitative domain is a pair X = (|X|, D(X)) consisting of a set |X| called the web of X and a set D(X) of finite subsets of |X|, called the domain of X. One requires moreover that every subset x of an element y ∈ D(X) is an element x ∈ D(X). An element of D(X) is called a configuration. Note that, by definition, every configuration is finite. A stable function f : X −→ Y between qualitative domains is a function D(X) −→ D(Y) satisfying monotonicity stability x ⊆ x0 ∈ D(X) ⇒ f (x) ⊆ f (x0 ), x, x ⊆ x00 ∈ D(X) ⇒ f (x ∩ x0 ) = f (x) ∩ f (x0 ). 0 The category STABLE of qualitative domains and stable functions has finite products given by X × Y = (|X| + |Y|, D(X) × D(Y)) and 1 = (∅, {∅}). Linear and affine functions We will be interested in two specific subcategories of STABLE in the course of the section. A stable function f : X −→ Y is linear when the two following linearity conditions hold: linearity (binary case) linearity (nullary case) x, x0 ⊆ x00 ∈ D(X) ⇒ f (x ∪ x0 ) = f (x) ∪ f (x0 ). f (∅) = ∅. A stable function f : X −→ Y is affine when only the first linearity condition holds: affinity x, x0 ⊆ x00 ∈ D(X) ⇒ f (x ∪ x0 ) = f (x) ∪ f (x0 ). So, a stable function is f : X −→ Y is linear precisely when for every (possibly empty) finite sequence x1 , . . . , xn of elements of D(X), x1 , . . . , xn ⊆ x ∈ D(X) ⇒ f (x1 ∪ · · · ∪ xn ) = f (x1 ) ∪ · · · ∪ f (xn ) whereas the equality only holds for nonempty finite sequences x1 , . . . , xn of elements of D(X) when the function f is affine. Coherence spaces and cliques A coherence space is a pair A = (|A|, ^ _A ) consisting of a set |A| called the web of A, and a reflexive binary relation ^ _A on the elements of |A|, called the coherence of A. A clique of A is a set of pairwise coherent elements of |A|. Every coherence space X has a dual coherence space A⊥ with same web |A| and coherence relation ^ a^ _A⊥ b ⇐⇒ a = b or ¬(a _A b) The coherence space A ( B has web |A ( B| = |A| × |B| and coherence relation  0 ^ 0  a^  _A a ⇒ b _B b   0 0 ^ and a ( b _A(B a ( b ⇐⇒     b ^ ⊥ b0 ⇒ a ^ ⊥ a 0 _B _A 170 where a ( b is a handy notation for the element (a, b) of the web of the coherence space A ( B. The category COH has coherence spaces as objects, and cliques of A ( B as morphisms A −→ B. Morphisms are composed as relations, and identities are given by idA = {a ( a | a ∈ |A|}. The category is symmetric monoidal closed (in fact, ∗-autonomous) and has finite products. The tensor product A ⊗ B of two coherence spaces has web |A × B| = |A| × |B| and coherence relation 0 0 ^ 0 ^ 0 a⊗b^ _A⊗B a ⊗ b ⇐⇒ a _A a and b _B b . where, again, a ⊗ b is a handy notation for the element (a, b) of the web of the coherence space A⊗B. The monoidal unit e is the coherence space with a unique element (noted ∗) in the web. Coherent qualitative domains A qualitative domain (|X|, D(X)) is called coherent when, for every x, y, z ∈ D(X): x ∪ y ∈ D(X), y ∪ z ∈ D(X), x ∪ z ∈ D(X) ⇒ x ∪ y ∪ z ∈ D(X) (92) We will see next section how to construct a functor M : COH −→ STABLE : COH −→ LINEAR which defines an isomorphism M  between the category COH and the subcategory LINEAR of coherent qualitative domains and linear functions between them. At the very end of the chapter, we will also consider the category AFFINE of coherent qualitative domains and affine functions between them, this enabling us to decompose the exponential modality !set into a suspension modality S and a duplication modality D, see Section 8.10 for details. 8.2 Coherence spaces: a linear-non-linear adjunction The two categories STABLE and COH are involved in a linear-non-linear adjunction L a M which captures the essence of the theory of traces developed by Gérard Berry in his PhD thesis [14], see also the account in [2, 87]. We describe the adjunction below. The left adjoint functor L. The functor L : STABLE −→ COH transports 171 • every qualitative domain X = (|X|, D(X)) to the coherence space L(X) = (D(X), ^ _D(X) ) whose coherence relation ^ _D(X) is defined as the usual coherence relation associated to the set-inclusion order on the elements of the domain: ∀x, x0 ∈ D(X), 0 00 0 00 x^ _L(X) x ⇐⇒ ∃x ∈ D(X), x, x ⊆ x • every stable function f : X −→ Y to the clique L( f ) : L(X) −→ L(Y) defined as follows:       y ⊆ f (x) and   L( f ) =  (x, y) 0 0 0 0   ∀x ∈ D(X), x ⊆ x and y ⊆ f (x ) ⇒ x = x    The equalities L(X ⊗ Y) = L(X) × L(Y) L(e) = 1 hold for all coherence spaces X and Y. Hence, the functor L defines a strict monoidal functor L : (STABLE, ×, e) −→ (COH, ⊗, 1). The right adjoint functor M. The functor M : COH −→ STABLE transports • every coherence space A = (|A|, ^ _A ) to the qualitative domain M(A) = (|A|, D(A)) whose domain D(A) is the set of finite cliques of A, • every clique f : A ( B to the linear function M( f ) : M(A) −→ M(B) defined as follows: n o x ∈ D(A) 7→ b ∈ |B| | ∃a ∈ x, (a, b) ∈ f ∈ D(B) The linear-non-linear adjunction L a M. We show that the functor L is left adjoint to the functor M. Suppose X is a qualitative domain, that A is a coherence space, and that the function between qualitative domains f : X −→ M(A) is stable. Define trace( f ) ⊆ 172 D(X) × |A| as the set of elements (x, a) where x is a configuration of X and a is an element of the web of A such that, for all configurations y, z ∈ D(X) satisfying x ⊆ z and y⊆z the following property holds: x⊆y a ∈ f (y). ⇐⇒ Note in particular that ∀(x, a) ∈ trace( f ), a ∈ f (x). The point of the construction is that it defines a clique trace( f ) L(X) ( A. : In order to establish this, one needs to check that for every two elements (x, a) and (y, b) in trace( f ) are coherent: x(a ^ _L(X)(A y ( b. (93) a^ _A b (94) x _ ^L(X) y. (95) This amounts to checking that x ^ _L(X) y and a_ ^A b ⇒ ⇒ The first statement (94) follows from the definition of x ^ _L(X) y as the fact that there exists a configuration z ∈ D(X) such that x ⊆ z and y ⊆ z. In that case, f (x) ⊆ f (z) and f (y) ⊆ f (z) because the function f is monotone. Moreover, a ∈ f (x) and b ∈ f (y) because (x, a) and (y, b) are elements of trace( f ). One concludes that a and b are elements of the configuration f (z) of the qualitative domain M(A). Since configurations of M(A) are defined as finite cliques in the coherence space A, the two elements a and b are coherent in A. Once the first statement established, the second statement (95) is equivalent to the statement that a=b ⇒ x _ (96) ^L(X) y. This follows easily from the definition of trace( f ). Imagine indeed that a = b and that x and y are coherent in L(X), or equivalently, that there exists a configuration z such that x ⊆ z and y ⊆ z. The fact that (x, a) ∈ trace( f ) means that a ∈ f (y) ⇒ x ⊆ y and the fact that (y, a) ∈ trace( f ) means that a ∈ f (x) ⇒ 173 y ⊆ x. The equality x = y follows immediately from this and the fact that a ∈ f (x) and a ∈ f (y). This establishes statement (96) and thus statement (93). We conclude that trace( f ) defines indeed a clique in the coherence space L(X) ( A. Conversely, every clique g in the coherence space L(X) ( A generates a stable function fun(g) : X −→ M(A) defined as x 7→ _ n a | ∃y ⊆ x, (y, a) ∈ g o The function is clearly monotone, and its stability reduces to the fact that fun(g)(x) ∩ fun(g)(x0 ) ⊆ fun(g)(x ∩ x0 ). By definition, every element a ∈ fun(g)(x) ∩ fun(g)(x0 ) is induced by a pair (y, a) ∈ g and (y0 , a) ∈ g where y ⊆ x and y0 ⊆ x0 . As subsets of the two compatible configurations x and x0 in the qualitative domain X, the two configurations y and y0 are also compatible in X – and thus coherent in the coherence space L(X). The very definition of coherence in L(X) ( A ensures then that y = y0 . In particular, the configuration y = y0 is a subset of the configuration x ∩ x0 . We conclude that a ∈ fun(g)(x ∩ x0 ) and hence, that the function fun(g) is stable. Finally, one checks that the two constructions trace and fun define one-toone relation trace : STABLE(X, M(A))  COH(L(X), A) : fun natural in X and A. Exercise. We leave the reader show that trace and fun define indeed a bijection natural in A and X.  8.3 Coherence spaces: a Seely category The formulation of the coherence space model as a linear-non-linear adjunction requires an explicit description of the monoidal category COH as well as an explicit description of the cartesian category STABLE. This is often too much to ask when one encounters a new model of linear logic. In many cases, indeed, a symmetric monoidal closed category L is given, together with a particular notion of exponential modality. In such a situation, one would like to check that the modality defines indeed a model of linear logic, before providing any description of the associated cartesian category M. For that reason, the alternative 174 axiomatic formulations of linear logic encountered in Chapter 7 are precious, because they offer useful shortcuts in the difficult exercise of designing a new denotational model of linear logic. Indeed, once the basic axiomatic properties of the resource modality are established, the category M is immediately defined as a category of commutative comonoids (in the case of Lafont categories), as the Kleisli category associated to the modality (in the case of Seely categories), or as the category of Eilenberg-Moore coalgebras of the modality (in the case of linear categories). This general principle is nicely illustrated by the coherence space model. In that case, the comonad !set over COH induced by the adjunction L a M transports every coherence space A to the commutative comonoid !set A below: • the web of !set A is the set of finite cliques of A, • two cliques u, v are coherent in !set A when their union u ∪ v is a clique in A, or equivalently: u^ _!A v ⇐⇒ ∀a ∈ u, ∀b ∈ v, a^ _A b. • coproduct dA is union of clique, and counit eA is the empty set: dA = {w ( (u ⊗ v) | w = u ∪ v, u, v, w ∈ |!set A|} eA = {∅ ( ∗} Instead of building a linear-non-linear adjunction (as we did in Section 8.1) one may show that the comonad !set satisfies the properties of a Seely category formulated in Section 7.3. One benefit of the approach is that it is not necessary to define the category STABLE in order to establish that the category COH and its exponential modality !set define a model of linear logic. In the case of a Seely category, the category STABLE is replaced by the Kleisli category COH!set associated to the exponential comonad. A simple analysis shows that the Kleisli category coincides in fact with the full subcategory of STABLE consisting of the coherent qualitative domains. See (92) above for the definition of coherent qualitative domain. 8.4 Quantitative coherence spaces: a Lafont category The original notion of Lafont category is somewhat too restrictive: it requires indeed that the exponential modality coincides with the free commutative comonoid construction. This is not the case with the “qualitative” modality !set of coherence spaces discussed here. Indeed, the free commutative comonoid !mset A generated by a coherence space A has been characterized by Van de Wiele as the coherence space !mset A below: • its web is the set of finite multicliques of A, • two multicliques are coherent when their sum is a multiclique, 175 • coproduct is sum of multiclique, and counit is the empty multiset: dA = {w ( (u ⊗ v) | w = u ] v, u, v, w ∈ |!mset A|} eA = {∅ ( ∗} Recall that a multiclique is a multiset whose support is a clique. The “quantitative” modality !mset defines a Lafont category, and thus a model of linear logic. Interestingly, the meaning of the induced Kleisli category COH!mset was explicated only a decade after the quantitative modality was exhibited by van de Wiele: Nuno Barreiro and Thomas Ehrhard [9] show that the Kleisli category coincides with a category CONV of convex and multiplicative functions. 8.5 Qualitative coherence spaces: a Lafont category There remains to clarify the status of the qualitative modality !set with respect to the class of commutative comonoids in COH. An important fact in that respect is that the category STABLE is cartesian. From this follows indeed that the strong and symmetric monoidal functor L factors as K STABLE / Comon(COH, ⊗, 1) / COH V where • V is the forgetful functor from the category Comon(COH, ⊗, 1) of commutative comonoids to the category (COH, ⊗, 1) • K is a full and faithful embedding of STABLE into Comon(C, ⊗, e), defining a strict and symmetric monoidal functor from (STABLE, ×, 1) to (Comon(C, ⊗, e), ⊗, e). For every qualitative domain X, the coherence space L(X) defines a commutative comonoid K(X) = (D(X), dX , eX ) equipped with the comultiplication dX and counit eX defined as: dX = {x ( (y ⊗ z) | x = y ∪ z, x, y, z ∈ D(X)} eX = {∅ ( ∗} Moreover, every stable function f : X −→ Y induces a comonoidal morphism L( f ) : L(X) −→ L(Y) from K(X) to K(Y) ; and conversely, every comonoidal morphism K(X) −→ K(Y) is the image of a unique stable function f : X −→ Y. Now, observe that every comonoid appearing in the image of the functor K is a diagonal comonoid. A comonoid X over COH is called diagonal when the clique dX : X −→ X ⊗ X contains the diagonal {x ( (x ⊗ x) | x ∈ |X|}. In fact, Jacques Van de Wiele established that !set A is the free commutative diagonal comonoid generated by A. Since diagonal comonoids are closed by tensor product, the construction !set defines a Lafont category – in the extended sense of “new-Lafont category” discussed at the end of Section 7.2. This demonstrates in 176 yet another way that the modality !set defines a model of linear logic. The cartesian category M of the linear-non-linear adjunction is provided in this case by the full subcategory of diagonal commutative comonoids in Comon(COH, ⊗, 1). Remark. This factorization phenomenon is not specific to the coherence space model. The factorization holds indeed in any linear-non-linear adjunction, for the conceptual reason that every symmetric strong monoidal functor (L, n) : (M, ×, 1) −→ (L, ⊗, e) lifts to a symmetric strong monoidal functor Comon(L, n) : Comon(M, ×, 1) −→ Comon(L, ⊗, e) making the diagram Comon(L,n) Comon(M, ×, 1) / Comon(L, ⊗, e) U V  M L  /L commute. We have seen in Corollary 18 (Section 6) that the forgetful functor U is an isomorphism because the category (M, ×, 1) is cartesian. The functor K : M −→ Comon(L, ⊗, e) is then defined as K = Comon(L, n)◦U−1 . When the functor K is full and faithful (as it is the case for coherence space) then the functor K ◦ M is left adjoint to the functor V restricted to the full subcategory of Comon(L, ⊗, e) of objects isomorphic to an image of the functor K. This subcategory is closed under tensor product, because the functor is strong monoidal. So, we have just shown that every linear-non-linear adjunction whose induced functor Comon(L, n) is full and faithful, defines a Lafont category in the extended sense discussed at the end of Section 7.2. 8.6 Coherence spaces: a Lafont-Seely category The coherence space model illustrates perfectly well the conceptual advantages of using the definition of Lafont-Seely category introduced in Section 7.5. Suppose that A, B are coherence spaces. The first properties of the model are easily established: • the coherence space !set A defines a commutative comonoid in COH, because set-theoretic union is associative and commutative, and has the empty set as unit, 177 • the comonoidal isomorphisms !set A&B −→ !set A⊗!set B !set > −→ 1 and are given by the cliques { x ( (xA ⊗ xB ) | xA = x ∩ |A|, xB = x ∩ |B| } and { ∅ ( ∗ }. At this point, there only remains to show that the dereliction morphism = εset A { {a} ( a | a ∈ |A|} satisfies the universal property (90) of the definition. This amounts to characterizing the comonoidal morphisms g !set A : −→ !set B between two coherence spaces !set A and !set B. It appears that such a morphism g is comonoidal if and only if it verifies the four properties below: • unit (forth): if ∅ ( v is an element of the clique g, then v = ∅, • unit (back): if u ( ∅ is an element of the clique g, then u = ∅, • product (forth): if u1 ( v1 and u2 ( v2 are elements of the clique g and u = u1 ∪ u2 is a clique, then u ( (v1 ∪ v2 ) is an element of g, • product (back): if u ( (v1 ∪ v2 ) is an element of the clique g, then there exists a pair of cliques u1 , u2 such that u = u1 ∪ u2 and u1 ( v1 and u2 ( v2 are elements of g. Now, suppose that g is comonoidal, that u is a clique of A and that v = {b1 , ..., bn } is a clique of B. From the previous characterization, it follows that ! ! u decomposes as u = u1 ∪ ... ∪ un u ( {b1 , ..., bn } if and only if is an element of g where ui ( {bi } is in g. This shows that every comonoidal morphism g !set A : −→ !set B is characterized by the composite εset B ◦g !set A : B. −→ Conversely, every morphism f : !set A −→ B induces a comonoidal morphism g such that f = εset B ◦ g. The correspondence between f and g is one-to-one. We conclude that the modality !set defines a Lafont-Seely category, and thus a model of linear logic. This point is further discussed in the next section. 178 8.7 The relational non-model The category COH may be replaced by the ∗-autonomous category REL of sets and relations, equipped with the set-theoretic product A × B as tensor product A ⊗ B. The category REL has finite products, given by set-theoretic sum A + B. The category REL admits also a free commutative comonoid construction, similar to the construction !mset for coherence spaces discussed in Section 8.4. From this follows that the modality !mset defines a Lafont category on the category REL and, thus, a model of linear logic. It is therefore tempting to adapt the “set-theoretic” interpretation of exponentials discussed in Section 8.3. Indeed, every object A of REL defines the commutative comonoid (!set A, dA , eA ) below: !set A = {u | u ⊆fin A} dA = {(u ∪ v) ( (u ⊗ v) | u, v ⊆fin A} eA = {(∅, ∗)} where u ⊆fin A means that u is a finite subset of A ; as well as a “dereliction” morphism εA = { {a} ( a | a ∈ |A|} : !set A −→ A defined as εA = {({a}, a) | a ∈ |A|}. However, this “set-theoretic” interpretation of exponentials fails to define a Seely category. Indeed, Ehrhard pointed out that the dereliction family (εA )A∈REL is not natural. Typically, the naturality diagram below does not commute from A = {a1 , a2 } to B = {b}, for the relation f = {(a1 , b), (a2 , b)}. !A !f εA  A / !B εB f  /B (97) {a1 , a2 } ( b is an element of εB ◦ ! f {a1 , a2 } ( b is not an element of f ◦ εB This lack of commutation was somewhat unexpected the first time it was noticed. It convinced people that every coherence diagram should be checked extremely carefully every time a new model is introduced. This also propelled the search for alternative categorical axiomatics of linear logic, more conceptual and easier to check than the existing ones. This point is particularly important in game semantics, because its current formalism requires heavy symbolic manipulations on strategies in order to establish even basic categorical facts. This is precisely this work in game semantics which convinced the author [72] to focus on the notion of comonoidal morphism, this leading to the notion of Lafont-Seely category introduced in Section 7.5. 179 As a matter of illustration, let us show how the notion of Lafont-Seely category clarifies the reasons why the category REL equipped with the modality !set does not define a model of linear logic. Every object A of the category REL is equipped with a “multiplication” defined as multA := { (a ⊗ a) ( a | a ∈ |A| } A ⊗ A −→ A. : Observe that the diagram εB !set B /B O dB multB  !set B⊗!set B εB ⊗εB / B⊗B commutes in REL, for every set B. Moreover, in a Lafont-Seely category, every morphism f : !set A −→ B is supposed to lift as a comonoidal morphism f† : !set A −→ !set B satisfying the equality f = εB ◦ f † . Consequently, every such morphism f should make the diagram below commute: !set A f dA  !set A⊗!set A /B O multB f⊗f / B⊗B The commutative diagram translates as the closure property (?) below: if u ( b and v ( b are elements of f then (u ∪ v) ( b is an element of f . which should be satisfied by any morphism f : !set A −→ B of the category REL. This is obviously not the case: hence, the set-theoretic interpretation of the exponential modality does not define a Lafont-Seely category on REL. Remark. The closure property (?) is common to several variants of the relational model equipped with a “set-theoretic” exponential modality. It is instructive to see how the coherence space model satisfies the property: if u ( b and v ( b are elements of a clique f , then either u = v or the two elements u and v are incompatible in the coherence space !set A – and thus, the finite subset u ∪ v does not appear as an element of the web of !set A. 180 Hence coherence is a solution to ensure property (?). Another solution appears in a relational model of linear logic introduced by Glynn Winskel [89] where objects are partial orders, and morphisms are downward-closed subsets – see also the related work [28]. One interesting feature of the model is that its Kleisli category is equivalent to Scott’s model of prime algebraic lattices. The model works despite the fact that the exponential modality is interpreted in a set-theoretic fashion. The reason is that property (?) holds because the element (u ∪ v) ( b is always smaller than the elements u ( b and v ( b in the ordered space (!set A) ( B. 8.8 Conway games: a compact-closed category After attending a lecture by John H. Conway at the end of the 1970s, André Joyal realized that he could construct a category G with Conway games as objects, and winning strategies as morphisms, composed by sequential interaction [54]. This seminal construction provided the first instance of a series of categories of games and strategies, in a trend which became prominent fifteen years later, at the interface between proof theory (linear logic) and denotational semantics (game semantics). This leads to an alternative and purely algebraic account of the abstract machines described by Pierre-Louis Curien and Hugo Herbelin in this volume [29]. Conway games A Conway game is defined as an oriented graph (V, E, λ) consisting of a set V of vertices, a set E ⊆ V × V of edges, and a function λ : E −→ {−1, +1} associating a polarity −1 or +1 to every edge of the graph. The vertices are called the positions of the game, and the edges its moves. Intuitively, a move m ∈ E is played by Player when λ(m) = +1 and by Opponent when λ(m) = −1. As it is usual in graph-theory, we write x → y when (x, y) ∈ E, and call path any sequence of positions s = (x0 , x1 , ..., xk ) in which xi → xi+1 for every i ∈ {0, ..., k − 1}. In that case, we write s : x0 −→ −→ xk to indicate that s is a path from the position x0 to the position xk . In order to be a Conway game, the graph (V, E, λ) is required to verify two additional properties: • the graph is rooted: there exists a position ∗ called the root of the game, such that for every other position x ∈ V, there exists a path from the root ∗ to the position x: ∗ → x1 → x2 → x3 · · · → xk → x, • the graph is well-founded: every sequence of positions ∗ → x1 → x2 → x3 → · · · starting from the root is finite. 181 A path s = (x0 , x1 , ..., xk , xk+1 ) is called alternating when: ∀i ∈ {1, ..., k − 1}, λ(xi → xi+1 ) = −λ(xi−1 → xi ). A play is defined as a path s : ∗ −→ −→ x starting from the root. The set of plays of a Conway game A is denoted PA . Strategies A strategy σ of the Conway game (E, V, λ) is defined as a set of alternating plays such that, for every positions x, y, z, z1 , z2 : 1. the empty play (∗) is element of σ, 2. every play s ∈ σ starts by an Opponent move, and ends by a Player move, 3. for every play s : ∗ −→ −→ x, for every Opponent move x → y and Player move y → z, s ∗ −→ −→ x → y → z ∈ σ ⇒ s ∗ −→ −→ x ∈ σ, 4. for every play s : ∗ −→ −→ x, for every Opponent move x → y and Player moves y → z1 and y → z2 , s s ∗ −→ −→ x → y → z1 ∈ σ and ∗ −→ −→ x → y → z2 ∈ σ ⇒ z1 = z2 . Thus, a strategy is a set of plays closed under even-length prefix (Clause 3) and deterministic (Clause 4). A strategy σ is called winning when for every play s : ∗ −→ −→ x element of σ and every Opponent move x → y, there exists a position z and a Player move y → z such that the play s ∗ −→ −→ x → y → z is element of the strategy σ. Note that the position z is unique in that case, by determinism. We write σ : A to mean that σ is a winning strategy of A. Duality and tensor product The dual A⊥ of a Conway game A = (V, E, λ) is the Conway game A⊥ = (V, E, −λ) obtained by reversing the polarities of moves. The tensor product A ⊗ B of two Conway games A and B is the Conway game defined below: • its positions are the pairs (x, y) noted x ⊗ y of a position x of the game A and a position y of the game B, • its moves from a position x ⊗ y are of two kinds: ( u ⊗ y if x → u, x⊗y→ x ⊗ v if y → v, 182 • the move x ⊗ y → u ⊗ y is noted (x → u) ⊗ y and has the polarity of the move x → u in the game A; the move x ⊗ y → x ⊗ v is noted x ⊗ (y → v) and has the polarity of the move y → v in the game B. Every play s of the tensor product A ⊗ B of two Conway games A and B may be projected to a play s|A ∈ PA and to a play s|B ∈ PB . The Conway game 1 = (∅, ∅, λ) has an empty set of positions and moves. The category G of Conway games and winning strategies The category G has Conway games as objects, and winning strategies of A⊥ ⊗ B as morphisms A −→ B. The identity strategy idA : A⊥ ⊗ A copycats every move received in one component A to the other component. The composite of two strategies σ : A⊥ ⊗ B and τ : B⊥ ⊗ C is the strategy τ ◦ σ : A⊥ ⊗ C obtained by letting the strategies σ and τ react to a Player move in A or to an Opponent move in C, possibly after a series of internal exchanges in B. A formal definition of identities and composition is also possible, but it requires to introduce a few notations. A play is called legal when it is alternating and when it starts by an Opponent move. The set of legal plays is denoted LA . The set of legal plays of even-length is denoted Leven . Note that Leven may be A A defined alternatively as the set of legal plays ending by a Player move. The identity of the Conway game A is defined as the strategy below: even ⊥ idA = { s ∈ Leven A⊥ ⊗A | ∀t ∈ LA⊥ ⊗A , t is prefix of s ⇒ t|A = t|A }. The composite of two strategies σ : A⊥ ⊗ B and τ : B⊥ ⊗ C is the strategy of τ ◦ σ : A⊥ ⊗ C below: τ ◦ σ = { s ∈ Leven A⊥ ⊗C | ∃t ∈ PA⊗B⊗C , t|A,B ∈ σ, t|B,C ∈ τ, t|A,C = s }. The tensor product between Conway games gives rise to a bifunctor on the category G, which makes the category ∗-autonomous, that is, symmetric monoidal closed, with a dualizing object noted ⊥. See Chapter 4 for a definition of these notions. The category G is more than just ∗-autonomous: it is compact closed, in the sense that there exists two isomorphisms 1⊥  (A ⊗ B)⊥ 1  A⊥ ⊗ B⊥ (98) natural in A and B, and satisfying the coherence diagrams of a monoidal natural transformation from (G, ⊗, 1) to its opposite category. The situation is even simpler in the particular case of Conway games, since the isomorphisms (98) are replaced in that case by identities. As in any compact closed category, the dualizing object ⊥ is isomorphic to the identity object of the monoidal structure, in that case the Conway game 1. Thus, the monoidal closure A⊥ ⊗ ⊥ is isomorphic to A⊥ , for every Conway game A. 183 8.9 Conway games: a Lafont category The category G defines a ∗-autonomous category, and thus a model of multiplicative linear logic. Unfortunately, it is not clear today that the original model may be extended to intuitionistic linear logic. In particular, it is still an open question whether there exists a free (or rather co-free) construction for commutative comonoids in the category G of Conway game originally defined by André Joyal [54]. Intuitively, the free commutative comonoid !A generated by a game A is a game where several copies of the game A may be played in parallel, each new copy being opened by Opponent. Since the number of copies is not bounded, it is not obvious to see how such a free commutative comonoid may be constructed in a setting where only well-founded games are allowed. However, as we will see below, the free construction becomes available when one relaxes the well-foundedness hypothesis. The category G∞ of Conway games The category G∞ has (possibly non well-founded) Conway games as objects, and strategies of A⊥ ⊗ B as morphisms A −→ B. Composition of strategies and identities are defined as in the original category G of Conway games. Note that the composite of two winning strategies σ : A −→ B and τ : B −→ C is not necessarily a winning strategy when the game B is not well-founded. Like the category G, the category G∞ is ∗-autonomous, and in fact compact-closed. As such, it defines a model of multiplicative linear logic, where the conjunction ⊗ and the disjunction M are identified. Free commutative comonoid It appears that every Conway game A generates a free (or rather co-free) commutative comonoid !A in the category G∞ . The game !A is defined as follows: • its positions are the finite lists (x1 , x2 , . . . , xm ) of positions x1 , . . . , xm of the game A, • its moves from a position (x1 , x2 , . . . , xm ) to a position (y1 , y2 , . . . , yn ) are of two kinds: – a move xi → yi of the game A occurs in one of the copies 1 ≤ i ≤ m, while the number of copies remains unchanged, and thus: n = m, and the position x j = y j of the m − 1 other copies j , i remain identical, this leading to a move: (x1 , . . . , xi−1 , xi , xi+1 , . . . , xm ) → (x1 , . . . , xi−1 , yi , xi+1 , . . . , xm ) whose polarity in the game !A is the same as the polarity of the move xi → yi in the game A, 184 – an Opponent move ∗A → y of the game A opens a new copy, and thus: n = m + 1 and yn = y, while the position x j = y j of the m other copies 1 ≤ j ≤ m remains identical, this leading to a move: (x1 , . . . , xm ) → (x1 , . . . , xm , y) whose polarity is Opponent in the game !A. Obviously, the Conway game !A is not well-founded as soon as the game A admits an initial move of polarity Opponent. This means that the Conway game !A is an element of G∞ even when the game A is an element of We leave as exercise to the reader the proof that Exercise. Show that !A defines indeed the co-free commutative comonoid generated by a Conway game A in the category G∞ . The exercise is far from easy: the interested reader will find a proof in joint article with Nicolas Tabareau [75].  8.10 Decomposition of the exponential modality For the sake of illustration, we decompose the exponential modality ! of coherence spaces as a suspension modality S followed by a duplication modality D. From a logical point of view, the suspension modality S enables to apply the weakening rule (but not the contraction rule) on the modal formula SA whereas the duplication modality D enables to apply the contraction rule (but not the weakening rule) on the modal formula DA. The suspension modality The suspension modality S transports every coherence space A to the coherence space SA whose elements of the web are • the singleton cliques [a] containing exactly one element a of the web |A|, • the empty clique of A, which we will note ∗A for this purpose. The coherence relation of SA is defined as the coherence relation of A on the singleton cliques: ∀a1 , a2 ∈ |A|, ^ [a1 ] ^ _SA [a2 ] ⇐⇒ a1 _A a2 with the element ∗A coherent to all the elements of the web: ∗A ^ _SA [a]. ∀a ∈ |A|, The duplication modality The duplication modality D transports every coherence space A = (|A|, ^ _A ) to the coherence space DA 185 • whose elements of the web |DA| are the finite and nonempty cliques of A, • where two elements u, v ∈ |DA| of the web are coherent when their union (as cliques) is a clique of A. The exponential modality of coherence spaces factors in the following way: = !set S ◦ D. The difficulty then is to understand what this decomposition really means. It is easy to see that the two modalities S and D define comonads, noted (S, δS , εS ) and (D, δD , εD ). But the composite S ◦ D of two comonads does not necessarily define a comonad: to that purpose, one needs a distributivity law in the sense of Jonathan Beck [10]. Distributivity laws A distributivity law between two comonads S and D is defined as a natural transformation λ : S◦D → D◦S making the four coherence diagrams below λA SDA / DSA δSDA  SSDA DδSA SλA λSA / SDSA λA SDA  / DSSA / DSA δD SA SδD A  SDDA λDA / DSDA λA / DSA SDAE EE yy EE yy EE y y E yy S εSDA EEE yy DεA E" y |y DA DλA  / DDSA SDAD DD DD DD DD SεD DD A D" 186 λA SA / DSA zz zz z z zz D zz εSA z z| commute, for every coherence space A. This may be also expressed topologically, as equalities between string diagrams: D S S D D S S D ε δ = = ε δ S S D D S D D S D D S D S S S ε δ = = ε δ S D S D D S D S D where the distributivity law λ is depicted as a braiding permuting the strings of the comonads S and D. It appears that such a distributivity law λ between the comonads S and D exists in the category COH. Its component λA : SDA → DSA is defined as the clique λA := { ∗DA ( [∗A ] } ] { [[a1 , · · · , ak ]] ( [[a1 ], . . . , [ak ]] | a1 , . . . , ak ∈ |A| } ] { [[a1 , · · · , ak ]] ( [[a1 ], . . . , [ak ], ∗A ] | a1 , . . . , ak ∈ |A| }. for all coherence space A. There exists also a distributivity law λ : D◦S → S◦D whose component is defined as λA := { [∗A ] ( ∗DA } ] { [[a1 ], . . . , [ak ]] ( [[a1 , · · · , ak ]] | a1 , . . . , ak ∈ |A| }. for all coherence space A. The existence of the two distributivity laws λ and λ implies that both S ◦ D and D ◦ S define comonads in the category COH. This fundamental property of distributivity laws is established by purely equational means, and thus holds in any 2-category. This suggests to lift the situation, 187 and to replace the 2-category Cat where we are currently working, by the 2category SymMonCat of symmetric monoidal categories, symmetric monoidal functors (in the lax sense) and monoidal natural transformation. The first step in this direction is to equip the two comonads S and D with coercion morphisms defined as mSA,B : S(A) ⊗ S(B) −→ S(A ⊗ B) mSA,B mS1 : := { (∗A ⊗ ∗B ) ( ∗A⊗B } ] { ([a] ⊗ [b]) ( [a ⊗ b] | a ∈ |A|, b ∈ |B| } 1 −→ S(1) { ∗ ( ∗1 } := ] { ∗ ( [∗] } and mD A,B := mD : D(A) ⊗ D(B) −→ D(A ⊗ B) A,B   [a1 , . . . , ak ] ⊗ [b1 , . . . , bk ] ( [a1 ⊗ b1 , . . . , ak ⊗ bk ]    where     a1 , . . . , ak ∈ |A| and b1 , . . . , bk ∈ |B|. mD 1 1 −→ D(1) : :=          { ∗ ( [∗] }. Once the two symmetric monoidal comonads S and D defined in this way, it appears that the distributivity laws λ and λ are monoidal natural transformations between S ◦ D and D ◦ S. In other words, the distributivity laws λ and λ between the comonads S and D lift along the forgetful 2-functor −→ SymMonCat Cat which transports every symmetric monoidal category to its underlying category. This ensures that the two composite comonads S ◦ D and D ◦ S are symmetric and lax monoidal in the category (COH, ⊗, 1). Exercise. Establish naturality and monoidality of λ and of λ and check that the four coherence diagrams of distributivity laws commute. [Hint: use the fact that all the structural morphisms A −→ B are defined as functions from the web |B| of the codomain to the web |A| of the domain.]  The Eilenberg-Moore coalgebras of the suspension modality S We give here a concrete description of the category COHS of Eilenberg-Moore coalgebras of the suspension modality S. Consider the category (COH ↓ 1) whose objects are the pairs (A, hA ) consisting of a coherence space A and a morphism taken in the category COH hA : A −→ 1 and whose morphisms between such pairs f : (A, hA ) −→ (B, hB ) 188 are morphisms between the underlying coherence spaces f : A −→ B making the diagram f /B A> >> >> >> > hA >> >> >  1 hB commute in the category COH. Equivalently, every pair (A, hA ) may be seen as a coherence space A equipped with an anticlique hA . A morphism f : (A, hA ) −→ (B, hB ) is then a morphism between coherence spaces which transports the anticlique hB to the anticlique hA by relational composition. We have seen in Proposition 15 (Section 6.2) that the monoidal unit 1 defines a commutative monoid in any symmetric monoidal category, and consequently in the category COH. From this follows that the category (COH ↓ 1) is symmetric monoidal, with tensor product ⊗S of two objects (A, hA ) and (B, hB ) defined as the coherence space A ⊗ B equipped with the morphism λ=ρ / 1⊗1 hA ⊗hB A⊗B / 1. This morphism may be seen equivalently as the tensor product of the two anticliques hA and hB . The forgetful functor U : (COH ↓ 1) −→ COH which transports every pair (A, hA ) to its underlying coherence space A is symmetric and strictly monoidal. Moreover, it has a right adjoint F : COH −→ (COH ↓ 1) which transports every coherence space A to the coherence space A&1 equipped with the second projection morphism π2 : A&1 −→ 1. This object of (COH ↓ 1) may be seen equivalently as the object A&1 equipped with the anticlique consisting the single element of the web of 1. The adjunction U a F means that a morphism f making the diagram f / B&1 A> } >> } } >> } >> }} > }}π2 } hA >> >> }} > ~}}} 1 189 commute, is entirely described by its composite f A π1 / B&1 /B with the first projection. The left adjoint functor U is strictly monoidal. By Proposition 5.17 (Section 5.17) the adjunction U a F is thus symmetric monoidal, in the lax sense. The resulting symmetric monoidal comonad is precisely the suspension comonad S : A 7→ A&1. The adjunction is comonadic, in the sense that the category (COH ↓ 1) coincides with the category COHS of Eilenberg-Moore coalgebras of the comonad S, with U as (canonical) forgetful functor U : COHS −→ COH. Besides, the monoidal structure of the category (COH ↓ 1) coincides with the monoidal structure (⊗S , 1) which equips the category COHS of Eilenberg-Moore categories defined in Section 6.10. In a nutshell: the adjunction U a F coincides with the canonical adjunction associated to the comonad S in the 2category SymMonCat of symmetric and lax monoidal functors. The Kleisli category associated to the suspension modality S At this stage, it is wise to see the Kleisli category COHS as the full subcategory of COHS consisting of the free S-coalgebras. As a matter of fact, a free Scoalgebra is precisely a coherence space A equipped with a singleton anticlique hA : A −→ 1. The main point to notice then is that the monoidal structure of the category COHS restricts to the category COHS . This follows from the fact that the tensor product of two singleton anticliques is a singleton anticlique. The resulting tensor product ⊗S on the Kleisli category COHS does not coincide with the tensor product of COH, in the sense that the canonical right adjoint functor MS : COH −→ COHS does not transport the tensor product of COH to the tensor product of COHS inherited from the tensor product of COHS . On the other hand, the left adjoint functor LS : COHS −→ COH is symmetric and strong monoidal, this making the adjunction LS COHS i ⊥ MS symmetric and lax monoidal. 190 ) COH Modal decomposition Our next observation is that the comonad D lifts to a comonad DS in the category COHS of Eilenberg-Moore S-coalgebras. The definition of the comonad DS is very simple: it transports every S-coalgebra seen as a coherence space A equipped with an anticlique hA : A −→ 1 to the coherence space D(A) equipped with the anticlique defined as follows: D(A) DhA −→ D(1) εD −→ 1. The careful reader will notice that the existence of the distributivity law λ : DS → SD mentioned earlier in the section ensures that the comonad D lifts to a comonad on the category COHS , and that the resulting comonad coincides with DS . Besides, the fact that the natural transformation λ is lax monoidal ensures that the comonad DS is symmetric and lax monoidal in the category COHS with monoidal structure inherited from COH. A remarkable point is that the comonad DS on COHS transports free Scoalgebras to free S-coalgebras, and thus restricts to a comonad DS in the full subcategory COHS of free S-coalgebras. The resulting comonad DS is symmetric and lax monoidal in the Kleisli category COHS equipped with the monoidal structure (⊗S , 1) inherited from the category COHS . This leads to a decomposition of the original linear-non-linear adjunction L STABLE j * ⊥ COH M between the category COH of coherence spaces and linear functions, and the category STABLE of qualitative domains and stable functions, into a pair of symmetric and lax monoidal adjunctions LD STABLEj ⊥ * AFFINE j LS ⊥ ) COH MS MD where AFFINE denotes the category of coherent qualitative domains and affine functions between them – a category which coincides with the Kleisli category COHS associated to the comonad S – see Section 8.10 for a definition of coherent qualitative domains. 191 9 Conclusion One lesson of categorical semantics is that the exponential modality of linear logic should be described as an adjunction, rather than as a comonad. The observation is not simply technical: it has also a deep effect upon the way we understand logic in the wider sense. This establishes indeed that the decomposition of the intuitionistic implication performed in linear logic A⇒B (!A) ( B := (99) may be carried on one step further, with a decomposition of the exponential modality itself, as ! := L ◦ M. (100) Here, the task of the functor M L −→ M : is to multiply every ”linear” object A into a “multiple” object MA of the category M, while the task of the functor L M −→ L : is to linearize every “multiple” object A of the category M to a “linear” object LA of the category L. This refined decomposition requires to think differently about proofs, and to accept the idea that logic is polychrome, not monochrome this meaning that several universes of discourse (in this case, the categories L and M) generally coexist in logic, and that the purpose of a proof is precisely to intertwine these various universes by applying back and forth modalities (in this case, the functors L and M). In this account of logic, each universe of discourse implements its own body of internal laws. Typically, in the case of linear logic, the category M is cartesian in order to interpret the structural rules (weakening and contraction) while the category L is symmetric monoidal closed, or ∗-autonomous, in order to interpret the logical rules. The chromatic reference comes from string diagrams, where each category L and M is represented by a specific color (L in dark red, M in light blue), each modality L and M defining “functorial boxes” enshrining these universes of discourse inside one another, like russian puppets. Typically, the diagram LM B MB B f M A1 L Ak M Ak M A1 LM Ak LM A1 192 represents the morphism f : A1 ⊗ · · · ⊗ Ak −→ B living in the category L, transported by the functor M to the category M, and then transported back to the category L by the functor L. See [73] for a detailed account of this diagrammatic notation of proofs. Another useful lesson of categorical semantics is that the structural rules of logic are generic this meaning that the structure of the exponential modality does not depend on the underlying logic. This phenomenon is manifest in the central part of this survey (Chapter 7) which is devoted to the categorical structure of the exponential modality of linear logic. In this chapter, it appears that the various axiomatizations of the exponential modality only require that the category L is symmetric monoidal, and in some cases, cartesian. In particular, these axiomatizations are independent of the hypothesis that the category L is either monoidal closed, or ∗-autonomous. This basic observation leads to the notion of resource modality formulated in recent collaborative work with Nicolas Tabareau [75]. A resource modality on a symmetric monoidal category (L, ⊗, 1) is defined as a symmetric monoidal adjunction (in the lax sense) L Mf ⊥ & L (101) M between the symmetric monoidal category (L, ⊗, 1) and a symmetric monoidal category (M, , u). The resource modality is called: • exponential when the tensor product  is a cartesian product and the tensor unit u is a terminal object in the category M, • affine when the unit u is a terminal object in the category M, • relevant when there exists a monoidal natural transformation A −→ A  A satisfying the associativity and commutativity laws of a commutative (unit-free) comonoid. We have seen earlier in this survey (Chapter 5) that a resource modality (101) is the same thing as an adjunction L a M in the usual sense, where the left adjoint functor L is equipped as a symmetric and strong monoidal functor (L, m). Hence, a modular approach to linear logic enables to extract the appropriate notion of resource modality, and to apply it in situations – typically encountered in game semantics – where the category L is symmetric monoidal, but not closed. A third lesson of categorical semantics is that 193 resource modalities do compose when one sees them as adjunctions, rather than as comonads. Indeed, in several important interpretations of logic, like coherence spaces or sequential games, we have observed (Chapter 8) that the exponential modality L a M of linear logic factors as an affine modality LS a MS followed by a relevant modality LD a MD in a situation depicted as follows: LS LD Mf ⊥ & Pf & ⊥ (102) L MS MD This pair of adjunctions induces a suspension comonad S living in the category L and a duplication comonad D living in the category P as follows: S := LS ◦ MS D := LD ◦ MD . In the case of coherence spaces as well as in the case of sequential games, one may define the categories P and M as the Kleisli categories P := LS M := PD associated to the comonad S and D, respectively. A generic argument establishes then that the category M coincides necessarily with the Kleisli category L! associated to the exponential comonad on the category L. It is worth mentioning that an additional structure occurs in the specific case of coherence spaces: there exists indeed a comonad (also noted D for this purpose) living in the category L = COH of coherence spaces and linear maps, which extends along the embedding functor MS as the comonad D of the category P = COHS . This ability of the comonad D in COH to extend along MS is reflected by a distributivity law λ : S◦D −→ D◦S in the category COH, which we have described earlier in this survey (Chapter 8). The existence of such a comonad D in the category COH is specific to coherence spaces, and more generally, to the relational models of linear logic: in particular, there exists no such duplication comonad D in the category L when one shifts to models of interaction based on sequential games. This leads to the thesis that the decomposition of the exponential modality as an adjunction (102) is more generic and appropriate than its decomposition as a comonad (103) below: ! := S ◦ D (103) since the exponential modality seen as an adjunction L a M factors in exactly the same way (102) in sequential games as in coherence spaces, see [75] for details. Besides, the decomposition formula (103) it conveys the false impression that 194 the correct recipe to transform a linear formula A into a multiple one !A is to transform the formula A into a replicable formula DA and then to apply the suspension modality S, in order to obtain the desired formula !A = SDA. The polychromatic decomposition (102) reveals that the correct order to proceed is rather the opposite one: ! := LS ◦ LD ◦ MD ◦ MS . (104) The task of the first operation MS is to transport the linear formula A into an affine formula MS (A) while the task of the second operation MD is to tranport the resulting affine formula to the multiple formula M(A) = MD MS (A) living in the cartesian category M. Here again, categorical semantics clarifies a misconception, induced by our prevalent monochromatic vision of logic. Categorical semantics offers an essential tool in the fine-grained analysis of logic... leading to the decomposition of logical connectives and modalities into smaller meaningful components. This practice has been extremely fruitful in the past, and leads to the bold idea that there are such things as elementary particles of logic whose combined properties and interactions produce the logical phenomenon. In this atomic vision of logic, proof theory becomes a linguistic laboratory, where one studies the logical connectives defined by tradition, and tries to decompose them as molecules of elementary particles – in the style of (99), (100) and (104). This quest is driven by the hypothesis that these basic particles of logic should be regulated by purely algebraic principles, capturing the essence of language and interactive behaviors. Seen from this angle, categorical semantics becomes the cornerstone of proof theory, extracting it gradually from its idiosyncratic language (sequent calculus, etc.) and offering a promising bridge with contemporary algebra. An illustration of the atomic philosophy is provided by the algebraic study of negation, certainly one of the most basic ingredients of logic. In Chapter 4, we have introduced the notion of dialogue category, defined as a symmetric monoidal category (C, ⊗, 1) equipped with a tensorial negation – itself defined as a functor ¬ : C −→ Cop equipped with a bijection ψA,B,C : C(A ⊗ B, ¬C)  C(A, ¬(B ⊗ C)) natural in A, B and C, satisfying a coherence axiom discussed in Section 4.14. Every such tensorial negation induces an adjunction L Cf ⊥ R 195 ' Cop (105) between the category C and its opposite category Cop , where R coincides with the functor ¬ whereas the functor L is defined as the opposite functor ¬op . Looking at the unit η and counit ε of the adjunction ηA A : εB −→ R ◦ L(A) B : −→ L ◦ R(B) in the language of string diagrams L R η ε R L enables to reformulate the two triangular laws of an adjunction (see Chapter 5) as topological deformations: L η ε L ε R R η = R = L This diagrammatic point of view enables then to reconstruct game semantics from purely algebraic principles – where the trajectory of the functors R and L in the string diagram associated to a proof π reconstructs the interactive strategy [π] induced by game semantics. In this prospect, a typical proof is depicted as a natural transformation generated by the unit η and counit ε of the adjunction R L R R L R L R L L 196 with cut-elimination identified as a purely topological procedure transporting, typically, the diagram R L into the unit diagram η after a series of triangular laws. This dynamic and topological account of proofs supports the idea that there exists indeed such things as elementary particles of logic, whose properties remain to be clarified. In this way, the notion of dialogue category provides an algebraic account of explicit models of interaction, based on games and strategies – rather than spaces and cliques – this offering precious insights on the abstract machines described by Pierre-Louis Curien, Hugo Herbelin and Jean-Louis Krivine in this volume. We have already mentioned that the repetition modality of game semantics defines a resource modality (101) on the dialogue category C. A notion of existential quantification may be also added to the logic: typically, the game interpreting the formula ∃x.A(x) starts by a Proponent move which exhibits a witness x0 for the variable x, and then carries on the game interpreting the formula A. Once translated in this logical framework, the drinker formula ∃y.{A(y) ⇒ ∀x.A(x)} 197 mentioned in the introduction is (essentially) equivalent to the valid formula ¬ ! ¬ ∃y A(y) w ⊗ GGG ww G ¬ ∃x A(x) This formula implements a game where the repetition modality ! enables Proponent to backtrack at the position indicated by the modality, and thus, to change witness y in the course of interaction. In contrast, the translation of the drinker formula, understood this time in the intuitionistic sense, is (essentially) equivalent to the formula ∃y A(y) w ⊗ GGG ww G ¬ ∃x A(x) which does not allow repetition, and is thus not valid in the tensorial logic with existential quantification and repetition considered here. This leads to our last thesis, that logic = data structure + duality where data structure are constructed using connectives like: ⊗ ∃ ! tensor product, existential quantification, repetition modality, and where duality means logical negation A 7→ ¬A whose purpose is to permute the roles of Proponent (proof, program) and Opponent (refutation, environment). Although schematic, the thesis clarifies in what 198 sense proof theory extends the traditional boundaries of computer science (the study of data structures and algorithms) by incorporating a new ingredient: logical duality. Duality is an essential aspect of programming languages: remember indeed that every program is designed to interact with other programs, defining its continuation. If the author is correct, this algebraic approach to negation should lead to a fruitful synthesis between linear logic and the general theory of computational effects. There is little doubt that categorical semantics will offer the most precious guide in this ongoing investigation. We will conclude this survey by mentioning that, for purely independent reasons, the algebraic investigation of logical duality has become a central topic of contemporary algebra, with promising connections to quantum algebra and mathematical physics. Recall that a Frobenius algebra F is a monoid (F, m, e) and a comonoid (F, d, u) satisfying the following equalities m d = = m d m d expressed here using string diagrams. The notion of Frobenius algebra captures the idea of a 2-dimensional cobordism in topological quantum field theory, see Joachim Kock’s monograph [60] for a categorical introduction to the topic. Now, Brian Day and Ross Street observed that a ∗-autonomous category is the same thing as a relaxed 2-dimensional notion of Frobenius algebra, defined in a bicategory of (categorical) bimodules – sometimes called profunctors, or distributors, depending on the origin of the locutor – whose multiplication and unit are special bimodules induced by functors, see [30, 85]. Relaxing one step further this 2-dimensional notion of Frobenius algebra leads to the notion of dialogue category discussed above, with promising connections to game semantics. Then, Day and Street define a quantum category on a field k as a monoidal comonad (in the lax sense) induced by a monoidal adjunction f∗ Ed % V op ⊗ V ⊥ f∗ This adjunction relates the object-of-edges E and the Frobenius monoid V op ⊗ V induced by the (left and right) duality V op a V 199 a V op between the object-of-vertices V of the quantum category, and its opposite V op . The idea is to mimic the basic situation of quantum algebra, where the notion of Hopf algebra in the category of vector spaces provides a “quantum” counterpart to the notion of group in the category of sets. Here, the monoidal adjunction f∗ a f ∗ is supposed to live in a monoidal bicategory of comodules, providing a “quantum” counterpart to the bicategory of spans on sets – where such a monoidal adjunction f∗ a f ∗ defines a category in the usual sense. Day and Street carry on, and define a quantum groupoid as a ∗-autonomous quantum category – that is, a quantum category where, in addition, the object-of-edges E is ∗-autonomous, as well as the adjunction f∗ a f ∗ relating E to V op ⊗ V, all this defined in a suitable sense explicated in [30]. So, categorical semantics leads to an area of mathematics where the traditional frontiers between algebra, topology and logic gradually vanish, to reveal a unifying and harmonious piece of n-dimensional algebra. This emerging unity includes a series of basic dualities scattered in the literature: • algebraic duality – defined by an antipode in a Hopf algebra, • categorical duality – defined by a duality in a monoidal category, • logical duality – defined by the negation of a formula, • ludic duality – defined by the symmetry between Player and Opponent, • programming duality – defined by the continuation of a program. One fascinating aspect of this convergence is that a purely logical observation – the necessity to replace the involutive negation by a non involutive one, and to shift from ∗-autonomous categories to dialogue categories, in order to reflect game semantics properly – becomes suddenly connected to questions of an algebraic nature, regarding the nature of antipodes and dualities in quantum groups. Today, much remains to be investigated in this largely unexplored area at the frontier of logic, algebra, and computer science. Acknowledgments. This survey has been elaborated during a graduate course on linear logic and game semantics at the University Paris Diderot. The author is grateful to his friends and colleagues Antonio Bucciarelli, Juliusz Chroboczek, Vincent Danos, Thomas Ehrhard, Russ Harmer, Olivier Laurent and Giuseppe Longo for co-tutoring the course along the years, and to Emmanuel Beffara, Pierre Clairambault, Michel Hirschowitz, Joachim de Lataillade, François Maurel, Samuel Mimram, Raphael Montelatici, Emmanuel Polonovski, Nicolas Tabareau and Christine Tasson (among many others) for taking part so actively in it. This survey would have never existed without them. The author is also indebted to Albert Burroni, Pierre-Louis Curien, Russ Harmer, Masahito Hasegawa, Martin Hyland and the anonymous referee for precious discussions and helpful comments on preliminary versions of this survey. 200 Paul-André Melliès Laboratoire Preuves, Programmes, Systèmes CNRS & Université Paris Diderot 75205 Paris Cedex 13, France Email: mellies@pps.jussieu.fr 201 References [1] Michele Abrusci and Paul Ruet. Non-commutative logic I: the multiplicative fragment. Annals of Pure and Applied Logic 101(1): 29-64, 2000. [2] Roberto Amadio and Pierre-Louis Curien. Domains and LambdaCalculi. Cambridge University Press, 1998. [3] Jean-Marc Andreoli, Gabriele Pulcini, Paul Ruet. Permutative Logic. Proceedings of Computer Science Logic 2005. Volume 3634 of Lecture Notes in Computer Science, Springer Verlag, 2005. [4] Andrew Barber, Philippa Gardner, Masahito Hasegawa and Gordon Plotkin. From action calculi to linear logic. Proceedings of Computer Science Logic ’97, Aarhus, Denmark. Volume 1414 of Lecture Notes in Computer Science, Springer Verlag. 1997. [5] Andrew Barber and Gordon Plotkin. Dual intuitionistic linear logic. Technical Report, LFCS, University of Edinburgh, 1997. [6] Andrew Barber. Linear Type Theories, Semantics and Action Calculi. PhD Thesis of the University of Edinburgh. LFCS Technical Report CSLFCS-97-371. 1997. [7] Michael Barr. ∗-autonomous categories and linear logic. Mathematical Structures in Computer Science. 1(2):159-178, 1991. [8] Michael Barr. Non-symmetric star-autonomous categories. Theoretical Computer Science, 139 (1995), pp 115 - 130. [9] Nuno Barreiro and Thomas Ehrhard. Quantitative semantics revisited. Proceedings of the Typed Lambda-Calculi and Applications conference, Lecture Notes in Computer Science, Springer Verlag, 1581, 40-53, 1999. [10] Jon Beck Distributive laws. Lecture Notes in Mathematics 80: 119?140, 1969. [11] Jean Bénabou. Introduction to bicategories. Reports of the Midwest Category Seminar. Volume 47 of Lecture Notes in Mathematics, Springer Verlag. 1967. [12] Nick Benton, Gavin Bierman, Valeria de Paiva, Martin Hyland. Term assignment for intuitionistic linear logic. Technical Report 262, Computer Laboratory, University of Cambridge, 1992. [13] Nick Benton. A Mixed Linear and Non-Linear Logic: Proofs, Terms and Models. Proceedings of Computer Science Logic ’94, Kazimierz, Poland. Volume 933 of Lecture Notes in Computer Science, Springer Verlag. June 1995. 202 [14] Gérard Berry. Stable models of typed lambda-calculi. Proceedings of the 5th International Colloquium on Automatas, Languages and Programming, number 62 in Lecture Notes in Computer Science. Springer Verlag 1978. [15] Gavin Bierman. On intuitionistic linear logic. PhD Thesis. University of Cambridge Computer Laboratory, December 1993. [16] Gavin Bierman. What is a categorical model of intuitionistic linear logic? Proceedings of the Second International Conference on Typed Lambda Calculus and Applications. Volume 902 of Lecture Notes in Computer Science, Springer Verlag. Edinburgh, Scotland, April 1995. Pages 73-93. [17] Lars Birkedal, Rasmus Møgelberg and Rasmus Lerchedahl Petersen. Category-theoretic models of Linear Abadi & Plotkin Logic. Theory and Applications in Categories, 20(7):116-151, 2008. [18] Rick Blute. Hopf Algebras and Linear Logic. Mathematical Structures in Computer Science 6, pp. 189-217, 1996. [19] Rick Blute, Robin Cockett, Robert Seely, Todd Trimble. Natural Deduction and Coherence for Weakly Distributive Categories. Journal of Pure and Applied Algebra, 113(1996)3, pp 229-296. [20] Rick Blute and Phil Scott. The Shuffle Hopf Algebra and Noncommutative Full Completeness. Journal of Symbolic Logic 63, pp. 1413-1435, (1998). [21] Rick Blute and Phil Scott. Category Theory for Linear Logicians. Linear Logic in Computer Science. Edited by T. Ehrhard, J-Y. Girard, P. Ruet and P. Scott. London Mathematical Society Lecture Notes Series, Volume 316, Cambridge University Press, 2004. [22] Francis Borceux. Handbook of Categorical Algebra 2. Categories and Structures. Volume 51 of the Encyclopedia of Mathematics and Its Applications. Cambridge University Press, 1994. [23] Albert Burroni. Récursivité graphique (1e partie) : Catégorie des fonctions récursives primitives formelles. Cahiers de topologie et géométrie différentielle catégoriques. XXVII,1 1986. [24] Albert Burroni. Higher dimensional word problem with application to equational logic. Theoretical Computer Science 115, 43-62, Elsevier 1993. [25] Samuel Buss. An introduction to Proof Theory. Handbook of Proof Theory, Edited by Samuel Buss. Volume 137 of Studies in Logic and the Foundations of Mathematics, North Holland, 1998. 203 [26] Robin Cockett, Robert Seely. Linearly Distributive Categories. Journal of Pure and Applied Algebra, 114(1997)2, pp 133-173. [27] Pierre-Louis Curien. On the symmetry of sequentiality. In Proceedings of Mathematical Foundations of Programming Semantics, MFPS’93, LNCS 802, Springer Verlag, 1993. [28] Pierre-Louis Curien, Gordon Plotkin, and Glynn Winskel. Bidomains and linear logic. Festschrift for Robin Milner, MIT Press. [29] Pierre-Louis Curien and Hugo Herbelin. Abstract machines for dialogue games. This volume. [30] Brian Day and Ross Street. Quantum categories, star autonomy, and quantum groupoids. In Galois theory, Hopf algebras and semiabelian categories. Volume 43 of Fields Institute Communications, American Mathematical Society, Providence, RI, 2004, pp. 187–225. [31] Thomas Ehrhard. Hypercoherences: a strongly stable model of linear logic. In Mathematical Structures in Computer Science, 3:365-385, 1993. [32] Marcelo Fiore, Gordon Plotkin, John Power. Complete cuboidal sets in Axiomatic Domain Theory. In Proceedings of Logic in Computer Science (LiCS’ 97), pages 268-279. IEEE, Computer Society Press, 1997. [33] Gottlob Frege. Begriffschrift, a formula language, modeled upon that of arithmetic, for pure thought (1879). An english translation appears in From Frege to Gödel. A source book in Mathematical Logic, 1879—1931. Edited by J. van Heijenoort. Harvard University Press, 1967. [34] Philippa Gardner and Masahito Hasegawa. Types and models for higher-order action calculi. In Proc. 3rd International Symposium on Theoretical Aspects of Computer Software (TACS’97), Sendai. Springer LNCS 1281, pages 583-603, September 1997. [35] Gerhard Gentzen. Investigations into logical deduction (1934). An english translation appears in The Collected Papers of Gerhard Gentzen. Edited by M. E. Szabo, North-Holland 1969. [36] Gerhard Gentzen. The Collected Papers. Edited by M. E. Szabo, North-Holland 1969. [37] Jean-Yves Girard. Proof Theory and Logical Complexity. Studies in Proof Theory, Bibliopolis, 1987. [38] Jean-Yves Girard, Yves Lafont, Paul Taylor. Proofs and Types. Cambridge University Press (Cambridge Tracts in Theoretical Computer Science, 7). First published 1989, reprinted with corrections 1990. The book is available online at http://www.cs.man.ac.uk/∼pt/stable/Proofs+Types.html 204 [39] Jean-Yves Girard. The system F of variable types fifteen years later. Theoretical Computer Science, 45, 1986. [40] Jean-Yves Girard. Linear logic. Theoretical Computer Science, 50: 1102, 1987. [41] Jean-Yves Girard. Locus Solum. Mathematical Structures in Computer Science 11, pp. 301-506, 2001. [42] Jean-Yves Girard. Le Point Aveugle. Hermann, collection "Visions des Sciences". 2006. [43] Kurt Gödel. On formally indecidable propositions of Principia Mathematica and related systems I (1931). An english translation appears in From Frege to Gödel. A source book in Mathematical Logic, 1879—1931. Edited by J. van Heijenoort. Harvard University Press, 1967. [44] Russ Harmer, Martin Hyland and Paul-André Melliès, Categorical combinatorics for innocent strategies. Proceedings of the 22nd Annual IEEE Symposium on Logic in Computer Science, Wroclaw, 2007. [45] Masahito Hasegawa, Classical Linear Logic of Implications. Mathematical Structures in Computer Science. 15(2):323-342, April 2005. [46] David Hilbert. On the infinite (1925). An english translation appears in From Frege to Gödel. A source book in Mathematical Logic, 1879—1931. Edited by J. van Heijenoort. Harvard University Press, 1967. [47] Robin Houston. Mathematics of games. Notes available on the author’s web page. October 2004. [48] Dominic Hughes. Simple free star-autonomous categories and full coherence. Manuscript. Submitted. [49] Martin Hyland and Luke Ong. On Full Abstraction for PCF: I, II and III, Information and Computation, Vol. 163, 2, pp. 285–408, 2000. Notes circulated since 1994. [50] Martin Hyland. Game Semantics. In Semantics and logics of computation. A. Pitts and P. Dybjer editors. Publications of the Newton Institute, Cambridge University Press, 1997. [51] Martin Hyland and Andrea Schalk. Abstract Games for Linear Logic. Extended Abstract. In Proceedings of CTCS ’99, Volume 29 of Electronic Notes in Theoretical Computer Science, 1999. [52] Martin Hyland and Andrea Schalk. Games on Graphs and Sequentially Realizable Functionals. Extended Abstract. In: Proc. Logic in Computer Science 2002, IEEE Computer Science Press, pp. 257–264. 205 [53] Martin Hyland and Andrea Schalk. Glueing and Orthogonality for Models of Linear Logic. In Theoretical Computer Science 294 (2003), pp. 183–231. [54] André Joyal. Remarques sur la théorie des jeux à deux personnes. Gazette des Sciences Mathématiques du Québec, volume 1, numbe 4, pages 46–52, 1977. [55] André Joyal and Ross Street. Braided Tensor Categories, Advances in Mathematics 102, 20–78, 1993. [56] André Joyal and Ross Street. The geometry of tensor calculus, I. Advances in Mathematics 88, 55–112, 1991. [57] André Joyal, Ross Street and Dominic Verity. Traced monoidal categories. Math. Proc. Camb. Phil. Soc. 119, 447–468, 1996. [58] Daniel Kan. Adjoint functors. Transactions of the American Mathematical Society, 87:294-329, 1958. [59] Christian Kassel. Quantum Groups. Graduate Texts in Mathematics 155, Springer Verlag, 1995. [60] Joachim Kock. Frobenius algebras and 2D topological quantum field theories. No. 59 of London Mathematical Society Student Texts, Cambridge University Press, 2003. [61] Jean-Louis Krivine. Realizability in classical logic. This volume of Panoramas et Synthèses. [62] Stephen Lack. Limits for lax morphisms. Applied Categorical Structures, 13(3):189-203, 2005. [63] François Lamarche. Sequentiality, games and linear logic. Manuscript, 1992. [64] Joachim Lambek. The mathematics of sentence structure. American Mathematical Monthly, 65 (3): 154–170, 1958. [65] Joachim Lambek and Philip Scott. Introduction to Higher Order Categorical Logic. Cambridge Studies in Advanced Mathematics Vol. 7. Cambridge University Press, 1986. [66] Saunders Mac Lane. Categories for the working mathematician. Graduate Texts in Mathematics 5. Springer Verlag 2nd edition, 1998. [67] Maria Emilia Maietti, Paola Maneggia, Valeria de Paiva, Eike Ritter Relating categorical semantics for intuitionistic linear logic. Applied Categorical Structures, volume 13(1):1–36, 2005. 206 [68] Paola Maneggia. Models of linear polymorphism. PhD thesis, School of Computer Science, 2004. [69] Paul-André Melliès. Asynchronous games 2: the true concurrency of innocence. Special issue of Theoretical Computer Science: Selected papers of CONCUR 2004, edited by P. Gardner and N. Yoshida. Volume 358, Issue 2-3, August 2006. [70] Paul-André Melliès. Comparing hierarchies of types in models of linear logic. Information and Computation, Volume 189, Issue 2, Pages 202-234, March 2004. [71] Paul-André Melliès. A topological correctness criterion for noncommutative logic. Linear Logic in Computer Science. Edited by T. Ehrhard, J-Y. Girard, P. Ruet and P. Scott. London Mathematical Society Lecture Notes Series, Volume 316, Cambridge University Press, 2004. [72] Paul-André Melliès. Categorical models of linear logic revisited. Manuscript. Preliminary version of this survey. [73] Paul-André Melliès. Functorial boxes in string diagrams. Proceedings of Computer Science Logic 2006. LNCS 4207, Springer Verlag, 2006. [74] Paul-André Melliès and Samuel Mimram. Asynchronous games without alternation. Journal version of the extended abstract published in the proceeding of the International Conference on Concurrency Theory, CONCUR 2007. [75] Paul-André Melliès and Nicolas Tabareau. Resource modalities in game semantics. Journal version of the extended abstract published in the proceeding of the IEEE Symposium on Logic in Computer Science 2007. [76] Peter Nidditch. Peano and the recognition of Frege. Mind 72, 1963. [77] Dusko Pavlovic. Chu I : cofree equivalences, dualities and starautonomous categories. Mathematical Structures in Computer Science, Volume 7, Issue 1, pp 49 – 73, February 1997. [78] Jeff Polakow and Frank Pfenning. Relating natural deduction and sequent calculus for intuitionistic non-commutative linear logic. Proceedings of the 15th Conference on Mathematical Foundations of Programming Semantics, New Orleans, Louisiana, April 1999. Edited by A. Scedrov and A. Jung. Electronic Notes in Theoretical Computer Science, Volume 20. [79] Gordon D. Plotkin. Type Theory and Recursion. Extended Abstract. In Proceedings of Logic in Computer Science (LiCS’ 93), page 374. IEEE, Computer Society Press, 1993. 207 [80] Bruno Poizat. A Course in Model Theory. Universitext. Springer Verlag, 2004. [81] Andrea Schalk. What is a categorical model for linear logic? Notes available on the author’s web page. October 2004. [82] Robert Seely. Linear logic, star-autonomous categories and cofree coalgebras. Applications of categories in logic and computer science, Contemporary Mathematics, 92, 1989. [83] Raymond Smullyan. What Is the Name of This Book? The Riddle of Dracula and Other Logical Puzzles. Pelican, 1978. [84] Ross Street. The formal theory of monads. Journal of Pure and Applied Algebra, 2:149-168, 1972. [85] Ross Street. Frobenius monads and pseudomonoids, Journal of Mathematical Physics 45(10). October 2004. [86] Ross Street. Quantum Groups: A Path to Current Algebra. Australian Mathematical Society Lecture Series (No. 19). Cambridge University Press, 2006. [87] Paul Taylor. Quantitative Domains, Groupoids and Linear Logic. Category Theory and Computer Science 1989. ed. David Pitt, Springer Lecture Notes in Computer Science 389 (1989) 155-181. [88] Jean van Heijenoort. Logic as calculus and logic as language Synthese, Volume 17, Number 1, january 1967. [89] Glynn Winskel. A linear metalanguage for concurrency. Proceedings of Algebraic Methodology and Software Technology, AMAST ’98, 1998. [90] David Yetter. Quantales and (noncommutative) linear logic. Journal of Symbolic Logic 55 (1990), 41-64. 208 Index ∗-autonomous category, 74 2-category, 94 Cat, 97 LaxMonCat, 98 SymMonCat, 98 SymOplaxMonCat, 98 Linear-non-linear adjunction, 173 Qualitative modality, 177 Quantitative modality, 177 Seely category, 177 Comonad, 126 Category of Eilenberg-Moore coalgebras, 132 Adjunction, 99 Kleisli category CK , 132 Definition in 2-categories, 100 Symmetric monoidal comonad, 134 Linear-non-linear, 141 Comonoid, 118 Triangular identities, 103 Comonoid morphism, 118 Algebra, 128 Conway games, 183 Algebra morphism, 128 Exponential modality, 186 Cut-elimination theorem, 11 Braiding, 67 Axiom vs. hypothesis, 45 Eckmann-Hilton, 116 Commuting conversion, 42 Exchange steps, 46 Cartesian categories Principal conclusion vs. principal Cartesian 2-categories, 98 hypothesis, 47 Cartesian product, 34 Procedure, 14 Characterization, 119 Promotion vs. structural rules, 48 Category Secondary conclusion, 50 of commutative comonoids, 124 Secondary hypothesis, 53 K Eilenberg-Moore category C , 132 The η-expansion steps, 44 T Eilenberg-Moore category C , 128 Kleisli category of a comonad, 132 Derivation trees, 6, 9 Kleisli category of a monad, 128 Kleisli category CT , 128 Exponentiable object, 79 Lafont category, 144 Formula, 4 Lafont-Seely category, 163 Drinker Formula, 17 Linear category, 151 Functor of coherence spaces, 171 Duality between lax and oplax funcof Conway games, 183 tors, 107 of monoids, 114 Lax monoidal, 86 of qualitative domains and stable Oplax monoidal, 87 functions, 172 Symmetric lax monoidal, 90 Seely category, 146 Symmetric oplax monoidal, 90 Coalgebra, 132 Coalgebra morphism, 132 Linearly distributive categories, 74 Coherence spaces, 171 Braiding, 78 Cliques, 172 Duality, 76 Lafont category, 178 Symmetry, 79 Lafont-Seely category, 179 Logic 209 Classical Logic, 10 First-order Logic, 15 Intuitionistic linear logic, 42 Intuitionistic Logic, 14 Linear Logic, 15 Linear logic, 41 Relevant, 195 Rules of logic Contraction, 7 Exchange, 7 Logical Rules, 7 Structural Rules, 7 Weakening, 6 Monad, 126 Algebra of a monad, 128 Category of Eilenberg-Moore algebras, 128 Kleisli category, 128 Monoid, 113 Commutative monoid, 113 Eckmann-Hilton, 116 Monoid morphism, 113 Monoidal adjunction, 107 Characterization, 109, 111 Symmetric, 107 Monoidal category, 63 ∗-autonomous, 74 Biclosed, 71 Braided, 67 Closed, 70 Dialogue category, 79 Exponentiable object, 79 Symmetric and closed, 72 Symmetry, 70 Tensorial negation, 79 Tensorial pole, 79 Sequent calculus, 4 Cut-elimination, 11 Derivation trees, 9 Formula, 4 Intuitionistic linear logic, 42 Linear logic, 41 Proofs, 9 Rules of logic, 6 Sequent, 5 Subformula Property, 12 String diagrams, 67 Braiding, 67 Functorial boxes, 164 Subformula Property, 12 Tautologies, 5 Tensorial negation, 79 Tensorial pole, 79 Truth values, 5 Natural transformation, 88 Monoidal between lax functors, 88 Monoidal between oplax functors, 89 Proofs, 6, 9 Qualitative domains, 171 Affine functions, 172 Coherent qualitative domains, 173 Linear functions, 172 Stable functions, 172 Resource modality, 195 Affine, 195 Exponential, 195 210 Contents 1 Proof theory: a short introduction 2 Semantics: proof invariants and categories 2.1 Proof invariants organize themselves as categories . . . . . . . . 2.2 A tensor product in linear logic . . . . . . . . . . . . . . . . . . 2.3 Proof invariants organize themselves as monoidal categories (1) 2.4 Proof invariants organize themselves as monoidal categories (2) 2.5 Proof invariants organize themselves as monoidal categories (3) 2.6 Conversely, what is a categorical model of linear logic? . . . . . 2.7 Proof invariants and free categories . . . . . . . . . . . . . . . . 2.8 Notes and references . . . . . . . . . . . . . . . . . . . . . . . . 2 . . . . . . . . 21 21 23 25 28 29 31 37 39 3 Linear logic and its cut-elimination procedure 40 3.1 Classical linear logic . . . . . . . . . . . . . . . . . . . . . . . . . 40 3.2 Intuitionistic linear logic . . . . . . . . . . . . . . . . . . . . . . . 41 3.3 Cut-elimination in intuitionistic linear logic . . . . . . . . . . . . 42 3.4 Cut-elimination: commuting conversion cut vs. cut . . . . . . . . 42 3.4.1 Commuting conversion cut vs. cut (first case) . . . . . . . 42 3.4.2 Commuting conversion cut vs. cut (second case) . . . . . 43 3.5 Cut-elimination: the η-expansion steps . . . . . . . . . . . . . . . 44 3.5.1 The tensor product . . . . . . . . . . . . . . . . . . . . . . 44 3.5.2 The linear implication . . . . . . . . . . . . . . . . . . . . 44 3.5.3 The tensor unit . . . . . . . . . . . . . . . . . . . . . . . . 45 3.5.4 The exponential modality . . . . . . . . . . . . . . . . . . 45 3.6 Cut-elimination: the axiom steps . . . . . . . . . . . . . . . . . . 45 3.6.1 Axiom steps . . . . . . . . . . . . . . . . . . . . . . . . . . 45 3.6.2 Conclusion vs. axiom . . . . . . . . . . . . . . . . . . . . 46 3.7 Cut-elimination: the exchange steps . . . . . . . . . . . . . . . . 46 3.7.1 Conclusion vs. exchange (the first case) . . . . . . . . . . 46 3.7.2 Conclusion vs. exchange (the second case) . . . . . . . . . 46 3.8 Cut-elimination: principal formula vs. principal formula . . . . . 47 3.8.1 The tensor product . . . . . . . . . . . . . . . . . . . . . . 47 3.8.2 The linear implication . . . . . . . . . . . . . . . . . . . . 48 3.8.3 The tensor unit . . . . . . . . . . . . . . . . . . . . . . . . 48 3.9 Cut-elimination: promotion vs. dereliction and structural rules . 48 3.9.1 Promotion vs. dereliction . . . . . . . . . . . . . . . . . . 49 3.9.2 Promotion vs. weakening . . . . . . . . . . . . . . . . . . 49 3.9.3 Promotion vs. contraction . . . . . . . . . . . . . . . . . . 50 3.10 Cut-elimination: secondary conclusion . . . . . . . . . . . . . . . 50 3.10.1 Left introduction of the linear implication . . . . . . . . . 51 3.10.2 A generic description of the structural rules: dereliction, weakening, contraction, exchange . . . . . . . . . . . . . . 51 3.10.3 Left introduction of the tensor (with low priority) . . . . 52 3.10.4 Left introduction of the tensor unit (with low priority) . . 53 211 3.11 Cut-elimination: secondary hypothesis . . . . . . . . . . . . . . . 3.11.1 Right introduction of the tensor (first case) . . . . . . . . 3.11.2 Right introduction of the tensor (second case) . . . . . . . 3.11.3 Left introduction of the linear implication (first case) . . . 3.11.4 Left introduction of the linear implication (second case) . 3.11.5 Left introduction of the linear implication (third case) . . 3.11.6 A generic description of the structural rules: dereliction, weakening, contraction, exchange . . . . . . . . . . . . . . 3.11.7 Left introduction of the tensor (first case) (with low priority) 3.11.8 Left introduction of the tensor (second case) (with low priority) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.11.9 Left introduction of the tensor unit (with low priority) . . 3.11.10 Right introduction of the linear implication (with low priority) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.12 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.13 Cut-elimination for classical linear logic . . . . . . . . . . . . . . 4 Monoidal categories and duality 4.1 Monoidal categories . . . . . . . . . . . . . . . . . . . . . 4.2 String diagrams . . . . . . . . . . . . . . . . . . . . . . . . 4.3 Braided monoidal categories . . . . . . . . . . . . . . . . . 4.4 Symmetric monoidal categories . . . . . . . . . . . . . . . 4.5 Monoidal closed categories . . . . . . . . . . . . . . . . . . 4.6 Monoidal biclosed categories . . . . . . . . . . . . . . . . . 4.7 Symmetric monoidal closed categories . . . . . . . . . . . 4.8 ∗-autonomous categories . . . . . . . . . . . . . . . . . . . 4.9 Linearly distributive categories . . . . . . . . . . . . . . . 4.10 Duality in linearly distributive categories . . . . . . . . . 4.11 Braided linearly distributive categories . . . . . . . . . . . 4.12 Symmetric linearly distributive categories . . . . . . . . . 4.13 ∗-autonomous categories as linearly distributive categories 4.14 Dialogue categories . . . . . . . . . . . . . . . . . . . . . . 4.15 ∗-autonomous as dialogue categories . . . . . . . . . . . . 4.16 Notes and references . . . . . . . . . . . . . . . . . . . . . 53 54 54 54 55 55 55 57 58 58 59 59 61 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 63 67 67 70 70 71 72 74 74 76 78 79 79 79 83 84 5 Adjunctions between monoidal categories 5.1 Lax monoidal functors . . . . . . . . . . . . . . . . . . . . . 5.2 Oplax monoidal functors . . . . . . . . . . . . . . . . . . . . 5.3 Natural transformations . . . . . . . . . . . . . . . . . . . . 5.4 Monoidal natural transformations (between lax functors) . . 5.5 Monoidal natural transformations (between oplax functors) 5.6 Symmetric monoidal functors (lax and oplax) . . . . . . . . 5.7 Functorial boxes in string diagrams . . . . . . . . . . . . . . 5.8 The language of 2-categories . . . . . . . . . . . . . . . . . . 5.9 The 2-category of monoidal categories and lax functors . . . 5.10 Adjunctions between functors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 86 87 88 88 89 90 90 94 97 99 212 5.11 5.12 5.13 5.14 5.15 5.16 5.17 5.18 Adjunctions in the language of 2-categories . . . . Another formulation: the triangular identities . . . A dual definition of adjunction . . . . . . . . . . . Monoidal adjunctions . . . . . . . . . . . . . . . . A duality between lax and oplax monoidal functors A characterization of monoidal adjunctions . . . . Symmetric monoidal adjunctions . . . . . . . . . . Notes and references . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 103 105 107 107 109 111 112 6 Monoids and monads 6.1 Monoids . . . . . . . . . . . . . . . . . . . . . . . . 6.2 The category of monoids . . . . . . . . . . . . . . . 6.3 Comonoids . . . . . . . . . . . . . . . . . . . . . . 6.4 Cartesian categories among monoidal categories . . 6.5 The category of commutative comonoids . . . . . . 6.6 Monads and comonads . . . . . . . . . . . . . . . . 6.7 Monads and adjunctions . . . . . . . . . . . . . . . 6.8 Comonads and adjunctions . . . . . . . . . . . . . 6.9 Symmetric monoidal comonads . . . . . . . . . . . 6.10 Symmetric monoidal comonads and adjunctions . . 6.11 A useful property of retractions between coalgebras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 113 114 118 119 124 126 128 132 134 135 137 7 Categorical models of linear logic 7.1 The transmutation principle of linear 7.2 Lafont categories . . . . . . . . . . . 7.3 Seely categories . . . . . . . . . . . . 7.4 Linear categories . . . . . . . . . . . 7.5 Lafont-Seely categories . . . . . . . . 7.6 Soundness in string diagrams . . . . 7.7 Notes and references . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 143 144 146 151 163 164 168 8 Two models of interaction: spaces and games 8.1 Coherence spaces . . . . . . . . . . . . . . . . . . 8.2 Coherence spaces: a linear-non-linear adjunction 8.3 Coherence spaces: a Seely category . . . . . . . . 8.4 Quantitative coherence spaces: a Lafont category 8.5 Qualitative coherence spaces: a Lafont category . 8.6 Coherence spaces: a Lafont-Seely category . . . . 8.7 The relational non-model . . . . . . . . . . . . . 8.8 Conway games: a compact-closed category . . . . 8.9 Conway games: a Lafont category . . . . . . . . 8.10 Decomposition of the exponential modality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171 171 173 177 177 178 179 181 183 186 187 9 Conclusion logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194 213