Term Assignment for Intuitionistic Linear Logic (Preliminary Report)

Nick Benton Gavin Bierman Valeria de Paiva Computer Laboratory University of Cambridge

                {pnb,gmb,vcvp}@cl.cam.ac.uk

Martin Hyland Department of Pure Mathematics and Mathematical Statistics University of Cambridge

                    jmeh1@phx.cam.ac.uk

August 6, 1992

Abstract

In this paper we consider the problem of deriving a term assignment system for Girard’s Intuitionistic Linear Logic for both the sequent calculus and natural deduction proof systems. Our system differs from previous calculi (e.g. that of Abramsky) and has two important properties which they lack. These are the substitution property (the set of valid deductions is closed under substitution) and subject reduction (reduction on terms is well-typed).

We define a simple (but more general than previous proposals) categorical model for Intuitionistic Linear Logic and show how this can be used to derive the term assignment system.

We also consider term reduction arising from cut-elimination in the sequent calculus and normalisation in natural deduction. We explore the relationship between these, as well as with the equations which follow from our categorical model.

Contents

1 Introduction 3

2 Introduction to Intuitionistic Linear Logic 3

3 Categorical considerations and term assignment 5

4 Linear Natural Deduction 12

5 Relating the Term Assignment Systems 17 5.1 From Sequent Calculus to Natural Deduction . . . . . . . . . . . . . . . . . 17 5.2 From Natural Deduction to Sequent Calculus . . . . . . . . . . . . . . . . . 20 5.3 Properties of the translations . . . . . . . . . . . . . . . . . . . . . . . . . . 23

6 Reduction Rules 24

7 Proof Normalisation 25 7.1 The Normalisation Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . 25 7.2 Commuting Conversions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

8 The Categorical Model 30 8.1 Categorical interpretation of the multiplicatives . . . . . . . . . . . . . . . . 31 8.2 Categorical interpretation of Dereliction and Promotion . . . . . . . . . . . 33 8.3 Categorical interpretation of Weakening and Contraction . . . . . . . . . . . 36 8.4 The categorical model of Intuitionistic Linear Logic . . . . . . . . . . . . . . 39 8.5 Generalizing the Girard translation . . . . . . . . . . . . . . . . . . . . . . . 43

9 Cut Elimination for Sequent Calculus 45 9.1 Principal Cuts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 9.2 Secondary Cuts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 9.3 Commutative cuts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 9.4 An ‘insignificant’ cut . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 9.5 Permutative conversions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 9.6 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

10 Future Work 53

A Appendix 56

1 Introduction

This paper represents an effort to establish a satisfactory term assignment system for Girard’s Intuitionistic Linear Logic [10]. Previous approaches have simply annotated the sequent calculus formulation with terms and have given little or no justification for their choice. A poor choice can have serious consequences. An example discovered by Phil Wadler [29] is that the substitution lemma does not hold for the term assignment system corresponding to an intuitive natural deduction formulation of Intuitionistic Linear Logic: a consequence is that such a system is too weak to provide a proof theory for linear logic.

We have approached the formulation of a term calculus in two ways.

1. By considering the sequent calculus formulation of the logic and using the underlying categorical constructions to suggest a term assignment system.

2. By considering a linear natural deduction system. Using this system we can construct the rules for the linear logic connectives. We can then apply the so-called Curry-Howard Correspondence [15] to derive a term assignment system.

These two approaches produce equivalent term assignment systems. However, when we come to consider equality (reduction) of terms, matters are more subtle. As ever the natural equalities for category theory are stronger than those suggested by proof theoretic or computational considerations; but also there are significant differences between natural deduction and sequent calculus at the computational level. Even when commutative conversions (for natural deduction) are taken into account the equalities (reductions) suggested by cut elimination for the sequent calculus extend those suggested by normalization for natural deduction. Also permutation theorems for the sequent calculus suggest further equalities, but we do not consider these in detail.

This paper is organised as follows. In Section 2 we give a brief introduction to Girard’s Intuitionistic Linear Logic. In Section 3 we show how to use the form of a simple categorical model of Intuitionistic Linear Logic to derive a term assignment system (for the sequent calculus version). In Section 4 we consider a linear system of natural deduction and use this (via the Curry-Howard Correspondence) to derive a term assignment system. Readers who are less used to category theory may find it easier to read this section before Section 3. In Section 5 we show how our two systems of Intuitionistic Linear Logic are related, and give procedures for mapping proofs from one to the other. We show that these mappings respect our term assignment systems. In Section 7 we consider the process of proof normalisation within the linear natural deduction system. In Section 8 we consider in detail our model for Intuitionistic Linear Logic. Again, the less categorically motivated reader may wish to skim or skip this section. In Section 9 we consider the process of cut-elimination in the sequent calculus formulation of Intuitionistic Linear Logic. We conclude and outline future work in Section 10. In Appendix A we recall the definition of a monoidal comonad.

2 Introduction to Intuitionistic Linear Logic

Throughout this paper we shall consider only the multiplicative fragment of Intuitionistic Linear Logic, i.e. the (⊗, −∘,!)–fragment. Intuitionistic Linear Logic is a refinement of intuitionistic logic, where formulae must be used exactly once. In other words, the familar Weakening and Contraction rules are removed. To regain the expresive power of intuitionistic logic, these rules are returned, but in a controlled manner. A logical operator !, is introduced which allows a formula to be used as many times as required (including zero). This operator is, in some ways, similar to the modal necessity operator □ from Modal Logic [16].

We shall follow Girard’s original presentation [11], and give the rules for Intuitionistic Linear Logic in a sequent calculus system. The logic is given in Figure 1.

\begin{aligned}& Identity \\ A ⊢ A \end{aligned}

Γ, A, B, Δ ⊢ C

\overline{Exchange}

Γ, B, A, Δ ⊢ C

Γ ⊢ B B, Δ ⊢ C
Cut

Γ, Δ ⊢ C

Γ ⊢ A ; (I_{L}) ; Γ, I ⊢ A  \begin{aligned}& (I_{R}) \\ ⊢ I \end{aligned}

Γ, A, B ⊢ C ; (⊗_{L}) ; Γ, A⊗B ⊢ C  Γ ⊢ A  Δ ⊢ B ; (⊗_{R}) ; Γ, Δ ⊢ A⊗B

Γ ⊢ A  Δ, B ⊢ C ; (−∘_{L}) ; Γ, Δ, A−∘B ⊢ C  Γ, A ⊢ B ; (−∘_{R}) ; Γ ⊢ A−∘B

Γ ⊢ B ; !_{L−1} ; Γ,!A ⊢ B  Γ,!A,!A ⊢ B ; !_{L−2} ; Γ,!A ⊢ B

Γ, A ⊢ B ; !_{L−3} ; Γ,!A ⊢ B

!Γ ⊢ A ; (!_{R}) ; !Γ ⊢!A

Figure 1: (Multiplicative) Intuitionistic Linear Logic

We use capital Greek letters Γ, Δ for sequences of formulae and A, B for single formulae. The system has multiplicative conjunction or tensor, ⊗, linear implication, −∘, and a logical operator, !. The Exchange rule simply allows the permutation of assumptions. In what follows we shall consider this rule to be implicit, whence the convention that Γ, Δ denote multisets (and not sequences).

The ‘! rules’ have been given names by other authors. !_{L−1} is called Weakening, !_{L−2} Contraction, !_{L−3} Dereliction and (!_{R}) Promotion^{1}. We shall use these terms throughout this paper.

1Girard, Scedrov and Scott [13] prefer to call this rule Storage.

In the Promotion rule, !Γ means that every formula in the set Γ is modal, in other words, if Γ is the set {A_{1}, A_{2}, … A_{n}}, then !Γ denotes the set {!A_{1},!A_{2}, …!A_{n}}.

3 Categorical considerations and term assignment

The sequent calculus is best thought of as providing not proofs themselves, but a metatheory concerning proofs. Hence a formulation in these terms does not always provide clear clues as to how it should be enriched to a term assignment system. Fortunately we can use the general form of a categorical model (of the proof theory) of the logic to derive an appropriate term assignment system for the sequent calculus formulation of this logic.

The fundamental idea of the categorical treatment of proof theory is that propositions should be interpreted as the objects of a category (or multicategory, or polycategory) and proofs should be interpreted as maps; operations transforming proofs into proofs then correspond (if possible) to natural transformations (between appropriate hom-functors) in the categorical sense. The maps modelling proofs are built up using these categorical operations and so the problem of a term assignment is essentially the problem of providing a syntax expressing these operations. (Of course the language of category theory itself gives one possible syntax. We however are concerned to give a traditional functional language with variables.) Here we carry out this programme for Intuitionistic Linear Logic. The reader may wish to compare our discussion with the treatment of the λ-calculus in Lambek and Scott [19].

Since we are dealing with sequents Γ ⊢ A, in principle we should deal with multicategories. However it simplifies things to assume at once that the multicategorical structure is represented by a tensor product •, so that we are dealing with a monoidal category. We shall write ⟨⟩ for the unit of this tensor product. To simplify the presentation we use the same symbols both for propositions of linear logic and for their denotations in our monoidal category. The idea then is that a sequent of form

C_{1}, C_{2}, …, C_{n} ⊢ A

will be interpreted as a map

C_{1} • C_{2} • … • C_{n} → A

from the tensor product of the C_{i} to A. (Thus a coherence result is assumed.) When Γ is the sequence C_{1}, C_{2}, …, C_{n}, we write

Γ → A

for this map. We seek to enrich the sequent judgement to a term assignment judgement of the form

x_{1} : C_{1}, x_{2} : C_{2}, …, x_{n} : C_{n} ⊢ e : A

where the x_{i} are (distinct) variables and e is a term; usually we suppress (irrelevent) variables and write

Γ ⊢ e : A

for this term assignment.

The whole process is based upon some simple assumptions about the interpretation of the basic structural rules, and a simple procedure for dealing with the logical rules. The sequent representing the Identity rule is interpreted as the (canonical) identity arrow

A ⟶^{1_{A}} A

from A to A. The corresponding rule of term formation is

x : A ⊢ x : A

The rule of Exchange we interpret by assuming that we have a symmetry for the tensor product • (making our model a symmetric monoidal category). We henceforth suppress Exchange and the corresponding symmetry; thus we really consider multisets of formulae, and as a result no term forming operations result from this rule. The Cut rule

Γ ⊢ A A, Δ ⊢ B

\overline{Cut}

Γ, Δ ⊢ B

is then interpreted as a generalized form of composition: if the maps Γ ⟶^{f} A and A • Δ ⟶^{g} B are the interpretations of hypotheses of the rule, then the composite

Γ • Δ −f • 1_{Δ} ; \begin{matrix}− \\ − \\ − \\ − \\ − \\ − \end{matrix}⟶ A • Δ − g ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ B

is the interpretation of the conclusion. We take as the corresponding rule of term formation a textual substitution:

Γ ⊢ f : A x : A, Δ ⊢ g : B

\overline{Cut}

Γ, Δ ⊢ g[f/x] : B

We shall make the assumption that any logical rule corresponds to an operation on maps of the category which is natural in (the interpretations of) the components of the sequents which remain unchanged during the application of a rule. We make this assumption explicit in a simple case. Suppose that ϕ is an operation which takes a map of form f : Π_{1} •Γ → C to ϕ(f) : Π_{2} •Γ → C. Then naturality in Γ and C amounts to the following assumption: Given maps h : Λ → Γ and g : C • Δ → B, the operation ϕ applied to the composite

Π_{1} • Λ • Δ −1_{Π_{1}} • h • 1_{Δ} ; \begin{matrix}− \\ − \\ − \\ − \\ − \\ − \\ − \\ − \\ − \\ − \end{matrix}⟶ Π_{1} • Γ • Δ −f • 1_{Δ} ; \begin{matrix}− \\ − \\ − \\ − \\ − \\ − \end{matrix}⟶ C • Δ − g ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ B

is the composite

Π_{2} • Λ • Δ −1_{Π_{2}} • h • 1_{Δ} ; \begin{matrix}− \\ − \\ − \\ − \\ − \\ − \\ − \\ − \\ − \\ − \end{matrix}⟶ Π_{2} • Γ • Δ −ϕ(f) • 1_{Δ} ; \begin{matrix}− \\ − \\ − \\ − \\ − \\ − \\ − \\ − \end{matrix}⟶ C • Δ − g ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ B

Composition corresponds to Cut so clearly the logical significance is that we are assuming that our operations commute (where appropriate) with Cut. Since composition is interpreted by textual substitution, this assumption provides a strong guide to the syntactic form of the rules; the free variables have to reflect the possibility for substitution. Furthermore in a number of cases we find that our naturality assumption gives rise (in view of a Yoneda Lemma argument) to a considerable simplification of the syntax. (Where this is not the case naturality also gives rise to some equalities on terms, which highlight a problem with our traditional linear syntax; our syntax involves pattern matching which we would like to commute with substitution. The equations with this force will be considered in more detail later.)

The (I_{L}) rule

Γ ⊢ A ; (I_{L}) ; Γ, I ⊢ A

gives an operation taking maps Γ → A to maps Γ • I → A. An appropriate syntax is

Γ ⊢ e : A
(I_{L})
Γ, x : I ⊢ let x be ∗ in e : A

so that in effect we simply introduce a dummy free variable for the assumption I. Naturality in Γ is clear since we may substitute for the corresponding (free) variables. However naturality in A gives rise to an equation

f[let x be ∗ in e/y] = let x be ∗ in f[e/y]  (1)

which will be of concern to us later.

The (I_{R}) rule

\begin{aligned}& (I_{R}) \\ ⊢ I \end{aligned}

gives simply a map ⟨⟩ → I. An appropriate syntax is

\begin{aligned}& (I_{R}) \\ ⊢ ∗ : I \end{aligned}

and there are no issues of naturality.

The (⊗_{L}) rule

Γ, A, B ⊢ C ; (⊗_{L}) ; Γ, A⊗B ⊢ C

gives an operation taking maps Γ • A • B → C to maps Γ • (A⊗B) → C. An appropriate syntax is

Γ, x : A, y : B ⊢ f : C
(⊗_{L})
Γ, z : A⊗B ⊢ let z be x⊗y in f : C

where we understand that the variables x and y are bound in the term let z be x⊗y in f. Again naturality in Γ is clear since we may substitute for the corresponding variables, whilst naturality in C gives rise to an equation

f[let z be x⊗y in g/w] = let z be x⊗y in f[g/w]  (2)

The (⊗_{R}) rule

Γ ⊢ A Δ ⊢ B
(⊗_{R})
Γ, Δ ⊢ A⊗B

gives an operation taking arrows Γ → A and Δ → B to an arrow Γ • Δ → A⊗B. This would suggest a quite complex syntax, but fortunately our naturality assumptions imply that this operation is completely determined by a map A • B → A⊗B. It follows that an appropriate syntax is

Γ ⊢ e : A Δ ⊢ f : B
(⊗_{R})
Γ, Δ ⊢ e⊗f : A⊗B

and there are no outstanding issues of naturality.

Our treatment of the (−∘_{L}) rule

Γ ⊢ A Δ, B ⊢ C
(−∘_{L})
Γ, A−∘B, Δ ⊢ C

follows traditional treatments of the left implication rule in sequent systems (which all involve a Yoneda Lemma argument). If we stuck to the general pattern, we would expect to have an operation taking a pair of arrows Γ → A, Δ • B → C to an arrow Γ • (A−∘B) • Δ → C. (The reader may wish to compare this possibility with the Schroeder-Heister form of implication elimination in natural deduction [26].) However it follows from our naturality assumptions by a straightforward application of a Yoneda Lemma that such an operation is determined by its action on a pair of identity arrows. Thus it is enough to give an operation of application:

app: A • (A−∘B) −\begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ B

Then given arrows e: Γ → A, f: B • Δ → C the required arrow Γ • (A−∘B) • Δ → C is the composite

Γ • (A−∘B) • Δ −e • 1 • 1 ; \begin{matrix}− \\ − \\ − \\ − \\ − \\ − \\ − \\ − \end{matrix}⟶ A • (A−∘B) • Δ −app • 1 ; \begin{matrix}− \\ − \\ − \\ − \\ − \\ − \end{matrix}⟶ B • Δ −f ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ C

and an appropriate syntax is

Γ ⊢ e : A Δ, x : B ⊢ f : C
(−∘_{L})
Γ, g : A−∘B, Δ ⊢ f[(ge)/x] : C

All the naturality assumptions are now dealt with by substitution.

The (−∘_{R}) rule

Γ, A ⊢ B ; (−∘_{R}) ; Γ ⊢ A−∘B

gives an operation taking an arrow Γ • A → B to an arrow Γ → A−∘B. This is a form of abstraction and an appropriate syntax is

Γ, x : A ⊢ e : B
(−∘_{R})
Γ ⊢ λx.e : A−∘B

There are no problematic naturality issues.

Next we consider the ‘!’ connective. The left rules are reasonably straightforward. First we consider the Dereliction rule

Γ, A ⊢ B ; \overline{Dereliction} ; Γ,!A ⊢ B

Since it gives an operation taking an arrow Γ • A → B to an arrow Γ•!A → B, an appropriate syntax is

Γ, x : A ⊢ e : B

\overline{Dereliction}

Γ, z :!A ⊢ let z be !x in e : B and indeed this is the syntax given by Abramsky [1]. With this formulation naturality in B gives rise to an equation

f[let z be !x in e/y] = let z be !x in f[e/y]

However it is a consequence of naturality that our operation is determined by its effect on identity arrows: thus it is enough to give a map:

ε :!A → A

Then given an arrow e : Γ • A → B, the required arrow Γ•!A → B is the composite

Γ•!A −1 • ε ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ Γ • A − e ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ B

so an appropriate syntax is

Γ, x : A ⊢ e : B

\overline{Dereliction}

Γ, z :!A ⊢ e[derelict(z)/x] : B

We shall use this syntax in what follows. (There are no further naturality issues). The Weakening rule

Γ ⊢ B ; \overline{Weakening} ; Γ,!A ⊢ B

gives an operation taking an arrow Γ → B to an arrow Γ•!A → B. An appropriate syntax

is Γ ⊢ e : B

\overline{Weakening}

Γ, z :!A ⊢ discard z in e : B

where we have simply introduced a fresh dummy variable of type !A. Naturality in Γ is as before clear since we may substitute for the corresponding variables. Naturality in B gives rise to an equation

f[discard z in e/y] = discard z in f[e/y]  (3)

which we shall consider later.

The Contraction rule

Γ,!A,!A ⊢ B ; \overline{Contraction} ; Γ,!A ⊢ B

gives an operation taking an arrow Γ•!A•!A → B to an arrow Γ•!A → B. An appropriate syntax is

Γ, x :!A, y :!A ⊢ e : B

\overline{Contraction}

Γ, z :!A ⊢ copy z as x, y in e : B

where we understand that the variables x and y are bound in the term copy z as x, y in e. Naturality in Γ is clear since we may substitute for the corresponding variables, while naturality in B gives rise to an equation

f[copy z as x, y in e/w] = copy z as x, y in f[e/w]  (4)

which we shall consider later.

Finally we consider the problematic Promotion rule

!Γ ⊢ A ; \overline{Promotion} ; !Γ ⊢!A

This gives an operation (of Promotion) taking an arrow !Γ → A to an arrow !Γ →!A. Now it is not a priori clear what form of naturality should be assumed for this rule. If we assume that the operation should be natural in !Γ, then Abramsky’s rule [1, Section 3],

{\overline{x} :!Γ ⊢ e : α \atop \overline{x} :!Γ ⊢!e :!α}

would give an appropriate syntax^{2}. However nothing in the idea of a categorical model suggests this assumption, and as we shall see later proof-theoretic considerations tell against it. (Note in passing that the categorically appealing assumption would be that ! is a functor and that we have naturality in Γ; we return to this idea in Section 8.) The important point to realize is that if the operation is not natural in !Γ, then the operation should not preserve substitution for the free variables implicitly declared in !Γ. Hence we are restricted to giving an operation on ‘higher-order’ terms, where the variables which appear initially must be bound and fresh variables introduced. These considerations lead to the term assignment rule

\overline{x} :!Γ ⊢ e : A

\overline{Promotion}

\overline{y} :!Γ ⊢ promote \overline{y} for \overline{x} in e :!A

By analogy with earlier considerations one might expect to find an equation expressing the naturality in A of the operation of Promotion ; but again we would need the assumption that ! is functorial, so we leave this also until Section 8.

We do not claim that there is a clear reason in terms of the category theory given so far to prefer one rule to the other, but we choose our rule simply so as to avoid any premature assumptions. Later we shall give a clear reason in favour of our syntax in terms of a natural deduction formulation.

This concludes our derivation of a term assignment system for Intuitionistic Linear Logic from general considerations of the form of a categorical model. We display this system of term assignment in Figure 2. We stress that rather elementary assumptions and unsophisticated categorical observations have been used in this analysis. However, our analysis has not only led us to a term assignment system, but has also uncovered a series of naturality equations, which are listed in Figure 3. We shall find that our proof theoretic work suggests certain equalities. All these turn out (as one might expect) to be special cases of the naturality equations. More interestingly we find that certain forms of the naturality equations have some significant computational content. One might consider refining the naturality equations into those special cases which a programmer might use to reason about a program (but which a compiler makes little or no use of) and those other cases which are used extensively in the compilation process. Further discussions of this point will appear in [4].

x : A ⊢ x : A
Γ ⊢ e : A Δ, x : A ⊢ f : B

Cut

Γ, Δ ⊢ f[e/x] : B
Γ ⊢ e : A  Δ, x : B ⊢ f : C ; (−∘_{L}) ; Γ, g : A−∘B, Δ ⊢ f[(ge)/x] : C  Γ, x : A ⊢ e : B ; (−∘_{R}) ; Γ ⊢ λx.e : A−∘B
Γ ⊢ e : A
(I_{L})
Γ, x : I ⊢ let x be ∗ in e : A

\begin{aligned}& (I_{R}) \\ ⊢ ∗ : I \end{aligned}

Δ, x : A, y : B ⊢ f : C
(⊗_{L})

Δ, z : A⊗B ⊢ let z be x⊗y in f : C

Γ ⊢ e : A Δ ⊢ f : B ; (⊗_{R}) ; Γ, Δ ⊢ e⊗f : A⊗B

Γ ⊢ e : B

\overline{Weakening}

Γ, z :!A ⊢ discard z in e : B

Γ, x :!A, y :!A ⊢ e : B

\overline{Contraction}

Γ, z :!A ⊢ copy z as x, y in e : B

Γ, x : A ⊢ e : B

\overline{Dereliction}

Γ, z :!A ⊢ e[derelict(z)/x] : B

\overline{x} :!Γ ⊢ e : A

\overline{Promotion}

\overline{y} :!Γ ⊢ promote \overline{y} for \overline{x} in e :!A

Figure 2: Term Assignment System for sequent calculus

We close this section by briefly indicating:

• What we mean by a term logic (for Intuitionistic Linear Logic) and

• How such a logic is to be interpreted in a category C (with the structure discussed above).

We assume that we have a signature Σ given by a collection of ground types and of typed function symbols. From this data, types and terms in context are defined inductively, giving rise to what we call a term logic for Intuitionistic Linear Logic.

Now suppose that C is a (multi)category equipped with the operations described above. Then for any interpretation of a signature Σ in C there is a standard inductive definition of the interpretation of types and of terms in context of the term logic given by Σ in C. The steps in the inductive definition have each been outlined is this section and for the convenience of the reader we present an indication of the steps in Figure 4.

Note that strictly speaking the induction is on the derivation (in the sequent calculus) of Γ ⊢ e: A. Hence one has to show that the interpretation in C is independent of the derivation. It is laborious but not essentially difficult to prove this directly; however the

2This assumption has the effect that in the categorical model, which we shall consider later, the comonad is idempotent: a point noted by Wadler [29].

f[let x be ∗ in e/y] = let x be ∗ in f[e/y]

f[let z be x⊗y in g/w] = let z be x⊗y in f[g/w]

f[discard z in e/y] = discard z in f[e/y]

f[copy z as x, y in e/w] = copy z as x, y in f[e/w]

Figure 3: Naturality Equations

result also follows easily from a consideration of the natural deduction formulation of Intuitionistic Linear Logic, see Section 4.

A → A
Γ → A A • Δ → B
Cut
Γ • Δ → B
Γ → A ; (I_{L}) ; Γ • I → A  \begin{aligned}& (I_{L}) \\ ⟨⟩ → I \end{aligned}

Γ • A • B → C ; (⊗_{L}) ; Γ • (A⊗B) → C  Γ → A  Δ → B ; (⊗_{R}) ; Γ • Δ → A⊗B

Γ → A  Δ • B → C ; (−∘_{L}) ; Γ • (A−∘B) • Δ → C  Γ • A → B ; (−∘_{R}) ; Γ → A−∘B
Γ → B ; \overline{Weakening} ; Γ•!A → B
Γ •!A •!A → B

\overline{Contraction}

Γ•!A → B

Γ • A → B ; \overline{Dereliction} ; Γ •!A → B  !Γ → A ; \overline{Promotion} ; !Γ → !A

Figure 4: (Outline of the) interpretation of Term Logic

In Section 8 we shall consider in more detail the categorically attractive assumptions about the nature of our categorical model for Intuitionistic Linear Logic.

4 Linear Natural Deduction

In the natural deduction system, originally due to Gentzen [28], but expounded by Prawitz [25], a deduction is a derivation of a proposition from a finite set of assumption packets, using some predefined set of inference rules. More specifically, these packets consist of a multiset of propositions, which may be empty. This flexibility is the equivalent of the Weakening and Contraction rules in the sequent calculus. Within a deduction, we may “discharge” any number of assumption packets. Assumption packets can be given natural number labels and applications of inference rules can be annotated with the labels of those packets which it discharges.

We might then ask what restrictions need we make to natural deduction to make it linear? Clearly, we need to withdraw the concept of packets of assumptions. A packet must contain exactly one proposition, i.e. a packet is now equivalent to a proposition. A rule which used to be able to discharge many packets of the same proposition, can now only discharge the one. Thus we can label every proposition with a unique natural number.

We derive the inference rules given in Figure 5.

[A^{x}] ; \begin{matrix}· \\ · \\ · \end{matrix} ; B ; (−∘_{I})_{x} ; A−∘B  \begin{aligned}\begin{matrix}· \\ · \\ · \end{matrix} ; A−∘B & \begin{matrix}· \\ · \\ · \end{matrix} ; A \\ & & (−∘_{E}) \\ B \end{aligned}

\begin{aligned}& (I_{I}) \\ I \end{aligned}  \begin{aligned}\begin{matrix}· \\ · \\ · \end{matrix} ; A & & \begin{matrix}· \\ · \\ · \end{matrix} ; I \\ & & & (I_{E}) \\ & A \end{aligned}

\begin{aligned}\begin{matrix}· \\ · \\ · \end{matrix} ; A & \begin{matrix}· \\ · \\ · \end{matrix} ; B \\ & (⊗_{I}) \\ A⊗B \end{aligned}  \begin{aligned}\begin{matrix}· \\ · \\ · \end{matrix} ; A⊗B & & [A^{x}][B^{y}] ; \begin{matrix}· \\ · \\ · \end{matrix} ; C \\ & & (⊗_{E})_{x,y} \\ & C \end{aligned}

\begin{matrix}· \\ · \\ · \end{matrix} ; !B \begin{matrix}· \\ · \\ · \end{matrix} ; C ; \overline{Weakening} ; C \begin{matrix}· \\ · \\ · \end{matrix} ; !B [!B^{x}][!B^{y}] ; \begin{matrix}· \\ · \\ · \end{matrix} ; C Contraction_{x,y}

C

\begin{matrix}· \\ · \\ · \end{matrix} ; !B ; Dereliction ; B

\begin{matrix}· \\ · \\ · \end{matrix} ; !A_{1} … \begin{matrix}· \\ · \\ · \end{matrix} ; !A_{n} [!A_{1}^{x_{1}} ⋯!A_{n}^{x_{n}}] ; \begin{matrix}· \\ · \\ · \end{matrix} ; B Promotion_{x1,...,xn}
!B

Figure 5: Inference Rules in linear natural deduction

The (−∘_{I}) rule says that we can discharge exactly one assumption from a deduction to form a linear implication.

The (−∘_{E}) rule looks similar to the (⊃_{E}) rule of Intuitionistic Logic. However it is implicit that the assumptions of the two upper deductions are disjoint, i.e. their set of labels are disjoint. This upholds the fundamental feature of linear natural deduction; that all assumptions must have unique labels.

The (⊗_{I}) rule is similar to the (∧_{I}) rule of Intuitionistic Logic. It has the same restriction of disjointness of upper deduction assumptions as (−∘_{E}). In Linear Logic this makes ⊗ a multiplicative connective.

The (⊗_{E}) rule is slightly surprising. Traditionally in Intuitionistic Logic we provide two projection rules for (∧_{E}), namely

{A ∧ B \atop A} {A ∧ B \atop B}

But Intuitionistic Linear Logic decrees that a multiplicative conjunction can not be projected over; but rather both components must be used^{3}. In the (⊗_{E}) rule, both components of the pair A⊗B are used in the deduction of C.

Rules that are of a similar form to (⊗_{E}) have been considered in detail by Schroeder-Heister [26]. The astute reader will have noticed the similarity between our (⊗_{E}) rule and the (∨_{E}) rule of Intuitionistic Logic. This is interesting as we know that (∨_{E}) is not very well behaved as a logical rule [12, Chapter 10].

Since we have defined a linear system, non-linear inference must be given explicitly. Weakening allows a deduction to play no part in the derivation of another deduction.

Contraction allows the result of a deduction to be used twice as an assumption. This rule is realized in Intuitionistic Logic by the implicit ability to give two assumptions the same label. We can then substitute a deduction for this duplicated assumption by duplicating the deduction. Duplicating a deduction is illegal in our linear system because we can’t have duplicated labels. We must formulate the rule so that the deduction appears once and its conclusion appears twice with different labels.

Dereliction appears to offer two alternatives for formulation. We have given one in Figure 5, but following the style advocated by Schroeder-Heister, we could give the alternative

\begin{matrix}· \\ · \\ · \end{matrix} ; !B [B^{x}] ; \begin{matrix}· \\ · \\ · \end{matrix} ; C Dereliction’_{x}
C

Most presentations we are aware of use this alternative rule (e.g. [29, 22, 21]); only O’Hearn [23] gives the same rule as ours (although for a variant of linear logic).

Promotion insists that all of the undischarged assumptions at the time of application are modal, i.e. they are all of the form !A_{i}. However, an additional fundamental feature of natural deduction is that it is closed under substitution^{4}

If we had implemented Promotion as

!A_{1} ⋯!A_{n} ; \begin{matrix}· \\ · \\ · \end{matrix} ; B

Promotion !B

(as in all other formulations we know of), then clearly this rule is not closed under substitution. For example, substituting for !A_{1}, the deduction

3Projections are only defined for the additive connectives.

4The fundamental importance of closure under substitution for a given logical system is well known; see Avron [2] and Gabbay [9] for example.

C−∘!A_{1} C
(−∘_{E})
!A_{1}

we get the following deduction

C−∘!A_{1} C ; (−∘_{E}) ; !A_{1} ⋯!A_{n}

\begin{matrix}· \\ · \\ · \end{matrix}

B

Promotion !B

which is no longer a valid deduction (the assumptions are not all modal.) We conclude that Promotion must be formulated as in Figure 5, where the substitutions are given explicitly.

It is possible to present natural deduction rules in a ‘sequent-style’, where given a sequent Γ ⊢ A, Γ represents all the undischarged propositions so far in the deduction, and A represents conclusion of the deduction. We can still label the undischarged assumptions with a unique natural number, but we refrain from doing so. This formulation should not be confused with the sequent calculus formulation, which differs by having operations which act on the left and right of the turnstile, rather than rules for the introduction and elimination of logical constants. The ‘sequent-style’ formulation of natural deduction is given in Figure 6.

A ⊢ A

Γ, A ⊢ B ; (−∘_{I}) ; Γ ⊢ A−∘B  Γ ⊢ A−∘B  Δ ⊢ A ; (−∘_{E}) ; Γ, Δ ⊢ B

⊢ I  Γ ⊢ A  Δ ⊢ I ; (I_{E}) ; Γ, Δ ⊢ A

Γ ⊢ A  Δ ⊢ B ; (⊗_{I}) ; Γ, Δ ⊢ A⊗B Γ ⊢ A⊗B  Δ, A, B ⊢ C ; (⊗_{E}) ; Γ, Δ ⊢ C
Δ_{1} ⊢!A_{1} ⋯ Δ_{n} ⊢!A_{n} !A_{1}, …,!A_{n} ⊢ B

\overline{Promotion}

Δ_{1}, …, Δ_{n} ⊢!B

Γ ⊢!A Δ ⊢ B

\overline{Weakening}

Γ, Δ ⊢ B

Γ ⊢!A Δ,!A,!A ⊢ B

\overline{Contraction}

Γ, Δ ⊢ B

Γ ⊢!A ; \overline{Dereliction} ; Γ ⊢ A

Figure 6: Sequent formulation of linear natural deduction

We now apply the Curry-Howard Correspondence to derive a term assignment system for this natural deduction formulation of Intuitionistic Linear Logic. The Curry-Howard Correspondence essentially annotates each stage of the deduction with a “term”, which is an encoding of the construction of the deduction so far. This means that a logic can be viewed as a type system for a term assignment system. The Correspondence also links proof normalisation to term reduction. We shall use this feature in Section 6.

The term assignment system obtained is given in Figure 7. We should point out that the unique natural number labels used above, are replaced by (the more familiar) unique variable names.

x : A ⊢ x : A

Γ, x : A ⊢ e : B ; (−∘_{I}) ; Γ ⊢ λx.e : A−∘B  Γ ⊢ e : A−∘B  Δ ⊢ f : A ; (−∘_{E}) ; Γ, Δ ⊢ ef : B

⊢ ∗ : I

Γ ⊢ e : A Δ ⊢ f : I
(I_{E})
Γ, Δ ⊢ let f be ∗ in e : A

Γ ⊢ e : A Δ ⊢ f : B ; (⊗_{I}) ; Γ, Δ ⊢ e⊗f : A⊗B Γ ⊢ e : A⊗B Δ, x : A, y : B ⊢ f : C

(⊗_{E})
Γ, Δ ⊢ let e be x⊗y in f : C

Δ_{1} ⊢ e_{1} :!A_{1} ⋯ Δ_{n} ⊢ e_{n} :!A_{n} x_{1} :!A_{1}, …, x_{n} :!A_{n} ⊢ f : B

\overline{Promotion}

Δ_{1}, …, Δ_{n} ⊢ promote e_{1}, …, e_{n} for x_{1}, …, x_{n} in f :!B

Γ ⊢ e :!A Δ ⊢ f : B

\overline{Weakening}

Γ, Δ ⊢ discard e in f : B

Γ ⊢ e :!A Δ, x :!A, y :!A ⊢ f : B

\overline{Contraction}

Γ, Δ ⊢ copy e as x, y in f : B

Γ ⊢ e :!A

\overline{Dereliction}

Γ ⊢ derelict(e) : A

Figure 7: Term Assignment System for linear natural deduction

We note at once a significant property of the term assignment system for linear natural deduction. Essentially the terms code the derivation trees so that any valid term assignment has a unique derivation.

Theorem 1 (Unique Derivation) For any term t and proposition A, if there is a valid derivation of the form Γ ⊢ t : A, then (Γ is uniquely determined by t and A) and there is a unique derivation of Γ ⊢ t : A.

Proof. By induction on the structure of t. □

We are now in a position to consider the question of substitution. In previous work [29], it was shown that substitution does not hold for the term assignment systems considered hitherto. Some thought that this represented a mismatch between the semantics and syntax of linear logic. We can now see that this is not the case. Rather we shall see that the term assignment system we derived in Section 3 from semantical considerations is equivalent to the term assignment system based on our analysis of natural deduction. For our system, the substitution property holds.

Theorem 2 (Substitution) If Γ ⊢ a : A and Δ, x : A ⊢ b : B then Γ, Δ ⊢ b[a/x] : B

Proof. By induction on the derivation Δ, x : A ⊢ b : B □

Before we continue, a quick word concerning the Promotion rule. At first sight this seems to imply an ordering of the e_{i} and x_{i} subterms. However, the Exchange rule (which does not introduce any additional syntax) tells us that any such order is really just the effect of writing terms in a sequential manner on the page. (As we shall see, the naturality equations derived from the categorical model have similar consequences.) This paper is not really the place to discuss such syntactical questions. Perhaps proof nets (or a variant of them) are the answer.

Type Reconstruction

Mackie has already given a type reconstruction algorithm in the spirit of Milner’s W for a linear term calculus [22]. However, his language has the same term construction for the Promotion rule as Abramsky. It is a simple exercise to extend Mackie’s algorithm and proofs of soundness and completeness to our term assignment system.

An interesting problem (which will be addressed in [4]) is that of adding a polymorphic let construct to our calculus. Some discussion of this can be found in Mackie’s thesis [22, pages 34–35].

5 Relating the Term Assignment Systems

We would expect there to be a close relationship between the linear natural deduction system and the sequent calculus formulation of Intuitionistic Linear Logic. Indeed we can define procedures to map proofs in the sequent calculus to deductions in natural deduction and vice-versa. Our work can thus be seen as an analogue to that of Zucker [31]. We shall define each procedure in turn. First we shall introduce some notation. A proof tree π in the sequent calculus whose root node is Γ ⊢ A is denoted by

\begin{matrix}π \\ Γ ⊢ A \end{matrix}

and similarly a deduction D in the natural deduction system whose root node is Γ ⊢ A is given by

\begin{matrix}D \\ Γ ⊢ A \end{matrix}

5.1 From Sequent Calculus to Natural Deduction

We shall define a procedure N by induction on the sequent proof tree, which we shall denote by π.

• The axiom A ⊢ A is mapped to the deduction A ⊢ A

• A proof π of the form

\begin{matrix}π_{1} \\ Γ ⊢ A \end{matrix}  \begin{matrix}π_{2} \\ Δ, A ⊢ B \end{matrix}

\overline{Cut}

Γ, Δ ⊢ B

is mapped to the deduction

\begin{matrix}N (π_{1}) \\ Γ ⊢ A \end{matrix}  \begin{matrix}N (π_{2}) \\ Δ, A ⊢ B \end{matrix}
Subs
Γ, Δ ⊢ B

One should note that the rule Subs denotes substitution, which is a derived rule in natural deduction by Theorem 1 of Section 4.

• A proof π of the form

\begin{matrix}π_{1} \\ Γ ⊢ A \end{matrix}  \begin{matrix}π_{2} \\ Δ, B ⊢ C \end{matrix}
(−∘_{L})
Γ, A−∘B, Δ ⊢ C

is mapped to the deduction

\begin{aligned}A−∘B ⊢ A−∘B & \begin{matrix}N (π_{1}) \\ Γ ⊢ A \end{matrix} \\ & & (−∘_{E}) \\ A−∘B, Γ ⊢ B \end{aligned}  \begin{matrix}N (π_{2}) \\ Δ, B ⊢ C \end{matrix}
Subs
Γ, A−∘B, Δ ⊢ C

• A proof π of the form

\begin{matrix}π_{1} \\ Γ, A ⊢ B \end{matrix} ; (−∘_{R}) ; Γ ⊢ A−∘B

is mapped to the deduction

\begin{matrix}N (π_{1}) \\ Γ, A ⊢ B \end{matrix} ; (−∘_{I}) ; Γ ⊢ A−∘B

• A proof π of the form

\begin{matrix}π_{1} \\ Γ ⊢ A \end{matrix} ; (I_{L}) ; Γ, I ⊢ A

is mapped to the deduction

\begin{aligned}\begin{matrix}N (π_{1}) \\ Γ ⊢ A \end{matrix} & I ⊢ I \\ & (I_{E}) \\ Γ, I ⊢ A \end{aligned}

• A sequent

⊢ I

is mapped to the deduction

\begin{aligned}& (I_{L}) \\ ⊢ I \end{aligned}

• A proof π of the form

\begin{matrix}π_{1} \\ Δ, A, B ⊢ C \end{matrix} ; (⊗_{L}) ; Δ, A⊗B ⊢ C

is mapped to the deduction

A⊗B ⊢ A⊗B  \begin{matrix}N (π_{1}) \\ Δ, A, B ⊢ C \end{matrix}
(⊗_{E})
A⊗B, Δ ⊢ C

• A proof π of the form

\begin{matrix}π_{1} \\ Γ ⊢ A \end{matrix}  \begin{matrix}π_{2} \\ Δ ⊢ B \end{matrix}
(⊗_{R})
Γ, Δ ⊢ A⊗B

is mapped to the deduction

\begin{matrix}N (π_{1}) \\ Γ ⊢ A \end{matrix}  \begin{matrix}N (π_{2}) \\ Δ ⊢ B \end{matrix}
(⊗_{I})
Γ, Δ ⊢ A⊗B

• A proof π of the form

\begin{matrix}π_{1} \\ Γ ⊢ B \end{matrix} ; \overline{Weakening} ; Γ,!A ⊢ B

is mapped to the deduction

!A ⊢!A  \begin{matrix}N (π_{1}) \\ Γ ⊢ B \end{matrix}

\overline{Weakening}

Γ,!A ⊢ B

\begin{matrix}π_{1} \\ Γ,!A,!A ⊢ B \end{matrix} ; \overline{Contraction} ; Γ,!A ⊢ B

is mapped to the deduction

!A ⊢!A  \begin{matrix}N (π_{1}) \\ Γ,!A,!A ⊢ B \end{matrix}

\overline{Contraction}

Γ,!A ⊢ B

• A proof π of the form

\begin{matrix}π_{1} \\ Γ, A ⊢ B \end{matrix} ; \overline{Dereliction} ; Γ,!A ⊢ B

is mapped to the deduction

!A ⊢!A ; \overline{Dereliction} ; !A ⊢ A  \begin{matrix}N (π_{1}) \\ Γ, A ⊢ B \end{matrix}

\overline{Subs}

Γ,!A ⊢ B

• Finally, a proof π of the form

\begin{matrix}π_{1} \\ !A_{1}, …,!A_{n} ⊢ B \end{matrix}

\overline{Promotion}

!A_{1}, …,!A_{n} ⊢!B

is mapped to the deduction

!A_{1} ⊢!A_{1} ⋯ !A_{n} ⊢!A_{n}  \begin{matrix}N (π_{1}) \\ !A_{1}, …,!A_{n} ⊢ B \end{matrix}

\overline{Promotion}

!A_{1}, …,!A_{n} ⊢!B

5.2 From Natural Deduction to Sequent Calculus

We shall define a procedure S by induction on the deduction tree, which we shall denote by D.

• The deduction A ⊢ A is mapped to the sequent A ⊢ A

• The deduction D of the form

\begin{matrix}D_{1} \\ Γ, A ⊢ B \end{matrix} ; (−∘_{I}) ; Γ ⊢ A−∘B

is mapped to the proof

\begin{matrix}S(D_{1}) \\ Γ, A ⊢ B \end{matrix} ; (−∘_{R}) ; Γ ⊢ A−∘B

• A deduction D of the form

\begin{matrix}D_{1} \\ Γ ⊢ A−∘B \end{matrix}  \begin{matrix}D_{2} \\ Δ ⊢ A \end{matrix}
(−∘_{E})
Γ, Δ ⊢ B

is mapped to the proof

\begin{matrix}S(D_{1}) \\ Γ ⊢ A−∘B \end{matrix}  \begin{aligned}\begin{matrix}S(D_{2}) \\ Δ ⊢ A \end{matrix} & B ⊢ B \\ & (−∘_{L}) \\ A−∘B, Δ ⊢ B \end{aligned}
Cut
Γ, Δ ⊢ B

• A deduction D of the form

⊢ I

is mapped to the sequent

⊢ I

• A deduction D of the form

\begin{aligned}\begin{matrix}D_{1} \\ Γ ⊢ A \end{matrix} & \begin{matrix}D_{2} \\ Δ ⊢ I \end{matrix} \\ & (I_{E}) \\ Γ, Δ ⊢ A \end{aligned}

is mapped to the proof

\begin{matrix}S(D_{2}) \\ Δ ⊢ I \end{matrix} \begin{matrix}S(D_{1}) \\ Γ ⊢ A \end{matrix} ; (I_{L}) ; Γ, I ⊢ A

\overline{Cut}

Γ, Δ ⊢ A

• A deduction D of the form

\begin{matrix}D_{1} \\ Γ ⊢ A \end{matrix}  \begin{matrix}D_{2} \\ Δ ⊢ B \end{matrix}
(⊗_{I})
Γ, Δ ⊢ A⊗B

is mapped to the proof

\begin{matrix}S(D_{1}) \\ Γ ⊢ A \end{matrix}  \begin{matrix}S(D_{2}) \\ Δ ⊢ B \end{matrix}
(⊗_{R})
Γ, Δ ⊢ A⊗B

• A deduction D of the form

\begin{matrix}D_{1} \\ Γ ⊢ A⊗B \end{matrix}  \begin{matrix}D_{2} \\ Δ, A, B ⊢ C \end{matrix}
(⊗_{E})
Γ, Δ ⊢ C

is mapped to the proof

\begin{matrix}S(D_{1}) \\ Γ ⊢ A⊗B \end{matrix}  \begin{matrix}S(D_{2}) \\ Δ, A, B ⊢ C \end{matrix} ; (⊗_{L}) ; Δ, A⊗B ⊢ C
Cut
Γ, Δ ⊢ C

• A deduction D of the form

\begin{matrix}D_{1} \\ Γ ⊢!A \end{matrix}  \begin{matrix}D_{2} \\ Δ ⊢ B \end{matrix}

\overline{Weakening}

Γ, Δ ⊢ B

is mapped to the proof

\begin{matrix}S(D_{1}) \\ Γ ⊢!A \end{matrix}  \begin{matrix}S(D_{2}) \\ Δ ⊢ B \end{matrix} ; \overline{Weakening} ; Δ,!A ⊢ B
Cut
Γ, Δ ⊢ B

• A deduction D of the form

\begin{matrix}D_{1} \\ Γ ⊢!A \end{matrix}  \begin{matrix}D_{2} \\ Δ,!A,!A ⊢ B \end{matrix}

\overline{Contraction}

Γ, Δ ⊢ B

is mapped to the proof

S(D_{1}) Γ ⊢!A

\begin{matrix}S(D_{2}) \\ Δ,!A,!A ⊢ B \end{matrix}

\overline{Contraction}

Δ,!A ⊢ B

Cut

Γ, Δ ⊢ B

• A deduction D of the form

\begin{matrix}D_{1} \\ Γ ⊢!A \end{matrix} ; \overline{Dereliction} ; Γ ⊢ A

is mapped to the proof

\begin{matrix}S(D_{1}) \\ Γ ⊢!A \end{matrix}  A ⊢ A ; \overline{Dereliction} ; !A ⊢ A
Cut
Γ ⊢ A

\begin{matrix}D_{1} \\ Δ_{1} ⊢!A_{1} \end{matrix} ⋯ \begin{matrix}D_{n} \\ Δ_{n} ⊢!A_{n} \end{matrix}  \begin{matrix}D_{n+1} \\ !A_{1}, …,!A_{n} ⊢ B \end{matrix}

\overline{Promotion}

Δ_{1}, …, Δ_{n} ⊢!B

is mapped to the proof

S(D_{1}) Δ_{1} ⊢!A_{1} ⋯ S(D_{n}) Δ_{n} ⊢!A_{n}

\begin{matrix}S(D_{n+1}) \\ !A_{1}, …,!A_{n} ⊢ B \end{matrix}

\overline{Promotion}

!A_{1}, …,!A_{n} ⊢!B

Cut^{∗}

Δ_{1}, …, Δ_{n} ⊢!B

Note in this last mapping we use a multi-cut rule, Cut^{∗}, although this could be replaced by multiple applications of the Cut rule.

5.3 Properties of the translations

In traditional treatments of proof theory we expect translations as above to give an equivalence between sequent calculus and natural deduction formulations of a logic. We certainly have that in the following theorems (where we suppress for the moment the term assignments).

Theorem 3 (Logic Equivalence)

• If π is a derivation of Γ ⊢ A in the sequent calculus then N (π) is a derivation of Γ ⊢ A in natural deduction.

• If D is a derivation of Γ ⊢ A in the natural deduction then S(D) is a derivation of Γ ⊢ A in sequent calculus.

Hence in particular, Γ ⊢ A is provable in the sequent calculus iff the deduction Γ ⊢ A is provable in the linear natural deduction system.

Proof. By straightforward induction. □

We stress, however, that with the system of term assignment (in particular the rule for Promotion) which we have given, this equivalence extends to the term assignment ystem.

Theorem 4 (Term Equivalence)

• If π is a derivation of Γ ⊢ t : A in the sequent calculus then N (π) is a derivation of Γ ⊢ t : A in natural deduction.

• If D is a derivation of Γ ⊢ t : A in the natural deduction then S(D) is a derivation of Γ ⊢ t : A in sequent calculus.

Hence in particular, Γ ⊢ t : A is provable in the sequent calculus iff the deduction Γ ⊢ t : A is provable in the linear natural deduction system.

Proof. Again by straightforward induction. □

To get a result of this kind for the other presentations of term assignment systems, one would have to add a rule of explicit substitution to natural deduction (see, for example, the translation given by Lincoln and Mitchell [21]).

Next we recall that the natural deduction formulation is highly non redundant. So the next proposition is unsurprising.

Proposition 1 For any derivation D in natural deduction, N S(D) is identical to D (modulo some α-conversions).

Proof. By straightforward induction. □

Note that this result can also be seen as a corollary to Theorem 1 of Section 4 in view of Theorem 4. The same thought also provides us with a simple approach to the proof of the fact that the interpretation of Γ ⊢ t: A in a multicategory C (as in Section 3) is independent of the derivation in the sequent calculus. It is straightforward to provide an interpretation of Γ ⊢ t: A by induction on proofs in natural deduction; this is unproblematic as the proofs are essentially unique (Theorem 1 of Section 4). Then one simply proves inductively that if π is a derivation of Γ ⊢ t: A in sequent calculus then the interpretation of Γ ⊢ t: A associated with π coincides with that associated with N (π). (As usual one needs a substitution lemma!!)

6 Reduction Rules

Within the context of this work we have three approaches available to us for investigating reduction.

• In natural deduction we have the standard reduction rules resulting from “detours” in the proof, namely an introduction followed by a corresponding elimination. This is the normalization procedure for natural deduction.

• The analogue of normalisation for natural deduction is Cut Elimination in the sequent calculus. We have different kinds of cuts: principal cuts, where the cut formula is the subject of both the left and the right rule immediately proceeding the cut; and other cuts where this is not the case. Principal cuts give rise to essentialy the same system of reductions as does the normalization procedure. Other cuts add reductions of interest.

• Our categorical semantics gives rise both to β and η equalities, as well as to some other miscellaneous equalities. We can not of course read off from the categorical semantics a direction for the equations so as to turn them into reductions; and if we give them a plausible computational orientation, we obtain a system which is not Church-Rosser (as it stands). Typically we do not intend to implement the full set of equations coming from a categorical model, so we do not consider completions of this system here.

In the following sections we shall consider the three approaches in the following order. First we shall describe the proof normalisation in the natural deduction system. This will imply via the Curry-Howard Correspondence, the basic β-reduction rules for the linear terms; we also consider reductions corresponding to commuting conversions. We then explain in some detail our notion of a categorical model, which we derive by making plausible simplifications to the structure suggested by the β-reduction rules. We give the complete set of equalities corresponding to our categorical semantics; in other words we provide a soundness and completeness theorem for our notion. Finally we shall consider the reduction steps suggested by the cut elimination process for the sequent calculus, and further reductions corresponding to commutative and (briefly) permutative cuts.

7 Proof Normalisation

With natural deduction we can produce so-called “detours” in a deduction, which arise where we introduce a logical constant and then eliminate it immediately afterwards. We can define a procedure called normalisation which can systematically eliminate such detours from a deduction. A deduction which has no such detours is said to be in normal form.

7.1 The Normalisation Procedure

We can define the normalisation procedure by considering each pair of introduction and elimination rules in turn.

• (−∘_{I}) followed by (−∘_{E})

[A] ; \begin{matrix}· \\ · \\ · \end{matrix} ; B ; (−∘_{I}) ; A−∘B \begin{matrix}· \\ · \\ · \end{matrix} ; A
(−∘_{E})
B

normalises to

\begin{matrix}· \\ · \\ · \end{matrix} ; [A] ; \begin{matrix}· \\ · \\ · \end{matrix} ; B

• (I_{I}) followed by (I_{E})

\begin{aligned}\begin{matrix}· \\ · \\ · \end{matrix} ; A & & \begin{aligned}& (I_{I}) \\ I \end{aligned} \\ & & (I_{E}) \\ & A \end{aligned}

normalises to

\begin{matrix}· \\ · \\ · \end{matrix} ; A

• (⊗_{I}) followed by (⊗_{E})

\begin{aligned}\begin{matrix}· \\ · \\ · \end{matrix} ; A & \begin{matrix}· \\ · \\ · \end{matrix} ; B \\ & (⊗_{I}) \\ A⊗B \end{aligned} [A][B] ; \begin{matrix}· \\ · \\ · \end{matrix} ; C
(⊗_{E})
C

normalises to

\begin{matrix}· \\ · \\ · \end{matrix} ; [A] \begin{matrix}· \\ · \\ · \end{matrix} ; [B]

\begin{matrix}· \\ · \\ · \end{matrix}

C

• Promotion followed by Dereliction

\begin{matrix}· \\ · \\ · \end{matrix} ; !A_{1} … \begin{matrix}· \\ · \\ · \end{matrix} ; !A_{n} [!A_{1}] … [!A_{n}] ; \begin{matrix}· \\ · \\ · \end{matrix} ; B

\overline{Promotion}

!B

\overline{Dereliction}

B

normalises to

\begin{matrix}· \\ · \\ · \end{matrix} ; [!A_{1}] … \begin{matrix}· \\ · \\ · \end{matrix} ; [!A_{n}]

\begin{matrix}· \\ · \\ · \end{matrix}

B

• Promotion with Weakening

\begin{matrix}· \\ · \\ · \end{matrix} ; !A_{1} … \begin{matrix}· \\ · \\ · \end{matrix} ; !A_{n} [!A_{1}] … [!A_{n}] ; \begin{matrix}· \\ · \\ · \end{matrix} ; B

\overline{Promotion}

!B

\begin{matrix}· \\ · \\ · \end{matrix} C

\overline{Weakening}

C

normalises to

\begin{matrix}· \\ · \\ · \end{matrix} ; !A_{1} … \begin{matrix}· \\ · \\ · \end{matrix} ; !A_{n} \begin{matrix}· \\ · \\ · \end{matrix} ; C Weakening^{∗}
C

• Promotion with Contraction

\begin{matrix}· \\ · \\ · \end{matrix} ; !A_{1} … \begin{matrix}· \\ · \\ · \end{matrix} ; !A_{n} [!A_{1}] … [!A_{n}] ; \begin{matrix}· \\ · \\ · \end{matrix} ; B ; \overline{Prom.} ; !B [!B][!B] ; \begin{matrix}· \\ · \\ · \end{matrix} ; C
\overline{Cont.}

C normalises to

[!A_{1}] … [!A_{n}] [!A_{1}] … [!A_{n}] ; \begin{matrix}· \\ · \\ · \end{matrix} ; B ; \overline{Prom.} ; !B [!A_{1}] … [!A_{n}] [!A_{1}] … [!A_{n}] ; \begin{matrix}· \\ · \\ · \end{matrix} ; B ; \overline{Prom.} ; !B

\begin{matrix}· \\ · \\ · \end{matrix}

C

\begin{matrix}· \\ · \\ · \end{matrix} !A_{1}

…

\begin{matrix}· \\ · \\ · \end{matrix} !A_{n}

\overline{Cont.*}

C

As mentioned earlier, the Curry-Howard Correspondence tells us that we can relate proof normalisation to term reduction. Rather than display the proof trees annotated with terms, we give the (one-step) term reduction rules in Figure 8. The astute reader will

(λx.t)e  → t[e/x]
let ∗ be ∗ in e  → e
let e⊗t be x⊗y in u  → u[e/x, t/y]
derelict(promote e_{i} for x_{i} in t)  → t[e_{i}/x_{i}]
discard (promote e_{i} for x_{i} in t) in u  → discard e_{i} in u
copy (promote e_{i} for x_{i} in t) as y, z in u → copy e_{i} as x′_{i}, x′′_{i} in

u[promote x′_{i} for x_{i} in t/y, promote x′′_{i} for x_{i} in t/z]

Figure 8: One-step β-reduction rules

have noticed our use of shorthand in the last two rules. Hopefully, our notation is clear; for example, the term

discard e_{i} in u

represents the term

discard e_{1} in … discard e_{n} in u

Given the one-step reduction rules in Figure 8, we can define β-reduction^{5} using the inference rules given in Figure 9.

Now we have a notion of normality of proofs, we can state a further property of the N procedure from Section 5.1, which maps proofs in the sequent calculus to deductions in natural deduction.

Theorem 5 (Normality) For all cut-free proofs, π, in the sequent calulus, N (π) is a deduction in the natural deduction which is in normal form.

Proof. By induction on the structure of the proof π. □

5Note our slightly non-standard use of the phrase β-reduction.

\begin{matrix}M →_{β} N \\ MP →_{β} NP \end{matrix} {M →_{β} N \atop P M →_{β} P N}

{M →_{β} N \atop λx.M →_{β} λx.N}

M →_{β} N

derelict(M) →_{β} derelict(N)

M →_{β} N

let M be x⊗y in P →_{β} let N be x⊗y in P

M →_{β} N

let P be x⊗y in M →_{β} let P be x⊗y in N

M →_{β} N

copy M as x, y in P →_{β} copy N as x, y in P

M →_{β} N

copy P as x, y in M →_{β} copy P as x, y in N

M →_{β} N
promote M, … for z, … in P →_{β} promote N, … for z, … in P
M →_{β} N
promote P, … for z, … in M →_{β} promote P, … for z, … in N

Figure 9: Reduction inference rules

7.2 Commuting Conversions

We follow a similar presentation to that of Girard [12, Chapter 10]. We use the shorthand notation

C ⋮ ; r ; D

to denote an elimination of the premise C, where the conclusion is D and the ellipses represent possible other premises. This notation covers the five elimination rules: (−∘_{E}), (I_{E}), (⊗_{E}), Contraction, and Weakening. We shall follow Girard and commute the r rule upwards, although it should be noted that it would be perfectly admissable (where applicable) to direct these commutations in the other direction.

• Commutation of (⊗_{E})

\begin{aligned}\begin{matrix}· \\ · \\ · \end{matrix} ; A⊗B & [A][B] ; \begin{matrix}· \\ · \\ · \end{matrix} ; C \\ & (⊗_{E}) \\ C \end{aligned} ⋮
r
D

which commutes to

\begin{matrix}· \\ · \\ · \end{matrix} ; A⊗B \begin{aligned}[A][B] ; \begin{matrix}· \\ · \\ · \end{matrix} ; C & ⋮ \\ & & r \\ D \end{aligned}
(⊗_{E})
D

• Commutation of (I_{E})

\begin{aligned}\begin{matrix}· \\ · \\ · \end{matrix} ; A & & \begin{matrix}· \\ · \\ · \end{matrix} ; I \\ & & & (I_{E}) \\ & A \end{aligned} ⋮ r
D

which commutes to

\begin{aligned}\begin{matrix}· \\ · \\ · \end{matrix} ; A & ⋮ \\ & & r \\ D \end{aligned} \begin{matrix}· \\ · \\ · \end{matrix} ; I
(I_{E})
D

• Commutation of Weakening

\begin{matrix}· \\ · \\ · \end{matrix} ; !B \begin{matrix}· \\ · \\ · \end{matrix} ; C ; \overline{Weakening} ; C ⋮
r
D

which commutes to

\begin{matrix}· \\ · \\ · \end{matrix} ; !B \begin{aligned}\begin{matrix}· \\ · \\ · \end{matrix} ; C & ⋮ \\ & & r \\ D \end{aligned}

\overline{Weakening} D

• Commutation of Contraction

\begin{matrix}· \\ · \\ · \end{matrix} ; !B [!B][!B] ; \begin{matrix}· \\ · \\ · \end{matrix} ; C

\overline{Contraction}

C ...

r
D

which commutes to

\begin{matrix}· \\ · \\ · \end{matrix} ; !B \begin{aligned}[!B][!B] ; \begin{matrix}· \\ · \\ · \end{matrix} ; C & ⋮ \\ & & r \\ D \end{aligned}

\overline{Contraction} D

Again, rather than presenting the above deductions with terms attached, we give (all) the term conversions in Figure 10. We use the symbol →_{c} to denote a commuting conversion.

We should note that these commuting conversions are simply special cases of the naturality equations given in Figure 3. However, they do seem to have more computational significance than the others. They appear to reveal further β-redexes which exist in a term. Let us consider an example; the term

(copy e as x, y in λz.discard z in x⊗y)g

is in normal form. We can apply a commuting conversion to get the term

copy e as x, y in (λz.discard z in x⊗y)g

which has an (inner) β-redex. From an implementation perspective, such conversions would ideally be performed at compile-time (although almost certainly not at run-time). Again, as mentioned earlier, a better (i.e. less sequential) syntax might make such conversions unnecessary.

We can now prove subject reduction; namely that (β and commuting) reduction (→_{β,c}) is well-typed. Again this property was thought not to hold [21, 23].

Theorem 6 (Subject Reduction) If Γ ⊢ e : A and e →_{β,c} f then Γ ⊢ f : A.

Proof. By induction on the derivation of e →_{β,c} f. □

It is evident that the above theorem also holds for →_{β,c}^{∗} the reflexive and transitive closure of →_{β,c}.

8 The Categorical Model

We now define a precise notion of a categorical model for the proof theory of Intuitionistic Linear Logic. Much work has been done on providing such (categorical) models of Intuitionistic Linear Logic. Here we shall just mention the work of Seely [27] and de Paiva [5, 6]. This section is self-contained and the reader need not be familiar with the above.

With a view to understanding what is involved here, let us consider the traditional analysis of the proof theory of some basic intuitionistic logic via the notion of a cartesian closed category. (Lambek and Scott [19] is a good source for this material.) In that case, the basic normalization process gives rise to β-equality on the terms of the typed λ-calculus. The β-equality rule is valid in a cartesian closed category, but the attractive categorical assumption of being cartesian closed amounts to requiring βη-equality, that is, to a further ‘extensionality’ assumption. (A justification for this is that we think of our

(let e be x⊗y in f)g  →_{c} let e be x⊗y in (fg)
let (let e be x⊗y in f) be p⊗q in g →_{c} let e be x⊗y in (let f be p⊗q in g)
discard (let e be x⊗y in f) in g  →_{c} let e be x⊗y in (discard f in g)
copy (let e be x⊗y in f) as p, q in g →_{c} let e be x⊗y in (copy f as p, q in g)
let (let e be x⊗y in f) be ∗ in g  →_{c} let e be x⊗y in (let f be ∗ in g)
(let e be ∗ in f)g  →_{c} let e be ∗ in (fg)
let (let e be ∗ in f) be p⊗q in g  →_{c} let e be ∗ in (let f be p⊗q in g)
discard (let e be ∗ in f) in g  →_{c} let e be ∗ in (discard f in g)
copy (let e be ∗ in f) as p, q in g  →_{c} let e be ∗ in (copy f as p, q in g)
let (let e be ∗ in f) be ∗ in g  →_{c} let e be ∗ in (let f be ∗ in g)
(discard e in f)g  →_{c} discard e in (fg)
let (discard e in f) be p⊗q in g  →_{c} discard e in (let f be p⊗q in g)
discard (discard e in f) in g  →_{c} discard e in (discard f in g)
copy (discard e in f) as p, q in g  →_{c} discard e in (copy f as p, q in g)
let (discard e in f be ∗ in g  →_{c} discard e in (let f be ∗ in g)
(copy e as x, y in f)g  →_{c} copy e as x, y in (fg)
let (copy e as x, y in f) be p⊗q in g →_{c} copy e as x, y in (let f be p⊗q in g)
discard (copy e as x, y in f) in g  →_{c} copy e as x, y in (discard f in g)
copy (copy e as x, y in f) as p, q in g →_{c} copy e as x, y in (copy f as p, q in g)
let (copy e as x, y in f) be ∗ in g  →_{c} copy e as x, y in (let f be ∗ in g)

Figure 10: Commuting Conversions

functions ‘extensionally’ and so may wish to use the η rule in arguing about them even if we never implement this rule.) Thus one way to understand what we do is that we make a minimal number of attractive simplifying assumptions about the basic categorical set up introduced in Section 3 which at least entail the (desired) equalities between proofs which have been obtained (say) from the natural deduction formulation of the proof theory. (Of course we would like the equalities to make some kind of sense!) In this section we simply discuss the categorical assumptions we make and give the resulting equations. In a later section we consider the import of the equations more closely.

8.1 Categorical interpretation of the multiplicatives

We start by considering the connective ⊗. The categorical significance of the β-rule for ⊗ is that any map of the form Γ • A • B → C factors canonically (in the generalised sense of Section 3) through the map A • B \underrightarrow{⊗} A⊗B which results from the instance of the (⊗_{R})

rule A ⊢ A B ⊢ B

(⊗_{R})
A, B ⊢ A⊗B

Hence any map

Γ • A • B −f ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ C

is a composite

Γ • A • B −1_{Γ} • ⊗ ; \begin{matrix}− \\ − \\ − \\ − \\ − \\ − \end{matrix}⟶ Γ • (A⊗B) −\overline{f} ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ C

The simplifying ‘extensionality’ assumption is then that this factorization is unique. This can be expressed by saying that (generalized) composition with A • B → A⊗B induces a natural isomorphism between maps

Γ • (A⊗B) → C = Γ • A • B → C

In other words that the operation of composing with A • B → A⊗B provides an inverse to the (⊗_{L})-operation taking maps Γ • A • B → C to maps Γ • (A⊗B) → C. Thus we may as well assume that the logical ⊗ coincides with •. (Henceforth we shall assume this property of the category and use ⊗ both as a logical operator and to interpret the comma on the left hand side of a sequent.) We get two equations expressing that composing the two operations on maps just mentioned in either order gives the identity. One of these equations is, of course, the β-rule for tensor:

let u⊗v be x⊗y in f = f[u/x, v/y]  (5)

The other can be regarded as an η-equality:

let u be x⊗y in f[x⊗y/z] = f[u/z]  (6)

Note that a consequence of our assumption is that ⊗ is functorial. Hence in particular the naturality equation

g[let z be x⊗y in f/w] = let z be x⊗y in g[f/w]

of Section 3 follows. We see how this works out computationally later.

The case of I is like that for ⊗. The categorical import of the β-rule for I is that any map of the form ⟨⟩ → C factors canonically through the map ⟨⟩ ⟶^{I} I which results from the (I_{R}) rule

\begin{aligned}& (I_{R}) \\ ⊢ I \end{aligned}

Again this should be taken in the generalised sense of Section 3, thus every map

Γ • ⟨⟩ ⟶^{f} C

factors as a composite

Γ • ⟨⟩ ⟶^{1_{Γ}•I} Γ • I ⟶^{\overline{f}} C

The simplifying ‘extensionality’ assumption is then that this factorization is unique. This can be expressed by saying that (generalized) composition with ⟨⟩ → I induces a natural isomorphism between maps

Γ • I → C ; = ; Γ • ⟨⟩ → C

and this has a similar interpretation to that just given in the case of ⊗. We thus identify ⟨⟩ and I, and use I both as a logical operator and to interpret the empty sequence on the left hand side of a sequent. As before we get two equations expressing the natural isomorphism. One is the β-rule

let ∗ be ∗ in f = f  (7)

and the other can again be regarded as an η-equality:

let u be ∗ in f[∗/z] = f[u/z]  (8)

The naturality equation of Section 3

f[let z be ∗ in e/w] = let z be ∗ in f[g/w]

is, as before, a consequence of our assumption.

The β-rule for −∘ has a slightly more complicated interpretation, though now that we have identified • with ⊗, we do not need to carry assumptions Γ around. In effect the rule means that any map f: A⊗B → C factors as

A⊗B −1⊗cur(f) ; \begin{matrix}− \\ − \\ − \\ − \\ − \\ − \\ − \\ − \end{matrix}⟶ A⊗(A−∘C) −app ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ C

where app: A⊗(A−∘C) → C is the map that results from an instance of the (−∘_{L}) rule

A ⊢ A C ⊢ C
(−∘_{L})
A, A−∘C ⊢ C

In these circumstances again, the natural simplifying assumption is that the factorization is unique. This means that (generalized) composition with app induces a natural isomorphism between maps

A⊗B −\begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ C

=

A −\begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ B−∘C

In other words composing with app provides an inverse to the (−∘_{R})-operation which in effect takes maps A⊗B → C to maps A → B−∘C. Thus −∘ provides us with a closed structure on our category corresponding to the tensor ⊗. Again we have two equations to express our natural isomorphism. One is the β-rule

(λx.f)e = f[e/x]  (9)

and the other is the (linear form of the) traditional η-rule

λx.fx = f  (10)

(It is a consequence of our assumption that −∘ is functorial in the usual way, contravariantly in the first argument and covariantly in the second.)

8.2 Categorical interpretation of Dereliction and Promotion

Now we consider the meaning of the β-rule for ! involving Dereliction. The categorical import of this rule is that any map !Γ → A factors in a canonical way as a composite

!Γ −\begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶!A −ε_{A} ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ A

where !A ⟶^{ε_{A}} A is the canonical map obtained by Dereliction from the identity as described in Section 3. By analogy with what we have done so far we should like to ask that this factorization be unique; but it is not clear how to do this. After all we do not expect all maps !Γ →!A to arise as instances of Promotion. (Otherwise we would be in danger of collapsing the logic.) Hence we need to exhibit some familiar looking structure to motivate our simplifying assumptions.

Given any proof Γ ⊢ B there is obviously a canonical two-step process that transforms it into a proof !Γ ⊢!B by applying the Dereliction rule (several times) followed by Promotion.

Γ ⊢ B

Dereliction* !Γ ⊢ B

\overline{Promotion} !Γ ⊢!B

If Γ ⟶^{f} B interprets the original proof, we write the resulting arrow as

!Γ −!f ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶!B

As a preliminary simplification, we assume that this definition gives the extension of ! to a multicategorical functor. In the light of the assumptions above, this amounts to the assumption that ! is a monoidal functor; that is, ! comes equipped with a natural transformation

m_{A,B}: !A⊗!B →!(A ⊗ B)

(natural in A and B) and a morphism

m_{I}: I →!I

(note that this morphism is the nullary form of the natural transformation) and making a standard collection of diagrams commute. (The definition is given in Eilenberg and Kelly [7]. For the convenience of the reader we display the relevent diagrams in Appendix A.) We have appropriate candidates for the maps m_{A,B} and m_{I} in the interpretations of the proofs:

A ⊢ A ; \overline{Dereliction} ; !A ⊢ A  B ⊢ B ; \overline{Dereliction} ; !B ⊢ B
\overline{(⊗_{R})}
!A,!B ⊢ A ⊗ B

\overline{Promotion}

!A,!B ⊢!(A ⊗ B)

\overline{(⊗_{L})}

!A⊗!B ⊢!(A ⊗ B)

and

⊢ I ; Promotion ; ⊢!I

\overline{(I_{L})}

I ⊢!I

Note that the β-rule for Dereliction certainly implies that for any f: Γ → A, the diagram

!Γ −!f ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶!A
ε_{Γ} | ; | ; | ; ↓  | ; | ; | ; ↓ ε_{A}
Γ − ; − ; − ; \begin{matrix}− \\ − \\ − \\ − \end{matrix} ; f ; − ; − ; → A

commutes. Either composite gives the effect of Dereliction on f. This shows that ε: ! → 1 will be a multicategorical natural transformation and so a monoidal natural transformation.

We need one further piece of structure. We apply the Promotion rule to the axiom !A ⊢ !A to obtain the derivation

!A ⊢!A ; \overline{Promotion} ; !A ⊢!!A

In other words, from an identity arrow !A ⟶!A we can get a canonical arrow δ_{A}: !A →!!A. With the equations to hand we know rather little about δ. One can easily check that the composite

!A −δ_{A} ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶!!A −ε_{!A} ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶!A

is the identity on !A, and that is one of the triangle identities for a comonad, but that is about it. However it is tempting to add to our preliminary assumption that ! is a monoidal functor, the assumption that δ (as well as ε) is a monoidal natural transformation and that (!, ε, δ) forms a comonad on our category. These assumptions are quite natural in the context of the 2-category of monoidal categories, monoidal functors and monoidal natural transformations. (The basic notions are again due to Eilenberg and Kelly [7], and are spelt out in detail at the end of the paper. The reader may wish to consult Kelly [20] for further information on category theory in the enriched setting.) The equations corresponding to the standard presentation of the notion of a monoidal comonad are quite messy to write down in terms of the syntax we have given and it is best to reformulate things. First note for completeness that given a monoidal comonad (!, ε, δ), the Promotion rule can be interpreted as follows: given a map

!C_{1} ⊗ … ⊗!C_{n} −f ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ A

we obtain the ‘promoted’ map as the composite

!C_{1} ⊗ … ⊗!C_{n} − δ ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶!!C_{1} ⊗ … ⊗!!C_{n} −m ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶!(!C_{1} ⊗ … ⊗!C_{n}) −!f ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶!A

Conversely, it is well-known at least in the dual case of monads that there is an alternative formulation of the notion of a comonad in terms of a functor !, a natural transformation ε and a natural operation γ (sometimes called the Kleisli operation) which takes maps f: !A → B to maps γ(f): !A →!B. The definition of Promotion just given is the (multicategorical or) monoidal form of this Kleisli operation γ. Thus we can formulate the conditions that (!, ε, δ) be a monoidal comonad directly in terms of the basic operations given by linear logic. In addition to the β-equality

derelict(promote e_{i} for x_{i} in f) = f[e_{i}/x_{i}],  (11)

we obtain the equations

promote z for x in (derelict(x)) = z  (12)

and

promote (promote z_{i} for x_{i} in f), w_{j} for y, y_{j} in g =
promote z_{i}, w_{j} for z′_{i}, y_{j} in (g[promote z′_{i} for x_{i} in f/y]).  (13)

Equation (12) can be thought of as an η-rule, as it provides a kind of uniqueness of the factorization mentioned above; equation (13) expresses an appropriate form of naturality of the operation of Promotion. Note that while the categorical appealing assumption that (!, ε, δ) is a monoidal comonad may seem unmotivated from the computational point of view, it results in equations which seem to have some proof-theoretical/computational content.

We discuss further below, the categorical significance of the assumption that (!, ε, δ) is a monoidal comonad. Essentially it has the consequence that ⊗ gives rise to a (symmetric) monoidal structure on the (Eilenberg-Moore) category of coalgebras for (!, ε, δ), see Theorem 8. For the moment simply note that maps of the form γ(f) (that is, maps obtained by Promotion on maps of the form f: !A → B) correspond exactly to maps between free coalgebras.

8.3 Categorical interpretation of Weakening and Contraction

We finally consider the categorical significance of the β-rules involving Weakening and Contraction. To do so let us first introduce a further canonical pair of maps. Using Weakening (and the right rule for I) we have a deduction

⊢ I ; \overline{Weakening} ; !A ⊢ I

which gives a canonical map

!A ⟶^{e_{A}} I

(where e is used to remind the reader that this map corresponds to ‘erasing’ the assumption). From the rules (⊗_{R}) and Contraction we obtain

!A ⊢!A !A ⊢!A

\overline{(⊗_{R})}

!A,!A ⊢!A⊗!A

\overline{Contraction}

!A ⊢!A⊗!A which gives a canonical map (again d is used to hint at ‘duplication’ of assumptions)

!A ⟶^{d_{A}}!A⊗!A

It follows from the β and η rules for ⊗ and I as well as from the naturality assumptions on Contraction and Weakening described in Section 3 that the effect of the rule of Weakening is that any map arising from it

Γ⊗!A −f ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ B

is the composite

Γ⊗!A −1⊗e_{A} ; \begin{matrix}− \\ − \\ − \\ − \\ − \\ − \end{matrix}⟶ Γ⊗I ≅ Γ −\overline{f} ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ B

Similarly the effect of the rule of Contraction is that any map arising from the use of it

!A⊗Γ −f ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ B

is the composite

!A⊗Γ −d_{A}⊗1_{Γ} ; \begin{matrix}− \\ − \\ − \\ − \\ − \\ − \end{matrix}⟶!A⊗!A⊗Γ −\overline{f} ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ B

Under the assumptions already made, the categorical import of the β-rules corresponding to Weakening and Contraction can be understood purely in terms of the operations given by the maps e_{A} and d_{A}. Since Promotion is interpreted by the Kleisli operation γ, the β-rules have the force that maps of the form γ(f) preserve the structure (on objects of the form !A) given by e and d. Diagramatically

!A −γ(f) ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶!B  !A −γ(f) ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ !B
e_{A} | ; | ; | ; ↓  | ; | ; | ; ↓ e_{B}  d_{A} | ; | ; | ; ↓  | ; | ; | ; ↓ d_{B}
I = = = = = = = = = = = = I  !A⊗!A − ; − ; − ; \begin{matrix}− \\ − \\ − \\ − \\ − \\ − \\ − \\ − \\ − \\ − \end{matrix} ; γ(f)⊗γ(f) ; − ; − ; →!B⊗!B

Of course the β equations for Contraction and Weakening namely,

discard (promote e_{i} for x_{i} in t) in u = discard e_{i} in u  (14)

and

copy (promote e_{i} for x_{i} in t) as y, z in u =
copy e_{i} as x′_{i}, x′′_{i} in u[promote x′_{i} for x_{i} in t/y, promote x′′_{i} for x_{i} in t/z]  (15)

correspond exactly to the commuting of diagrams more complex than the ones above; but by naturality considerations the simple diagrams do give the full force of the equations. It follows at once from the commutativity of the diagrams above that the canonical morphisms (e and d) are natural transformations as this means that the diagrams

!A −!f ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶!B  !A −!f ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ !B
e_{A} | ; | ; | ; ↓  | ; | ; | ; ↓ e_{B}  d_{A} | ; | ; | ; ↓  | ; | ; | ; ↓ d_{B}
I = = = = = = = = = = I  !A⊗!A − ; − ; − ; \begin{matrix}− \\ − \\ − \\ − \\ − \\ − \end{matrix} ; !f⊗!f ; − ; − ; →!B⊗!B

commute for any given map A →^{f} B in C.

One might also expect that e and d give structure on the coalgebras, or (what amounts to the same thing) that they are themselves maps of coalgebras. If the morphisms e and d are maps of coalgebras we have commutativity of the diagrams

!A −δ_{A} ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶!!A  !A −δ_{A} ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ !!A
e_{A} | ; | ; | ; ↓  | ; | ; | ; ↓!e_{A}  d_{A} | ; | ; | ; ↓  | ; | ; | ; ↓!d_{A}
I − ; − ; − ; \begin{matrix}− \\ − \\ − \\ − \end{matrix} ; m_{I} ; − ; − ; → !I  !A⊗!A − ; − ; − ; \begin{matrix}− \\ − \\ − \\ − \\ − \\ − \end{matrix} ; δ_{A}⊗δ_{A} ; − ; − ; →!!A⊗!!A − ; − ; − ; \begin{matrix}− \\ − \\ − \\ − \\ − \\ − \end{matrix} ; m_{!A,!A} ; − ; − ; →!(!A⊗!A)

This leads to the equations

promote e, e_{i} for x, x_{i} in discard x in t = discard e in promote e_{i} for x_{i} in t  (16)

and

promote e, e_{i} for z, z_{i} in copy z as x, y in t =
copy e as x′, y′ in promote x′, y′, e_{i} for x, y, z_{i} in t  (17)

where, as before, the equations correspond exactly to more complex diagrams but the appropriate naturality considerations imply the full force of the equations.

We believe that there is some computational sense to this interplay between Promotion on the one hand, and Weakening and Contraction on the other. Furthermore our intuitions about the processes of discarding and copying suggest strongly that the natural transformations e and d give rise to the structure of a (commutative) comonoid on the free !-coalgebras. (As a consequence all coalgebras have (and all maps of coalgebras preserve) the structure of a (commutative) comonoid.) These assumptions induce further obvious equalities on terms

copy e as x, y in discard x in t = t[e/y],  (18)
copy e as x, y in discard y in t = t[e/x]  (19)
copy e as x, y in t = copy e as y, x in t  (20)
copy e as x, w in copy w as y, z in t = copy e as w, z in copy w as x, y in t  (21)

Again these equations seem to have proof-theoretic/computational content.

8.4 The categorical model of Intuitionistic Linear Logic

Much of the categorical analysis that we have just given is quite familiar, though the corresponding equational calculus seems new (if only because our syntax is new). We note however that (following Seely [27]) it has become standard to analyze the categorical meaning of Weakening and Contraction in terms of the relationship between the additives and the multiplicatives. Our analysis dispenses with additives and hence gives a more general account of the force of the exponentials. Even in the presence of the additives our formulation is not equivalent to Seely’s and it certainly covers cases of interest not covered by his. We try to make the relation between the two approaches clear in the next section.

To sum up the analysis in this section we give the following definition.

Definition 1 A categorical model for multiplicative Intuitionistic Linear Logic consists of:

1. a symmetric monoidal closed (multi)category (modelling tensor and linear implication);

2. together with a comonad (!, ε, δ) with the following properties:

(a) the functor part ‘!’ of the comonad is a monoidal functor and ε and δ are monoidal natural transformations,

(b) every (free) !-coalgebra carries naturally the structure of a commutative comonoid^{6} in such a way that coalgebra maps are comonoid maps.

This definition makes no attempt to model the additives. To do so we would add a clause to the effect that the symmetric monoidal closed (multi)category was equipped with finite products and coproducts ^{7}.

Note that we have indicated in the text above what are the equations in our term assignment system corresponding to this notion of categorical model. We display these equations (as well as the naturality equations of Section 3) in Figure 11. These rules are sound and complete for our notion of a model, in a sense which we make precise as follows.

In Section 3 we explained what is the general form of an interpretation of the types and terms (in context) of our term logic system with given signature in a (multi)category equipped with the appropriate structure. (The structure amounts to the operations given in Figure 4.)

Suppose now we are given a categorical model for (multiplicative) Intuitionistic Linear Logic as just defined; we show that the corresponding (multi)category has the required structure. As explained in Section 8.1 we now use the same tensor to represent the multicategorical structure and to model the logical tensor. Hence the operations for I and tensor are given by standard operations in a (symmetric) monoidal closed category. Furthermore the closed structure takes care of the operation for −∘. We considered Dereliction and Promotion in 8.2. The map ε: !A → A introduced in Section 3 is of course just the co-unit ε_{A}: !A → A of the comonad. As we mentioned in 8.2 the operation corresponding

6This means not only that each !-coalgebra (A, h_{A}: A →!A) comes equipped with morphisms e: A → I and d: A → A⊗A but also that e and d are coalgebra maps. Moreover, since the coalgebra maps are comonoid morphisms we have four commutative diagrams that we have seen (instances of) before.

7These might be weak products and coproducts.

let ∗ be ∗ in e  = e
let u be ∗ in f[∗/z]  = f[u/z]
let e⊗t be x⊗y in u  = u[e/x, t/y]
let u be x⊗y in f[x⊗y/z]  = f
(λx.t)e  = t[e/x]
λx.tx  = t
derelict(promote e_{i} for x_{i} in t)  = t[e_{i}/x_{i}]
promote z for x in derelict(x)  = z
promote (promote z_{i} for x_{i} in f), w_{j} for y, y_{j} in g = promote z_{i}, w_{j} for z′_{i}, y_{j} in

(g[promote z′_{i} for x_{i} in f/y])

discard (promote e_{i} for x_{i} in t) in u  = discard e_{i} in u
promote e, e_{i} for x, x_{i} in discard x in t  = discard e in promote e_{i} for x_{i} in t
copy (promote e_{i} for x_{i} in t) as y, z in u = copy e_{i} as x′_{i}, x′′_{i} in

u[promote x′_{i} for x_{i} in t/y, promote x′′_{i} for x_{i} in t/z]

promote e, e_{i} for z, z_{i} in copy z as x, y in t = copy e as x′, y′ in

promote x′, y′, e_{i} for x, y, z_{i} in t

copy e as x, y in discard x in t  = t[e/y]
copy e as x, y in discard y in t  = t[e/x]
copy e as x, y in t  = copy e as y, x in t
copy e as x, w in copy w as y, z in t  = copy e as w, z in copy w as x, y in t
f[let z be ∗ in e/w]  = let z be ∗ in f[e/w]
f[let z be x⊗y in e/w]  = let z be x⊗y in f[e/w]
f[discard z in e/w]  = discard z in f[e/w]
f[copy z as x, y in e/w]  = copy z as x, y in f[e/w]

Figure 11: Categorical equalities to Promotion takes a map

!C_{1} ⊗ … ⊗!C_{n} −f ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ A

to the composite

!C_{1} ⊗ … ⊗!C_{n} − δ ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶!!C_{1} ⊗ … ⊗!!C_{n} −m ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶!(!C_{1} ⊗ … ⊗!C_{n}) −!f ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶!A

Finally we considered Weakening and Contraction in 8.3. The operation corresponding to Weakening take a map

Γ −f ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ B

to the composite

Γ⊗!A −1 ⊗ e_{A} ; \begin{matrix}− \\ − \\ − \\ − \\ − \\ − \end{matrix}⟶ Γ ⊗ I ≅ Γ −f ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ A

The operation corresponding to Contraction takes a map

Γ⊗!A⊗!A −f ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ B

to the composite

Γ⊗!A −1 ⊗ d_{A} ; \begin{matrix}− \\ − \\ − \\ − \\ − \\ − \end{matrix}⟶ Γ⊗!A⊗!A −f ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ B

Thus we can interpret our system in any categorical model.

Theorem 7

1. (Soundness) For any signature and interpretation of the corresponding system in a categorical model for Intuitionistic Linear Logic (all the equational consequences of) the equations in Figure 11 hold in the sense that the interpretations of either term gives the same map in the category.

2. (Completeness) For any signature there is a categorical model for Intuitionistic Linear Logic and an interpretation of the system in it with the following property:

• If Γ ⊢ t: A and Γ ⊢ s: A are derivable in the system then t and s are interpreted as the same map Γ → A just when t = s: A is provable from the equations in Figure 11 (in typed equational logic).

Proof. The proof of soundness involves labouriously checking for each rule that a relevant diagram commutes in the category. We give a selection of cases.

• To justify the categorical equation

derelict(promote z_{i} for x_{i} in f) = f[z_{i}/x_{i}]

suppose that Γ = {C_{1}, …, C_{n}} and that f: !Γ → B is the interpretation of !Γ ⊢ f : B. Then the left hand side of the above equation is interpreted by the upper path from !Γ = ⊗_{i}!C_{i} to !B in the diagram

⊗_{i}!C_{i} −⊗_{i}δ ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ ⊗_{i}!!C_{i} −m ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶!(⊗_{i}!C_{i}) −!f ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶!B

\begin{aligned}1 & [figure] \\ & ↘ \end{aligned}⊗_{i}ε | ; | ; | ; ↓  ε | ; | ; | ; ↓  | ; | ; | ; ↓ ε
⊗_{i}C_{i} − ; − ; − ; \begin{matrix}− \\ − \\ − \\ − \end{matrix} ; 1 ; − ; − ; → ⊗_{i}C_{i} − ; − ; − ; \begin{matrix}− \\ − \\ − \\ − \end{matrix} ; f ; − ; − ; → B

while the right hand side is interpreted by the lower path. But the diagram clearly commutes. (The triangle commutes by a standard triangle identity, the left hand square as ε is a monoidal transformation, and the right hand square as ε is natural.)

• To justify the equation

promote (promote z_{i} for x_{i} in f), w_{j} for y, y_{j} in g =
promote z_{i}, w_{j} for z′_{i}, y_{j} in (g[promote z′_{i} for x_{i} in f/y]).

we need a very simple categorical proposition. The left-hand side corresponds to a morphism (δ_{C}; !f); (δ_{A}; !g) and the right-hand side corresponds to a morphism δ; !(δ; !f; g); thus saying that they are equal corresponds to the commutativity of the following diagram:

!C −δ_{C} ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ !!C −!f ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ !A
δ_{C} | ; | ; | ; ↓  δ_{!C} | ; | ; | ; ↓  | ; | ; | ; ↓ δ_{A}
!!C − ; − ; − ; \begin{matrix}− \\ − \\ − \\ − \end{matrix} ; !δ ; − ; − ; →!!!C − ; − ; − ; \begin{matrix}− \\ − \\ − \\ − \end{matrix} ; !!f ; − ; − ; →!!A − ; − ; − ; \begin{matrix}− \\ − \\ − \\ − \end{matrix} ; !g ; − ; − ; →!B

The right square commutes because δ is a natural transformation and the left square commutes because (!, δ, ε) is a comonad.

• The categorical property required for the equation

promote e, e_{i} for x, x_{i} in discard x in t = discard e in promote e_{i} for x_{i} in t is that the following diagram

!C ⊗ D −h ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶!A ⊗ D
e_{C} ⊗ D | ; | ; | ; ↓  | ; | ; | ; ↓ e_{A} ⊗ D
I ⊗ D − ; − ; − ; \begin{matrix}− \\ − \\ − \\ − \end{matrix} ; 1 ; − ; − ; → I ⊗ D

commutes irrespective of the function h.

• For the equation

promote e, e_{i} for z, z_{i} in copy z as x, y in t =
copy e as x′, y′ in promote x′, y′, e_{i} for x, y, z_{i} in t

the property used is the naturality of the natural transformation d, which means the commutativity of the diagram

!C −γ(!f) ; \begin{matrix}− \\ − \\ − \\ − \\ − \\ − \end{matrix}⟶ !A
d_{C} | ; | ; | ; ↓  | ; | ; | ; ↓ d_{A}
!C⊗!C − ; − ; − ; \begin{matrix}− \\ − \\ − \\ − \\ − \\ − \\ − \\ − \\ − \\ − \\ − \\ − \end{matrix} ; γ(!f) ⊗ γ(!f) ; − ; − ; →!A⊗!A − g ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ B

In detail:

!C − δ ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ !!C −!f ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ !A
d_{C} | ; | ; | ; ↓  | ; | ; | ; ↓ d_{A}
!C⊗!C  !A⊗!A − g ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ B
δ | ; | ; | ; ↓  ↑ ; | ; | ; |!f
!!C⊗!C − ; − ; − ; \begin{matrix}− \\ − \\ − \\ − \end{matrix} ; !f ; − ; − ; →!A⊗!C − ; − ; − ; \begin{matrix}− \\ − \\ − \\ − \end{matrix} ; δ ; − ; − ; →!A⊗!!C

The proof of completeness is by the usual categorical term model construction and is omitted. □

8.5 Generalizing the Girard translation

Now we try to make clear the force of our definition in terms of a discussion of (the background to) Girard’s translation of intuitionistic propositional logic into linear logic. We start by recalling some folklore results about the Eilenberg-Moore category of coalgebras.

Theorem 8

1. If a symmetric monoidal category C is equipped with a monoidal comonad (!, ε, δ), then the tensor product of C induces a symmetric monoidal structure on the category of coalgebras C_{!}.

2. • If, furthermore, C is symmetric monoidal closed, then all free coalgebras are ‘exponentiable’ in C_{!} (in the sense appropriate to the monoidal structure); what is more any power of a free coalgebra is a free coalgebra. So the full subcategory of finite tensor products of free coalgebras forms a symmetric monoidal closed category containing the category of free coalgebras.

• If, in addition, the (Kleisli) category of free coalgebras is closed under the tensor product in C_{!}, then the category of free coalgebras is symmetric monoidal closed.

3. If on the other hand C is symmetric monoidal closed and C_{!} has equalizers of coreflexive pairs of arrows then C_{!} is symmetric monoidal closed.

We make clear what is the force of our stipulation in Definition 1 part 2(b) that every (free) !-coalgebra carries naturally the structure of a commutative comonoid in such a way that coalgebra maps are comonoid maps.

Theorem 9

1. If a symmetric monoidal category C is equipped with a comonad (!, ε, δ) satisfying part 2(b) of Definition 1, then the tensor product induced on the category C_{!} of coalgebras is a categorical product.

2. If, furthermore, C is symmetric monoidal closed, then all free coalgebras are exponentiable in C_{!} (in the standard sense); and so the full subcategory of exponentiable objects forms a cartesian closed category (containing the category of free coalgebras).

3. If, in addition, the (Kleisli) category of free coalgebras is closed under the product in C_{!}, then the category of free coalgebras is cartesian closed. In particular this follows when C has finite products (1, &) and we have the natural isomorphisms

\begin{aligned}I & ≅ & !I \\ !A⊗!B & ≅ & !(A&B) \end{aligned}

4. If, on the other hand, C_{!} has equalizers of coreflexive pairs of arrows then C_{!} is cartesian closed.

This theorem, which in essence goes back to Fox [8], is the basis for the Girard translation of intuitionistic logic into Intuitionistic Linear Logic. In the usual formulation this translation is based on 3, that is on the natural isomorphisms introduced by Seely [27], and so essentially takes place in the category of free coalgebras. (This option is still available in cases where the relevent natural isomorphisms do not hold.) However, the general theorem demonstrates that at the proof theoretic (computational) level a more subtle analysis (which involves the full category of coalgebras) is possible.

9 Cut Elimination for Sequent Calculus

In this section we consider cut elimination for the sequent calculus formulation of Intuitionistic Linear Logic. Suppose that a derivation in the term assignment system of Figure 2 contains a cut:

\overline{D_{1}} ; Γ ⊢ e : A  \overline{D_{2}} ; Δ, x : A ⊢ f : B
\overline{Cut}
Γ, Δ ⊢ f[e/x] : B

If Γ ⊢ e : A is the direct result of a rule D_{1} and Δ, x : A ⊢ f : B the result of a rule D_{2}, we say that the cut is a (D_{1}, D_{2})-cut. A step in the process of eliminating cuts in the derivation tree will replace the subtree with root Γ, Δ ⊢ f[e/x] : B with a tree with root of the form

Γ, Δ ⊢ t : B

The terms in the remainder of the tree may be affected as a result.

Thus to ensure that the cut elimination process extends to derivations in the term assignment system, we must insist on an equality f[e/x] = t, which we can read from left to right as a term reduction. In fact we must insist on arbitrary substitution instances of the equality, as the formulae in Γ and Δ may be subject to cuts in the derivation tree below the cut in question. In the presence of the rules of Figure 9 of Section 7, this suffices to ensure that corresponding terms in the trees before and after the cut is eliminated are equal.

In this section we are mainly concerned to describe the equalities/reductions which result from the considerations just described. Note however that we cannot be entirely blithe about the process of eliminating cuts at the level of the propositional logic. As we shall see, not every apparent possibility for eliminating cuts should be realized in practice. This is already implicit in our discussion of natural deduction, and of the categorical semantics.

As things stand there are 11 rules of the sequent calculus aside from Cut (and Exchange) and hence 121 a priori possibilities for (D_{1}, D_{2})-cuts. Fortunately most of these possibilities are not computationally meaningful in the sense that they have no effect on the terms. We say that a cut is insignificant if the equality f[e/x] = t we derive from it as above is actually an identity (up to α-equivalence) on terms (so in executing the cut the term at the root of the tree does not change). Let us begin by considering the insignificant cuts.

First note that any cut involving an axiom rule

\overline{Identity} ; x : A ⊢ x : A

is insignificant; and the cut just disappears (hence instead of 121 we must now account for 100 cases). These 100 cases of cuts we will consider as follows: 40 cases of cuts the form (R, D) as we have 4 right rules and 10 others; 24 cases of cuts of the form (L, R) as we have 6 left-rules and 4 right ones and finally 36 cases of cuts of the form (L, L). Let us consider these three groups in turn.

Firstly we observe that there is a large class of insignificant cuts of the form (R, D) where R is a right rule: (⊗_{R}), (I_{R}), (−∘_{R}), Promotion. Indeed all such cuts are insignificant with the following exceptions:

• Principal cuts. These are the cuts of the form ((⊗_{R}), (⊗_{L})), ((I_{R}), (I_{L})), ((−∘_{R}), (−∘_{L})), (Promotion, Dereliction), (Promotion,Weakening), (Promotion, Contraction) where the cut formula is introduced on the right and left of the two rules.

• Cases of the form (R, Promotion) where R is a right rule. Here we note that cuts of the form ((⊗_{R})), Promotion), ((I_{R})), Promotion) and ((−∘_{R}), Promotion) cannot occur; so the only possibility is (Promotion, Promotion).

Next any cut of the form (L, R) where L is one of the left rules (⊗_{L}), (I_{L}), (−∘_{L}), Weakening, Contraction, Dereliction and R is one of the simple right rules (⊗_{R}), (I_{R}), (−∘_{R}) is insignificant (18 cases). Also cuts of the form ((−∘_{L}), Promotion) and (Dereliction, Promotion) are insignificant(2 cases). This is one of the things we gain by having actual substitutions in the (−∘_{L}) and Dereliction rules. Thus there remains four further cases of cuts of the form (L, Promotion) where L is a left rule.

Lastly the 36 cuts of the form (L_{1}, L_{2}), where the L_{i} are both left rules. Again we derive some benefit from our rules for (−∘_{L}) and Dereliction: cuts of the form ((−∘_{L}), L) and (Dereliction, L) are insignificant. There are hence 24 remaining cuts of interest.

We now summarize the cuts of which we need to take some note. They are:

• Principal cuts. There are six of these.

• Secondary Cuts. The single (strange) form of cut: (Promotion, Promotion) and the four remaining cuts of form (L, Promotion) where L is a left rule other than (−∘_{L}) or (Dereliction).

• Commutative Cuts. The twenty-four remaining cuts of the form (L_{1}, L_{2}) just described.

We consider the equalities that result from these in turn and comment on their categorical significance and their relation with natural deduction.

9.1 Principal Cuts

We start by looking at the cases of cut involving tensor, the constant I and linear implication, as they are standard.

• ((⊗_{R}), (⊗_{L}))-cut

Γ_{1} ⊢ A Γ_{2} ⊢ B ; (⊗_{R}) ; Γ_{1}, Γ_{2} ⊢ A ⊗ B  A, B, Δ ⊢ C ; (⊗_{L}) ; A ⊗ B, Δ ⊢ C

\overline{Cut}

Γ_{1}, Γ_{2}, Δ ⊢ C

This derivation reduces to either

Γ_{1} ⊢ A  Γ_{2} ⊢ B  A, B, Δ ⊢ C ; \overline{Cut} ; Γ_{2}, A, Δ ⊢ C

\overline{Cut}

Γ_{1}, Γ_{2}, Δ ⊢ C

or to the symmetric one where we cut against A first. We might like to have a ‘simultaneous’ cut rule, which would allows us to reduce the derivation above to

Γ_{1} ⊢ A Γ_{2} ⊢ B A, B, Δ ⊢ C
\overline{Cut*}
Γ_{1}, Γ_{2}, Δ ⊢ C

As far as terms are concerned these reductions give us the following β-rule for tensor:

let f ⊗ g be x ⊗ y in h > h[f/x, g/y]  (22)

• ((I_{R}), (I_{L}))-cut

\begin{aligned}& (I_{R}) \\ ⊢ I \end{aligned}  Δ ⊢ C ; (I_{L}) ; I, Δ ⊢ C

\overline{Cut}

Δ ⊢ C

This derivation reduces to

Δ ⊢ C

As far as terms are concerned this reduction gives us the following β-rule for I:

let ∗ be ∗ in h > h  (23)

• ((−∘_{R}),(−∘_{L}))-cut.

Γ, A ⊢ B ; (−∘_{R}) ; Γ ⊢ A−∘B  Δ_{1} ⊢ A  Δ_{2}, B ⊢ C ; (−∘_{L}) ; A−∘B, Δ_{1}, Δ_{2} ⊢ C

\overline{Cut}

Γ, Δ_{1}, Δ_{2} ⊢ C

This derivation reduces to either

Δ_{1} ⊢ A  Γ, A ⊢ B  Δ_{2}, B ⊢ C ; \overline{Cut} ; Γ, A, Δ_{2} ⊢ C

\overline{Cut}

Δ_{1}, Γ, Δ_{2} ⊢ C

or to the symmetric one where we cut A first. Again we might like to have a ‘simultaneous’ cut rule, which would allows us to reduce the derivation above to

Γ, A ⊢ B Δ_{1} ⊢ A B, Δ_{2} ⊢ C
\overline{Cut*}
Γ, Δ_{1}, Δ_{2} ⊢ C

As far as terms are concerned this reduction gives us the β-rule:

h[(λx.f)g/y] > h[f[g/x]/y]  (24)

Now we turn to the principal cuts involving Promotion.

• (Promotion, Dereliction)-cut. The derivation

!Γ ⊢ B ; \overline{Promotion} ; !Γ ⊢!B  B, Δ ⊢ C ; \overline{Dereliction} ; !B, Δ ⊢ C

\overline{Cut}

!Γ, Δ ⊢ C

In this case we can eliminate the use of both rules and replace them with a single (simpler) cut.

!Γ ⊢ B B, Δ ⊢ C

\overline{Cut}

!Γ, Δ ⊢ C

This reduction yields the following term reduction.

(f[derelict(q)/p])[promote y_{i} for x_{i} in e/q] > f[e/p]  (25)

• (Promotion, Weakening)-cut. The derivation

!Γ ⊢ B ; \overline{Promotion} ; !Γ ⊢!B  Δ ⊢ C ; \overline{Weakening} ; !B, Δ ⊢ C

\overline{Cut}

!Γ, Δ ⊢ C

is reduced to

Δ ⊢ C ; \overline{Weakening*} ; !Γ, Δ ⊢ C

where Weakening* corresponds to many applications of the Weakening rule. This gives the term reduction

discard (promote e_{i} for x_{i} in f) in g > discard e_{i} in g  (26)

• (Promotion, Contraction)-cut. The derivation

!Γ ⊢ B ; \overline{Promotion} ; !Γ ⊢!B  !B,!B, Δ ⊢ C ; \overline{Contraction} ; !B, Δ ⊢ C

\overline{Cut}

!Γ, Δ ⊢ C

is reduced to

!Γ ⊢ B \overline{Promotion} !Γ ⊢!B

!Γ ⊢ B ; \overline{Promotion} ; !Γ ⊢!B !B,!B, Δ ⊢ C

\overline{Cut}

!Γ,!B, Δ ⊢ C

\overline{Cut}

!Γ,!Γ, Δ ⊢ C

Contraction*

!Γ, Δ ⊢ C

or to the symmetric one where we cut against the other B first. Again we would like to have a ‘simultaneous’ cut rule, which would allows us to reduce the derivation above to

!Γ ⊢ B ; \overline{Promotion} ; !Γ ⊢!B  !Γ ⊢ B ; \overline{Promotion} ; !Γ ⊢!B  !B,!B, Δ ⊢ C
\overline{Cut*}
!Γ,!Γ, Δ ⊢ C

Contraction*

!Γ, Δ ⊢ C

This gives the term reduction

copy (promote e_{i} for x_{i} in f) as y, y′ in g >
copy e_{i} as z_{i}, z′_{i} in g[promote z_{i} for x_{i} in f/y, promote z′_{i} for x_{i} in f/y′]  (27)

Note that the three cases of cut elimination above involving Promotion are only considered by Girard, Scedrov and Scott [14] when the context (!Γ) is empty. If the context is nonempty these are called irreducible cuts.

The principal cuts correspond to the β-reductions in natural deduction. Hence the reductions that we have just given are almost the same as those given in Figure 8. The differences arise because in the sequent calculus some ‘reductions in context’ (handled in natural deduction by the reduction inference rules) are effected directly by the process of moving cuts upwards. Hence some of the rules just given appear more general.

9.2 Secondary Cuts

We now consider the cases where the Promotion rule is on the right of a cut rule. The first case is the strange case of cutting Promotion against Promotion, then we have the four cases (⊗_{L}), (I_{L}), Weakening and Contraction against the rule Promotion.

• (Promotion, Promotion)-cut. The derivation

!Γ ⊢ B ; \overline{Promotion} ; !Γ ⊢!B  !B,!Δ ⊢ C ; \overline{Promotion} ; !B,!Δ ⊢!C

\overline{Cut}

!Γ,!Δ ⊢!C

reduces to

!Γ ⊢ B ; \overline{Promotion} ; !Γ ⊢!B !B,!Δ ⊢ C

\overline{Cut}

!Γ,!Δ ⊢ C

\overline{Promotion}

!Γ,!Δ ⊢!C

Note that it is always possible to permute the cut upwards, as all the formulae in the antecedent are modal.

This gives the term reduction

promote (promote z for x in f) for y in g >
promote w for z in (g[promote z for x in f/y])  (28)

• ((⊗_{L}), Promotion)-cut. The derivation

A, E, Γ ⊢!B ; (⊗_{L}) ; A⊗E, Γ ⊢!B  !Δ,!B ⊢ C ; \overline{Promotion} ; !B,!Δ ⊢!C

\overline{Cut}

A⊗E, Γ,!Δ ⊢!C

reduces to

A, E, Γ ⊢!B  !B,!Δ ⊢ C ; \overline{Promotion} ; !B,!Δ ⊢!C

\overline{Cut}

A, E, Γ,!Δ ⊢!C

(⊗_{L})
A⊗E, Γ,!Δ ⊢!C

This gives the term reduction

promote (let z be x, y in f) for w in g > let z be x, y in (promote f for w in g)  (29)

• ((I_{L}), Promotion)-cut. The derivation

Γ ⊢!B ; (I_{L}) ; I, Γ ⊢!B  !Δ,!B ⊢ C ; \overline{Promotion} ; !B,!Δ ⊢!C

\overline{Cut}

I, Γ,!Δ ⊢!C

reduces to

Γ ⊢!B  !B,!Δ ⊢ C ; \overline{Promotion} ; !B,!Δ ⊢!C

\overline{Cut}

Γ,!Δ ⊢!C

(I_{L})
I, Γ,!Δ ⊢!C

This gives the term reduction

promote (let z be ∗ in f) for w in g > let z be ∗ in (promote f for w in g)  (30)

• (Weakening, Promotion)-cut. The derivation

Γ ⊢!B ; \overline{Weakening} ; !A, Γ ⊢!B  !Δ,!B ⊢ C ; \overline{Promotion} ; !B,!Δ ⊢!C

\overline{Cut}

!A, Γ,!Δ ⊢!C

reduces to

Γ ⊢!B  !B,!Δ ⊢ C ; \overline{Promotion} ; !B,!Δ ⊢!C

\overline{Cut}

Γ,!Δ ⊢!C

\overline{Weakening}

!A, Γ,!Δ ⊢!C

This gives the term reduction

promote (discard x in f) for y in g > discard x in (promote f for y in g)  (31)

• (Contraction, Promotion)-cut. The derivation

!A,!A, Γ ⊢!B ; \overline{Contraction} ; !A, Γ ⊢!B  !Δ,!B ⊢ C ; \overline{Promotion} ; !B,!Δ ⊢!C

\overline{Cut}

!A, Γ,!Δ ⊢!C

reduces to

!A,!A, Γ ⊢!B  !B,!Δ ⊢ C ; \overline{Promotion} ; !B,!Δ ⊢!C

\overline{Cut}

!A,!A, Γ,!Δ ⊢!C

\overline{Contraction}

!A, Γ,!Δ ⊢!C This gives the term reduction

promote (discard x in f) for y in g > discard x in (promote f for y in g)  (32)

One is tempted to suggest that perhaps the reason why the rule Promotion gives us reductions with some sort of computational meaning is because this rule is not clearly either a left or a right rule. It introduces the connective on the right (so it is mainly a right rule), but it imposes conditions on the context on the left. Indeed there does not appear to be any analogous reductions in natural deduction. We repeat the term reductions given by the secondary cuts in Figure 12. For the (less categorically-inclined) reader we observe that the last four equations are particular instances of the naturality equations described in Section 3, while the first encapsulates the naturality of the Kleisli operation of Promotion as discussed in Section 8.

promote (promote z for x in f) for y in g > promote w for z in (g[promote z for x in f/y])

promote (discard x in f) for y in g > discard x in (promote f for y in g)

promote (copy x as y, z in f) for y in g > copy x as y, z in (promote f for y in g)

promote (let z be x⊗y in f) for w in g > let z be x⊗y in (promote f for w in g)

promote (let z be ∗ in f) for w in g > let z be ∗ in (promote f for w in g)

Figure 12: Secondary reduction rules

9.3 Commutative cuts

Next we consider briefly the 24 significant cuts of the form (L_{1}, L_{2}) where the L_{i} are both left rules. These correspond case by case to the commutative conversions for natural deduction considered in Section 7.2. For the most part the reduction rules we obtain from cut elimination are identical with those in Figure 10. The exceptions are the cases where (−∘_{L}) is the (second) rule above the cut. In these cases we obtain in place of the first rules in the four groups of six in Figure 10, the following stronger rules:

v[(let z be x⊗y in t)u/w] → let z be x⊗y in v[tu/w]
v[(let z be ∗ in t)u/w] → let z be ∗ in v[tu/w]
v[(discard z in t)u/w] → discard z in v[tu/z]
v[(copy z as x, y in t)u/w] → copy z as x, y in v[tu/w]

9.4 An ‘insignificant’ cut

Let us consider the case of a (Dereliction, Promotion)-cut. The derivation

A, Γ ⊢!B ; \overline{Dereliction} ; !A, Γ ⊢!B  !Δ,!B ⊢ C ; \overline{Promotion} ; !B,!Δ ⊢!C

\overline{Cut}

!A, Γ,!Δ ⊢!C

can be reduced to

A, Γ ⊢!B  !B,!Δ ⊢ C ; \overline{Promotion} ; !B,!Δ ⊢!C

\overline{Cut}

A, Γ,!Δ ⊢!C

\overline{Dereliction}

!A, Γ,!Δ ⊢!C

In our simplified version of term assignment this transformation on the level of terms gives the following term transformation.

(promote q for p in f)[(e[derelict(z)/x])/q] > (promote q for p in f)[e/q][derelict(z)/x]

But both these terms are equivalent to promote e[derelict(z)/x] for p in f, so the transformation is actually an identity (and the cut is insignificant). However, if we had used the syntax for Dereliction discussed earlier, namely:

x : A, Γ ⊢ e : B

\overline{Dereliction}

z :!A, Γ ⊢ let z be !x in e : B

the transformation on proofs given above would give the term reduction

promote (let z be !x in f) for y in g > let z be !x in (promote f for y in g)

which would appear to be a secondary cut.

Let us consider (categorically) this reduction where the contexts contain exactly one formula. The derivation

A ⊢!B ; \overline{Dereliction} ; !A ⊢!B  !B ⊢ C ; \overline{Promotion} ; !B ⊢!C

\overline{Cut}

!A ⊢ C

reduces to

A ⊢!B {!B ⊢ C \atop !B ⊢!C}

\overline{Cut}

A ⊢!C

\overline{Dereliction}

!A ⊢!C

There is nothing to prove categorically as the map in the first derivation (ε; f); δ; !g is the same as the map in the second derivation ε; (f; δ; !g).

This case is important because given the derivation

!A ⊢!A ; \overline{Dereliction} ; !!A ⊢!A  !A ⊢!A ; \overline{Promotion} ; !A ⊢!!A

\overline{Cut}

!!A ⊢!!A one could be misled into thinking that there were two ways of eliminating the cut, either pushing it upwards to do Promotion first or to do Dereliction first. But clearly only the latter works in general and is a correct cut-elimination.

This example shows the problem with the term assignment which does not change the free variable in the Promotion rule, hinted at by Wadler [29]. Given that term assignment the derivation above and the derivation (given by the incorrect cut-elimination)

!A ⊢!A ; \overline{Dereliction} ; !!A ⊢!A

\overline{Promotion}

!!A ⊢!!A

which are unrelated (and distinct maps from the categorical viewpoint), end up being encoded by the same term

!(let w be !x in x)

a situation which is clearly unacceptable.

9.5 Permutative conversions

As is well known, a sequent calculus formulation of logic makes it very clear that the order of application of certain pairs of rules in a proof is irrelevant. (The same phenomenon can be considered in the context of natural deduction.) Permuting pairs of rules of this kind gives rise to permutative conversions in sequent calculus derivations: these conversions play an important role in approaches to proof search [30] (On the other hand, proof nets [10] provide a notation for proofs in which the order of application of such rules has been factored out.) Here we simply note that permutative conversions give rise to yet further equalities between the terms of our term assignment system.

9.6 Summary

In this section we reviewed the process of cut elimination in the sequent calculus, classifying cuts as principal cuts, secondary cuts and insignificant cuts, according to the way they affected the term assignment system as well as their categorical significance.

Summing up the results we can state the following:

Theorem 10 The equations which appear in the process of cut elimination in the sequent calculus formulation of Intuitionistic Linear Logic are satisfied in any categorical model of Intuitionistic Linear Logic, as described in Section 8.

Corollary 1 The equations derived from this process are all consequences of the categorical equations of Figure 11 of Section 8.

10 Future Work

We can identify a number of areas which need to be covered in the future.

• Clearly we need to consider the additive connectives. We should also like to consider quantifiers within this framework.

• The links between the process of cut elimination and proof normalisation still appear to require further study. Certainly the work of Zucker [31] and Pottinger [24] need to be considered in this new linear framework.

• Many variants of Intuitionistic Linear Logic have been proposed [18, 3, 17, 14]. Clearly these need to be considered in the light of this work. Details of term calculi and various resource logics will be discussed in [4].

• It has been postulated that computation of Intuitionistic Linear Logic terms should give insight into possible optimisations of lambda calculus. This looks promising. Indeed, we have seen that certain naturality equalities appear to have computational significance. Again, further details will appear in [4].

Acknowledgements

We should like to thank Andy Pitts for detailed comments on this work. This paper was prepared using Paul Taylor’s TEX macros.

References

[1] Samson Abramsky. Computational interpretations of linear logic. Technical Report 90/20, Department of Computing, Imperial College, London, October 1990.

[2] Arnon Avron. Axiomatic systems, deduction and implication. Technical Report 203/91, Institute of Computer Sciences, Tel Aviv University, March 1991.

[3] Gavin M. Bierman. Type systems, linearity and functional languages. In Proceedings of CLICS Workshop, pages 71–92, March 1992. Available as Aarhus University Technical Report DAIMI PB 397-I.

[4] Gavin M. Bierman. Resource Logics and Functional Programming. PhD thesis, Computer Laboratory, University of Cambridge, 1993. To Appear.

[5] Valeria de Paiva. The dialetica categories. In Conference on Categories in Computer Science and Logic, volume 92 of AMS Contemporary Mathematics, pages 47–62, June 1989.

[6] Valeria C.V. de Paiva. The Dialetica Categories. PhD thesis, Department of Pure Mathematics and Mathematical Statistics, University of Cambridge, 1988. Published as Computer Laboratory Technical Report 213, 1990.

[7] S. Eilenberg and G.M. Kelly. Closed categories. In Proceedings of Conference on Categorical Algebra, La Jolla, 1966.

[8] T. Fox. Coalgebras and cartesian categories. Communications in Algebra, 7(4):665– 667, 1976.

[9] Dov Gabbay. Semantical Investigations in Heyting’s Intuitionistic Logic. Reidel, 1981.

[10] Jean-Yves Girard. Linear logic. Theoretical Computer Science, 50:1–101, 1987.

[11] Jean-Yves Girard and Yves Lafont. Linear logic and lazy computation. Technical Report 588, INRIA, December 1986.

[12] Jean-Yves Girard, Yves Lafont, and Paul Taylor. Proofs and Types, volume 7 of Cambridge Tracts in Theoretical Computer Science. Cambridge University Press, 1989.

[13] Jean-Yves Girard, Andre Scedrov, and Philip Scott. Bounded linear logic. Technical report, Department of Computer and Information Science, School of Engineering and Applied Science, University of Pennsylvania, 1992.

[14] Jean-Yves Girard, Andre Scedrov, and Philip J. Scott. Bounded linear logic (a modular approach to polynomial time computability). In Mathematical Sciences Institute Workshop on Feasible Mathematics, pages 195–209, June 1989.

[15] W.A. Howard. The formulae-as-types notion of construction. In J.R. Hindley and J.P. Seldin, editors, To H.B. Curry: Essays on combinatory logic, lambda calculus and formalism. Academic Press, 1980.

[16] G. Hughes and M. Cresswell. A companion to Modal Logic. Methuen, 1984.

[17] Martin Hyland and Valeria de Paiva. Full intuitionistic linear logic. In Proceedings of CLICS Workshop, pages 547–570, March 1992. Available as Aarhus University Technical Report DAIMI PB 397-II.

[18] Bart Jacobs. Semantics of weakening and contraction. Department of Pure Mathematics and Mathematical Statistics, University of Cambridge, May 1992.

[19] J.Lambek and P.J.Scott. Introduction to higher order categorical logic, volume 7 of Cambridge studies in advanced mathematics. Cambridge University Press, 1987.

[20] G.M. Kelly. Basic Concepts of Enriched Category Theory, volume 64 of LMS Lecture Notes. 1982.

[21] Patrick Lincoln and John Mitchell. Operational aspects of linear lambda calculus. Draft paper—to appear in LICS’92, 1992.

[22] Ian Mackie. Lilac: A functional programming language based on linear logic. Master’s thesis, Department of Computing, Imperial College, London, September 1991.

[23] P.W. O’Hearn. Linear logic and interference control (preliminary report). In Proceedings of Conference on Category Theory and Computer Science, volume 530 of Lecture Notes in Computer Science, pages 74–93, September 1991.

[24] Garrel Pottinger. Normalization as a homomorphic image of cut-elimination. Annals of Mathematical Logic, 12:323–357, 1977.

[25] Dag Prawitz. Natural Deduction, volume 3 of Stockholm Studies in Philosophy. Almqvist and Wiksell, 1965.

[26] Peter Schroeder-Heister. A natural extension of natural deduction. The Journal of Symbolic Logic, 49(4):1284–1300, December 1984.

[27] R.A.G. Seely. Linear logic, *-autonomous categories and cofree algebras. In Conference on Categories in Computer Science and Logic, volume 92 of AMS Contemporary Mathematics, pages 371–382, June 1989.

[28] M.E. Szabo, editor. The Collected Papers of Gerhard Gentzen. North-Holland, 1969.

[29] Philip Wadler. There’s no substitute for linear logic. Draft Paper, December 1991.

[30] Lincoln Wallen. Automated Proof Search in non-classical logics: efficient matrix proof methods for modal and intuitionistic logics. MIT Press, 1990.

[31] J. Zucker. The correspondence between cut-elimination and normalization. Annals of Mathematical Logic, 7(1):1–112, 1974.

A Appendix

For the reader unfamiliar with the notions of monoidal functor and monoidal natural transformation, we briefly indicate their significance. If C is a symmetric monoidal category and (!, δ, ε) a comonad in C, that the functor part of the comonad ! is a monoidal functor means that we have a (canonical) natural transformation

m_{A,B}: !A⊗!B →!(A ⊗ B)

for any A and B in C, and a morphism

m_{I}: I →!I

(the morphism is the natural transformation in its nullary form) satisfying the following collection of commutative diagrams:

!I⊗!A −m_{I,A} ; \begin{matrix}− \\ − \\ − \\ − \\ − \\ − \end{matrix}⟶!(I ⊗ A)
m_{I} ⊗ id ↑ ; | ; | ; |  | ; | ; | ; ↓!l
I⊗!A − ; − ; − ; − ; \begin{matrix}− \\ − \\ − \\ − \end{matrix} ; l ; − ; − ; − ; → !A

where l is the natural isomorphim I⊗A →^{l} A. Similarly for the natural isomoprhism r given by A⊗I →^{r} A the diagram

!A⊗!I −m_{A,I} ; \begin{matrix}− \\ − \\ − \\ − \\ − \\ − \end{matrix}⟶!(A⊗I)
id⊗m_{I} ↑ ; | ; | ; |  | ; | ; | ; ↓!r
!A⊗I − ; − ; − ; − ; \begin{matrix}− \\ − \\ − \\ − \end{matrix} ; r ; − ; − ; − ; → !A

commutes and for a the associativity isomorphism (A⊗B)⊗C →^{α} A⊗(B ⊗C) the diagram

(!A⊗!B)⊗!C −m⊗id ; \begin{matrix}− \\ − \\ − \\ − \\ − \\ − \end{matrix}⟶!(A ⊗ B)⊗!C −m ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶!((A ⊗ B) ⊗ C)
α | ; | ; | ; ↓  | ; | ; | ; ↓!α
!A ⊗ (!B⊗!C) − ; − ; − ; \begin{matrix}− \\ − \\ − \\ − \\ − \\ − \end{matrix} ; id⊗m ; − ; − ; →!A⊗!(B ⊗ C) − ; − ; − ; \begin{matrix}− \\ − \\ − \\ − \end{matrix} ; m ; − ; − ; →!(A ⊗ (B ⊗ C))

commutes. Also, since m is a natural transformation (between the functors ! and !⊗!), for any pairs of maps A →^{f} C and B →^{g} D the following squares commute:

!A⊗!B −m_{A,B} ; \begin{matrix}− \\ − \\ − \\ − \\ − \\ − \end{matrix}⟶ !(A ⊗ B)
!f⊗!g | ; | ; | ; ↓  | ; | ; | ; ↓!(f ⊗ g)
!C⊗!D − ; − ; − ; \begin{matrix}− \\ − \\ − \\ − \\ − \\ − \end{matrix} ; m_{C,D} ; − ; − ; →!(C ⊗ D)

That ε and δ are monoidal natural transformations, involves a further collection of commuting diagrams. For the natural transformation ε we have that the following extra diagrams

!A⊗!B −m ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶!(A ⊗ B)  I −m_{I} ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶!I
ε_{A} ⊗ ε_{B} | ; | ; | ; ↓  | ; | ; | ; ↓ ε_{A⊗B}  ∥  | ; | ; | ; ↓ ε_{I}
A ⊗ B = = = = = = = = = = A ⊗ B  I = = = = = = = = = = I

commute.

For the natural transformation δ we have that the following extra diagrams

!A⊗!B −m ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ !(A ⊗ B)  I −m_{I} ; \begin{matrix}− \\ − \\ − \\ − \end{matrix}⟶ !I
δ_{A} ⊗ δ_{B} | ; | ; | ; ↓  | ; | ; | ; ↓ δ_{A⊗B}  m_{I} | ; | ; | ; ↓  | ; | ; | ; ↓ δ_{I}
!!A⊗!!B − ; − ; − ; \begin{matrix}− \\ − \\ − \\ − \end{matrix} ; m ; − ; − ; →!(!A⊗!B) − ; − ; − ; \begin{matrix}− \\ − \\ − \\ − \end{matrix} ; !m ; − ; − ; → !!(A⊗B)  !I − ; − ; − ; \begin{matrix}− \\ − \\ − \\ − \end{matrix} ; !m_{I} ; − ; − ; →!!I