BRICS RS-96-10 Bra� uner & de Paiva: Cut-Elimination for Full Intuitionistic Linear Logic

BRICS

Basic Research in Computer Science

Cut-Elimination for Full Intuitionistic Linear Logic

Torben Bra� uner Valeria de Paiva

BRICS Report Series RS-96-10 ISSN 0909-0878 April 1996 Copyright \begin{matrix}c \\ ◯ \end{matrix} 1996, BRICS, Department of Computer Science

University of Aarhus. All rights reserved.

Reproduction of all or part of this work is permitted for educational or research use on condition that this copyright notice is included in any copy.

See back inner page for a list of recent publications in the BRICS Report Series. Copies may be obtained by contacting:

BRICS Department of Computer Science University of Aarhus Ny Munkegade, building 540 DK - 8000 Aarhus C Denmark

Telephone: +45 8942 3360
Telefax: +45 8942 3255
Internet: BRICS@brics.dk

BRICS publications are in general accessible through WWW and anonymous FTP:

http://www.brics.dk/
ftp ftp.brics.dk (cd pub/BRICS)

Cut-Elimination for Full Intuitionistic Linear Logic

Torben Braüner

BRICS^{∗}

Department of Computer Science

University of Aarhus

Ny Munkegade

DK-8000 Aarhus C, Denmark

E-Mail: tor@daimi.aau.dk

Valeria de Paiva

Computer Laboratory^{†}

University of Cambridge

New Museums Site

Pembroke Street

Cambridge CB2 3QG, England

E-Mail: Valeria.Paiva@cl.cam.ac.uk

Abstract

We describe in full detail a solution to the problem of proving the cut elimination theorem for FILL, a variant of (multiplicative and exponential-free) Linear Logic introduced by Hyland and de Paiva. Hyland and de Paiva’s work used a term assignment system to describe FILL and barely sketched the proof of cut elimination. In this paper, as well as correcting a small mistake in their paper and extending the system to deal with exponentials, we introduce a different formal system describing the intuitionistic character of FILL and we provide a full proof of the cut elimination theorem. The formal system is based on a notion of dependency between formulae within a given proof and seems of independent interest. The procedure for cut elimination applies to (classical) multiplicative Linear Logic, and we can (with care) restrict our attention to the subsystem FILL. The proof, as usual with cut elimination proofs, is a little involved and we have not seen it published anywhere.

∗Basic Research in Computer Science, Centre of the Danish National Research Foundation.

†Now at School of Computer Science, University of Birmingham, Edgbaston, Birmingham B15 2TT.

Contents

1 Introduction 3 2 Full Intuitionistic Linear Logic 3 3 Cut Elimination 10

3.1 Some Preliminary Results . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 3.2 The Key-Cases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 3.3 The Pseudo Key-Cases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 3.4 Putting the Proof Together . . . . . . . . . . . . . . . . . . . . . . . . . . 19

4 Conclusions 22 A Appendix, CLL Proof-Rules 24 B Appendix, the Key-Cases 25 C Appendix, the Pseudo Key-Cases 27

1 Introduction

The goal of this note is to describe – with all the details – an alternative solution to the problem of proving the cut elimination theorem for Full Intuitionistic Linear Logic (FILL). The formal system devised to carry out the proof also seems of independent interest and we mention some of its possible applications at the end of the note.

The system FILL is a variant of (multiplicative) Linear Logic proposed by M. Hyland and V. de Paiva [HdP93] whose logical connectives are all independent, that is, they are not interderivable, as they are in (multiplicative) Classical Linear Logic (CLL). This is analogous to the situation concerning the relationship between Intuitionistic Logic (IL) and Classical Logic (CL). In CL all the connectives can be expressed in terms of implication and negation, whereas in IL, conjunction, disjunction and implication are all independent connectives. Only negation is defined in terms of implication and the constant for falsum ⊥. In FILL the linear negation A^{⊥} is defined as A ⊸⊥ and it is not an involution, thus A ⊢ A^{⊥⊥} but not vice-versa, as is the case in CLL. It is worth noticing that in categorical models of both FILL and CLL there is a canonical map A → A^{⊥⊥}, given by transposing the evaluation map A ⊗ A^{⊥} →⊥, but the inverse map A^{⊥⊥} → A is much more mysterious in CLL and it does not exist in FILL. Hyland and de Paiva only deal with the multiplicative fragment of FILL, here we discuss multiplicatives and exponentials, but we call this slightly extended system FILL as well.

The work on this note was motivated by Girard’s recent work on Light Linear Logic,

[Gir94] and we hope to pursue this line of enquiry on future work. For the time being we simply note that we could add (naive) set comprehension (with suitable introduction and elimination rules) to our basic multiplicative system and this would preserve the cut elimination result. cut elimination is not preserved when the exponentials interact with set comprehension; this situation is investigated in [Shi94].

This note is structured as follows. First we recall FILL and discuss a few examples. In the next section we attack the problem of eliminating cuts in FILL: for that we need some preliminary results, we discuss the key cases and then we put the proof together. We conclude describing some possible applications.

2 Full Intuitionistic Linear Logic

We define FILL as a subsystem of CLL, as formulae in FILL are the same as the formulae in CLL, and a proof in FILL is a proof in CLL with a certain intuitionistic property.

Definition 2.1 Formulae of CLL are defined by the grammar

S ::= S ⊗ S | I | S□S | ⊥ | S ⊸ S | !S | ?S

Note that we are using □ for Girard’s “par”, the reason being that this version of par proves only the intuitionistic versions of the CLL tautologies, e.g A^{⊥}□B ⊢ A ⊸ B but not vice-versa.

Definition 2.2 The inference rules for CLL are given in Appendix A.

The metavariables A, B, C range over formulae and Γ, Δ range over lists of formulae. The metavariables π, τ will range over derivations as well as proofs. We pay no attention to the exchange rules from now on. Note that, unlike most presentations of CLL, we use two-sided sequents, as they allow us to draw the finer distinctions that we need.

To define FILL we need a notion of dependency, relating formulae occurrences. An occurrence of a formula will refer to an occurrence of a formula in a given proof or derivation. An (small) abuse of notation means that we let A, B, C range over formulae as well as occurrences of formulae. Also we let Γ, Δ range over lists of formulae as well as sets of occurrences of formulae. Note that a set of occurrences of formulae might contain more then one occurrence of the same formula. Basically we must define, given a proof of a sequent Γ, B ⊢ A, Δ, in CLL when the succedent formula occurrence A depends on the antecedent formula occurrence B. This notion of dependency between formulae occurrences in the sequent, when properly defined, allows us to express the intuitionistic property that characterizes FILL.

Now suppose given a proof τ with end-sequent Γ ⊢ Δ. We want to define, for each formula occurrence A in the consequent Δ, which formula occurrences in the antecedent Γ it (logically) depends on. These will form a set of formula occurences, denoted as Dep_{τ}(A), the dependencies of A in τ. Note that the elements of this set are formula occurrences and not just formulae occurring in the premise, hence this set might contain several occurrences of the same formula. For the definition of Dep_{τ}(A) we need one extra convention: If Γ, Δ and Δ′ are sets of formula occurences, then we define a new set of formula occurences Γ[Δ ↦ Δ′] as follows

Γ[Δ ↦ Δ′] = \{ \begin{matrix}(Γ − Δ) ∪ Δ′ & if Γ ∩ Δ ≠ ∅ \\ Γ & otherwise \end{matrix}

The reader should be aware that A, B, C range over formulae as well as occurrences of formulae; the actual interpretation is to be decided by the context. A similar remark applies to Γ, Δ. We use′ and′′ to distinguish between two occurences of the same formula. It should be obvious how to track dependencies through implicit applications of exchange rules.

Intuitively we can say that “genuine” dependencies start in axioms, constants do not introduce dependencies and dependencies “percolate” through a proof as expected. With these intuitions in mind, the reader is invited to check the rules in the following definition.

Definition 2.3 Let τ be a proof in CLL whose end-sequent is Γ ⊢ Δ and where A is a formula occurence in Δ. The immediate subproofs of τ are denoted by τ_{i}. We define the set Dep_{τ}(A) (the formulae occurrences of Γ that A depends on, in the proof τ) by induction on τ. The definition is by cases in accordance with the tables in Figures 1 and 2.

If the derivation τ ends in the sequent Γ ⊢ Δ, and B and A are formula occurrences in Γ and Δ respectively, then we say that A depends on B in τ iff B ∈ Dep_{τ}(A). If τ and τ′ are two derivations ending in the sequent Γ ⊢ Δ in CLL, we say that the end-sequent of τ has the same dependencies as the end-sequent of τ′ iff we for any formula occurrence C in Γ and any formula occurrence A in Δ, we have that A depends on C in τ iff A depends on C in τ′. Similarly say that the end-sequent of τ has fewer dependencies than the end-sequent of τ′ iff we for any formula occurrence C in Γ and any formula occurrence A in Δ have that A depends on C in τ entails that A depends on C in τ′.

To help intutitions, we “walk” the reader through the case of the cut rule in the Dep definition:

Γ ⊢ B, Δ Γ′, B ⊢ Δ′
Cut
Γ′, Γ ⊢ Δ′, Δ

Since we are looking at dependencies for A’s in the consequent, either A is in Δ or it is in Δ′. If A is in Δ the cutting of B will have no effect whatsoever over it, hence this A depends on the formulae it depended before the cut, i.e. Dep_{τ_{1}}(A). If on the other hand A is in Δ′ two cases may occur: either this A does not depend on B, and then its dependency is unchanged, i.e. Dep_{τ_{2}}(A). Or, in the interesting case, the A depends on B. After the cut the A cannot depend on B anymore, since B was cut, but it should depend on everything B depends on, as well as on the things it already depended on, so we union the dependency sets. After this short digression we finally state our definition for the system FILL.

Definition 2.4 A proof in FILL is a proof in CLL where whenever the rule ⊸_{R} is applied to a proof τ of Γ, B ⊢ C, Δ to obtain Γ ⊢ B ⊸ C, Δ none of the formulae occurring in Δ depends on B in τ.

The condition on the implication right rule in the definition of dependency deserves careful discussion. The implication right rule in CLL (like the one in CL) allows any (linear) implications whatsoever. The implication right rule in ILL enforces the existence of a single conclusion on the sequent. The implication right rule for FILL is more liberal than a single formula in the consequent, but more restricted than the classical linear logic rule. It was to express this subtle situation that we needed the concept of dependencies; but dependencies also make sense in the CLL case.

Figure 1: Definition of Dep_{τ}(A) – The Multiplicatives

\begin{aligned}& Ax \\ A ⊢ A \end{aligned}  Dep_{τ} (A) = A

Γ ⊢ B, Δ Γ′, B ⊢ Δ′

Cut
Γ′, Γ ⊢ Δ′, Δ

Dep_{τ} (A) = \{ \begin{matrix}Dep_{τ_{1}}(A) & if A ∈ Δ \\ Dep_{τ_{2}}(A)[\{B\} ↦ Dep_{τ_{1}}(B)] & if A ∈ Δ′ \end{matrix}

Γ, B, C ⊢ Δ ; ⊗_{L} ; Γ, B ⊗ C ⊢ Δ  Dep_{τ} (A) = Dep_{τ_{1}}(A)[{B, C} ↦ {B ⊗ C}]

Γ ⊢ B, Δ Γ′ ⊢ C, Δ′

⊗_{R}

Γ, Γ′ ⊢ B ⊗ C, Δ, Δ′

Dep_{τ} (A) = \{ \begin{matrix}Dep_{τ_{1}}(A) & if A ∈ Δ \\ Dep_{τ_{2}}(A) & if A ∈ Δ′ \\ Dep_{τ_{1}}(B) ∪ Dep_{τ_{2}}(C) & if A = B ⊗ C \end{matrix}

Γ ⊢ Δ ; I_{L} ; Γ, I ⊢ Δ  Dep_{τ} (A) = Dep_{τ_{1}}(A)

\begin{aligned}& I_{R} \\ ⊢ I \end{aligned}  Dep_{τ} (I) = ∅

Γ, B ⊢ Δ Γ′, C ⊢ Δ′

□_{L}

Γ, Γ′, B□C ⊢ Δ, Δ′

Dep_{τ} (A) = \{ \begin{matrix}Dep_{τ_{1}}(A)[\{B\} ↦ \{B□C\}] & if A ∈ Δ \\ Dep_{τ_{2}}(A)[\{C\} ↦ \{B□C\}] & if A ∈ Δ′ \end{matrix}

Γ ⊢ B, C, Δ ; □_{R} ; Γ ⊢ B□C, Δ  Dep_{τ} (A) = \{ \begin{matrix}Dep_{τ_{1}}(A) & if A ∈ Δ \\ Dep_{τ_{1}}(B) ∪ Dep_{τ_{1}}(C) & if A = B□C \end{matrix}

\begin{aligned}& ⊥_{L} \\ ⊥⊢ \end{aligned}  nothing to define

Γ ⊢ Δ ; ⊥_{R} ; Γ ⊢⊥, Δ  Dep_{τ} (A) = \{ \begin{matrix}Dep_{τ_{1}}(A) & if A ∈ Δ \\ ∅ & if A =⊥ \end{matrix}

Γ ⊢ B, Δ Γ′, C ⊢ Δ′

⊸_{L}

Γ, Γ′, B ⊸ C ⊢ Δ, Δ′

Dep_{τ} (A) = \{ \begin{matrix}Dep_{τ_{2}}(A)[\{C\} ↦ \{B ⊸ C\} ∪ Dep_{τ_{1}}(B)] & if A ∈ Δ′ \\ Dep_{τ_{1}}(A) & if A ∈ Δ \end{matrix}

Γ, B ⊢ C, Δ ; ⊸_{R} ; Γ ⊢ B ⊸ C, Δ  Dep_{τ} (A) = \{ \begin{matrix}Dep_{τ_{1}}(A)[\{B\} ↦ ∅] & if A ∈ Δ \\ Dep_{τ_{1}}(C)[\{B\} ↦ ∅] & if A = B ⊸ C \end{matrix}

Figure 2: Definition of Dep_{τ}(A) – The Modalities

Γ, B ⊢ Δ ; !_{L} ; Γ,!B ⊢ Δ  Dep_{τ} (A) = Dep_{τ_{1}}(A)[{B} ↦ {!B}]

!Γ ⊢ B,?Δ ; !_{R} ; !Γ ⊢!B,?Δ  Dep_{τ} (A) = \{ \begin{matrix}Dep_{τ_{1}}(A) & if A ∈?Δ \\ Dep_{τ_{1}}(B) & if A =!B \end{matrix}

!Γ, B ⊢?Δ ; ?_{L} ; !Γ,?B ⊢?Δ  Dep_{τ} (A) = Dep_{τ_{1}}(A)[{B} ↦ {?B}]

Γ ⊢ B, Δ ; ?_{R} ; Γ ⊢?B, Δ  Dep_{τ} (A) = \{ \begin{matrix}Dep_{τ_{1}}(A) & if A ∈ Δ \\ Dep_{τ_{1}}(B) & if A =?B \end{matrix}

Γ ⊢ Δ ; W_{L} ; Γ,!B ⊢ Δ  Dep_{τ} (A) = Dep_{τ_{1}}(A)

Γ ⊢ Δ ; W_{R} ; Γ ⊢?B, Δ  Dep_{τ} (A) = \{ \begin{matrix}Dep_{τ_{1}}(A) & if A ∈ Δ \\ ∅ & if A =?B \end{matrix}

Γ,!B′,!B′′ ⊢ Δ ; C_{L} ; Γ,!B ⊢ Δ Dep_{τ} (A) = Dep_{τ_{1}}(A)[{!B′,!B′′} ↦ {!B}]

Γ ⊢?B′,?B′′, Δ ; C_{R} ; Γ ⊢?B, Δ Dep_{τ} (A) = \{ \begin{matrix}Dep_{τ_{1}}(A) & if A ∈ Δ \\ Dep_{τ_{1}}(?B′) ∪ Dep_{τ_{1}}(?B′′) & if A =?B \end{matrix}

Suppose we are given a proof

\begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} τ \\ Γ, B ⊢ C, Δ \end{matrix}

⊸_{R}

Γ ⊢ B ⊸ C, Δ

If one thinks about the set of formulae in the antecedent that any A in the consequent Δ might depend on, if B wasn’t in Dep_{τ}(A) nothing will change. If B was in Dep_{τ}(A), since by applying the implication right rule we just discharged it, it need not be there. Now if we look at the formula B ⊸ C again we have two cases. Either B was in Dep_{τ}(C) and then we simply get rid of it; or it was not and in this case the dependencies of B ⊸ C are the same as the dependencies of C. One may wonder about the relevant aspects of this implication. After all CLL is supposed to be more than a relevant logic, i.e that we should only have linear implications where the antecedent is used to produce the consequent and moreover it must be used exactly once. How can we have (linear) cases where the antecedent abstracted over did not show up in the body. Well, we do have rules within CLL that introduce “fake” dependencies, that is, antecedent formulae that no consequent formulae depends on. They are I_{L},⊥_{L} and W_{L}, for example in the derivation

{A ⊢ A \atop A, I ⊢ A} ; A ⊢ I ⊸ A

we are allowed to abstract I and A does not depend on it. If we disregard the above mentioned rules that introduce false dependencies, then any antecedent formula would have at least one consequent formula depending on it. This would entail that whenever we have an application of the rule for implication right valid in FILL, then the antecedent abstracted over always shows up in the body.

To explain the different flavour of the FILL implication right rule when compared to the CLL one, we could extend (a little) the Brouwer-Heyting-Kolmogorov interpretation of intuitionistic logic to say that a proof of Γ ⊢ Δ is a function that maps a proof of each formula in Γ to a proof of one of the formulae in Δ. The intuitionistic interpretation of a proof of a formula B ⊸ C is a function that maps a proof of B into a proof of C. So given a proof τ of the sequent Γ, B ⊢ C, Δ and a proof of each formula in Γ, we get a function that maps a proof of B into a proof of either C or a formula in Δ. By imposing the condition that none of the formulae occurring in Δ are allowed to depend on B in τ, we can assume that our function has the property that either we get a proof of C for any proof of B, or we get a proof of a formula in Δ for any proof of B. This enables us to define a function that maps a proof of each formula in Γ into either a proof of B ⊸ C or a proof of a formula in Δ.

The system FILL is more intuitionistic than CLL, as for instance the “multiplicative excluded middle” ⊢ A^{⊥}□A cannot be proved in FILL^{1}. The usual CLL proof

{A ⊢ A \atop A ⊢⊥, A} ; ⊢ A ⊸⊥, A ; ⊢ (A ⊸⊥)□A

is not a FILL proof as the only formula in Δ, namely A, depends on the formula A we thought of abstracting over. It is easy to see that this entails that A^{⊥⊥} ⊢ A is not provable in FILL either. But it is surprisingly the case that if ⊢ A^{⊥⊥} is provable, then ⊢ A is provable too. This is so because a cut-free proof of ⊢ A^{⊥⊥} essentially has to look as follows

{⊢ A ⊥⊢⊥ \atop (A ⊸⊥) ⊢⊥} ; ⊢ (A ⊸⊥) ⊸⊥

So we cannot prove ⊢ (A^{⊥}□A)^{⊥⊥} in FILL because we cannot prove ⊢ A^{⊥}□A. This is different from the situation in IL where we cannot prove ⊢ ¬A∨A but where we can prove ⊢ ¬¬(¬A ∨ A). It is perhaps worth mentioning that the IL proof of ⊢ ¬¬(¬A ∨ A) uses contraction, not generally available in FILL, and, it uses the ∨_{R} rule which is different from □_{R}. Another example of a sequent provable in CLL but not in FILL is A ⊗ B ⊸ (C□D) ⊢ (A ⊸ C)□(B ⊸ D); the CLL proof

\begin{matrix}{A ⊢ A B ⊢ B \atop A, B ⊢ A ⊗ B} & {C ⊢ C D ⊢ D \atop C□D ⊢ C, D} \\ (A ⊗ B) ⊸ (C□D), A, B ⊢ C, D \end{matrix} ; (A ⊗ B) ⊸ (C□D), A ⊢ C, B ⊸ D ; (A ⊗ B) ⊸ (C□D) ⊢ A ⊸ C, B ⊸ D ; (A ⊗ B) ⊸ (C□D) ⊢ (A ⊸ C)□(B ⊸ D)

is not a FILL proof as none of the applications of the implication right rule satisfy the FILL side-condition; C depends on B in the first application of the implication right rule and B ⊸ D depends on A in the second. This shows the similarity between □ and ∨; the sequent A ⇒ (C ∨ D) ⊢ (A ⇒ C) ∨ (A ⇒ D) is provable in CL but not in IL. An example of a theorem in FILL is the sequent A ⊸ B ⊢ (A ⊗ B^{⊥})^{⊥}, proved as follows

1In this and the following non-FILL examples we use cut elimination, as pointed out by Mathias Kegelmann.

{{A ⊢ A B ⊢ B \atop A ⊸ B, A ⊢ B} ⊥⊢⊥ \atop A ⊸ B, A, B ⊸⊥⊢⊥} ; A ⊸ B, A ⊗ (B ⊸⊥) ⊢⊥ ; A ⊸ B ⊢ (A ⊗ (B ⊸⊥)) ⊸⊥

Remark: Note that the dependency definition Dep_{τ}(A) can be seen as “demand-driven”, as we look for antecedent formulae that a certain succedent formula depends on, if we want to discharge some other formula in the same context. We could have an eager version of the dependency definition for the implication right rule where B would be assumed to depend on C to have the implication B ⊸ C valid. But, with the other rules the way they are, we would not obtain cut elimination.

3 Cut Elimination

In this section we show that CLL and FILL satisfy the cut elimination property. In a nutshell we want to prove the following result:

Theorem Given a CLL proof τ, we can construct a cut-free proof τ′ with the same end-sequent as τ such that

1. If τ is a proof in FILL then the end-sequent of τ′ has fewer dependencies than the end-sequent of τ;

2. If τ is a proof in FILL then τ′ is a proof in FILL too.

We actually give an algorithm transforming an arbitrary CLL proof into a cut-free proof with the same end-sequent such that the property of being a FILL proof is preserved. To this end we show that each step of the algorithm preserves the property of being a FILL proof, and moreover, each step decreases the sets of dependencies. This enables us apply a step of the algorithm to a subproof above a valid FILL application of the implication right rule without risking to make it FILL-invalid. Our proof of cut elimination for CLL is along the lines of the proof of cut elimination for CL given in [GLT89] where we have taken the linear context into account.

Towards the goal of proving this theorem we start with some preliminary results.

3.1 Some Preliminary Results

Our first preliminary results are two small technical lemmas needed to do the induction proofs later on.

Lemma 3.1 Assume that we have a proof τ of Γ, B ⊢ Δ, A such that neither of the formula occurrences A and B is introduced by the last rule used, and such that they both are inherited from an immediate subproof π of τ. Then A depends on B in τ iff A depends on B in the immediate subproof π.

Proof: Check each rule. □

Lemma 3.2 Assume that we have a proof τ of Γ,!A,!A ⊢ Δ such that neither of the occurrences of the formula !A is introduced by the last rule used, and such that they both are inherited from an immediate subproof π of τ. Then the proof with end-sequent Γ,!A ⊢ Δ obtained by applying C_{L} to τ has the same dependencies as the proof with the same end-sequent obtained by applying C_{L} to π and then applying the last rule of τ.

Proof: Check each rule; the interesting cases are the cut and implication left. □

Lemma 3.2 deals with contractions on the left hand side; there is a dual lemma dealing with contractions on the right hand side. The lemmas themselves are duals, but the proofs are not because of the asymmetry of the linear implication rules. The next lemma makes clear that the notion of dependency that we introduced makes all rules for assignment of dependencies monotonic in the sense that if we take a proof

\begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π \\ Γ ⊢ Δ \end{matrix} ; Γ′ ⊢ Δ′

and replace the subproof π by another proof π′ with the same end-sequent as π such that π′ has fewer dependencies than π, then the proof obtained

\begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π′ \\ Γ ⊢ Δ \end{matrix} ; Γ′ ⊢ Δ′

has fewer dependencies than the original proof.

Lemma 3.3 Assume that the proof τ is obtained from the proofs π_{i} by applying a proofrule r, and that for each proof π_{i} there is a proof π′_{i} with the same end-sequent as π_{i} such that the end-sequent of π′_{i} has fewer dependencies than the end-sequent of π_{i}. Then the end-sequent of the proof τ′ obtained from the proofs π′_{i} by applying r has fewer dependencies than the end-sequent of τ. If τ is a FILL proof then each π_{i} is a FILL proof, and, furthermore, if each π′_{i} is a FILL proof, then τ′ is a FILL proof too.

Proof: Look at each rule. If r is an instance of the implication right rule, which is FILLvalid in τ, then it will obviously also be FILL-valid in τ′. □

Our next lemma deals with the cases where a cut can be pushed upwards to the right hand side of a proof tree, that is, where the proof

Γ ⊢ A, Δ Γ_{1}, A ⊢ Δ_{1} ; r ; Γ′, A ⊢ Δ′

Γ′, Γ ⊢ Δ′, Δ

is replaced by the proof

Γ ⊢ A, Δ Γ_{1}, A ⊢ Δ_{1}
Γ_{1}, Γ ⊢ Δ_{1}, Δ
r
Γ′, Γ ⊢ Δ′, Δ

In these situations we have to worry, in particular, about the rule r being !_{R} or ?_{L}, for obvious reasons.

Lemma 3.4 Let the proof τ of Γ′, Γ ⊢ Δ′, Δ be obtained from the proof π of Γ ⊢ A, Δ and the proof π′ of Γ′, A ⊢ Δ′ by a cut. Assume that the last rule r′ of π′ does not introduce the formula A. If r′ is an instance of !_{R} or ?_{L} then assume furthermore that each formula in Γ has a ! at the top level and each formula in Δ has a ? at the top level. Let τ′ be the proof with conclusion Γ′, Γ ⊢ Δ′, Δ obtained by applying r′ to the proof obtained by applying the cut rule to π and the immediate subproof of π′ from which A is inherited. Then

1. the conclusion of τ′ has the same dependencies as the conclusion of τ;

2. if τ is a proof in FILL then τ′ is a proof in FILL too.

Proof: Check each case; the interesting ones are the cut and implication left rules. □

Lemma 3.4 deals with pushing a cut up to the right hand side of a proof tree; there is a dual lemma dealing with pushing a cut up to the left hand side of a tree. These lemmas are dual, but their proofs are not because of the asymmetry of the implication ⊸ rules.

3.2 The Key-Cases

As is usual in cut elimination proofs we need to define the degree of a formula.

Definition 3.5 The degree ∂(A) of a formula A is defined inductively as follows:

1. ∂(A) = 1 when A is atomic

2. ∂(A ⊗ B) = ∂(A□B) = ∂(A ⊸ B) = max{∂(A), ∂(B)} + 1

3. ∂(!A) = ∂(?A) = ∂(A) + 1

The degree of a cut is defined to be the degree of the formula cut. The degree of a proof is defined as the supremum of the degrees of the cuts in the proof. Our next lemma deals with all the key-cases except the problematic one, i.e. except the implication case.

Lemma 3.6 Let the proof τ be an instance of one of the key-cases mentioned in Appendix B except the implication (⊸_{R}, ⊸_{L}) key-case. Assume that the immediate subproofs of τ have degrees strictly less than the degree of τ. Let τ′ be the proof obtained by changing τ as prescribed in the appendix. Then τ′ has degree strictly less than the degree of τ and moreover

1. the end-sequent of τ′ has fewer dependencies than the end-sequent of τ;

2. if τ is a proof in FILL then τ′ is a proof in FILL too.

Proof: Check each case. □

Now we deal with the rules for implication.

Lemma 3.7 Let the proof τ be an instance of the (⊸_{R}, ⊸_{L}) key-case mentioned in Appendix B. Assume that the immediate subproofs of τ have degrees strictly less than the degree of τ. Let τ′ be the proof obtained by changing τ as prescribed in the appendix B. Then τ′ has degree strictly less than the degree of τ and moreover

1. if τ is a proof in FILL then the end-sequent of τ′ has fewer dependencies than the end-sequent of τ;

2. if τ is a proof in FILL then τ′ is a proof in FILL too.

Proof: Straightforward to check. □

Note in Lemma 3.7 that the end-sequent of τ′ has fewer dependencies than the endsequent of τ under the assumption that τ is a proof in FILL. This assumption is not needed in Lemma 3.6.

3.3 The Pseudo Key-Cases

Now we deal with what we call the pseudo key-cases, which differ from the key-cases in that they do not decrease the degree of the proof involved. There are two pseudo key-cases, namely (!_{R}, C_{L}) and (C_{R},?_{L}). The following lemma says that the pseudo keycases behave properly with respect to dependencies. But the hard work is done in the lemma 3.10, where we show how to perform additional modifications when applying the pseudo key-cases such that the degree of the involved proof does decrease.

Lemma 3.8 Let the proof τ be an instance of one of the pseudo key-cases mentioned in Appendix C. Let τ′ be the proof obtained by changing τ as prescribed there. Then

1. the end-sequent of τ′ has the same dependencies as the end-sequent of τ;

2. if τ is a proof in FILL then τ′ is a proof in FILL too.

Proof: Straightforward to check. □

Let us examine the (!_{R}, C_{L}) pseudo key-case

!Γ ⊢ A,?Δ ; !_{R} ; !Γ ⊢!A,?Δ  {Γ′,!A,!A ⊢ Δ′ \atop Γ′,!A ⊢ Δ′}
Γ′,!Γ ⊢ Δ′,?Δ

⇝

!Γ ⊢ A,?Δ !Γ ⊢!A,?Δ {!Γ ⊢ A,?Δ \atop !Γ ⊢!A,?Δ} Γ′,!A,!A ⊢ Δ′

Γ′,!Γ,!A ⊢ Δ′,?Δ

Γ′,!Γ,!Γ ⊢ Δ′,?Δ,?Δ = Γ′,!Γ ⊢ Δ′,?Δ

The (!_{R}, C_{L}) pseudo key-case does not decrease the degree of the proof, as mentioned above. Thus instead of just modifying the proof as prescribed, we have to “track” the cut formula !A upwards in the right hand side immediate subproof which has C_{L} as the last rule. When we follow an antecedent !A formula upwards in a proof, then a track ends due to one of the following reasons: The formula is introduced by an instance of the !_{L} rule, the formula is absorbed by an instance of the W_{L} rule, or finally, we end up in an axiom. Note that on the way upwards the formula !A might have proliferated into several copies while passing instances of the C_{L} rule. In each of the mentioned end-points there is an appropriate way to modify the proof such that !A is replaced by !Γ and ?Δ is added on the succedent in a way that decreases the degree. For example the following proof where none of the tracks are proliferated by passing instances of the C_{L} rule and they both both end up in an axiom

!Γ ⊢ A,?Δ !_{R} !Γ ⊢!A,?Δ \begin{matrix}!A ⊢!A ; \begin{matrix}· \\ · \\ · \end{matrix} ; Γ_{1},!A ⊢ Δ_{1} & !A ⊢!A ; \begin{matrix}· \\ · \\ · \end{matrix} ; Γ_{2},!A ⊢ Δ_{2} \\ Γ′,!A,!A ⊢ Δ′ \end{matrix}

Γ′,!A ⊢ Δ′
Γ′,!Γ ⊢ Δ′,?Δ

is modified as follows

!Γ ⊢ A,?Δ ; !_{R} ; !Γ ⊢!A,?Δ

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

Γ_{1},!Γ ⊢ Δ_{1},?Δ

!Γ ⊢ A,?Δ ; !_{R} ; !Γ ⊢!A,?Δ

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

Γ_{2},!Γ ⊢ Δ_{2},?Δ

Γ′,!Γ,!Γ ⊢ Δ′,?Δ,?Δ = Γ′,!Γ ⊢ Δ′,?Δ

Note that a (!_{R}, C_{L}) pseudo key-case was performed in the process of following the track(s) upwards. This is formalised in the next lemma which takes care of every situation where we have a cut where the last rule of the left hand side immediate subproof is the !_{R} rule. The lemma is proved by induction using the notion of height of a proof:

Definition 3.9 The height h(τ) of a proof τ is defined inductively as follows:

1. if τ is an instance of a zero-premiss rule, then h(τ) = 1,

2. if τ is obtained from the proof π by applying an instance of a one-premiss rule, then h(τ) = h(π) + 1,

3. if τ is obtained from the proofs π and π′ by applying an instance of a two-premiss rule, then h(τ) = max{h(π), h(π′)} + 1.

Now the promised lemma.

Lemma 3.10 Assume !A^{n} denotes a list of n occurences of the formula !A, and let a proof τ be given as follows

\begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π \\ !Γ ⊢ A,?Δ \end{matrix} ; !Γ ⊢!A,?Δ  \begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π′ \\ Γ′,!A^{n} ⊢ Δ′ \end{matrix} ; = ; Γ′,!A ⊢ Δ′
Γ′,!Γ ⊢ Δ′,?Δ

where the subproofs π and π′ have degrees strictly less than the degree of τ. Then we can construct a proof τ′ of Γ′,!Γ ⊢ Δ′,?Δ such that τ′ has degree strictly less than the degree of τ and moreover

1. the end-sequent of τ′ has fewer dependencies than the end-sequent of τ;

2. if τ is a proof in FILL then τ′ is a proof in FILL too.

Proof: The proof is by induction on h(π′). In what follows, the last rule used in π′ is denoted by r′ and we proceed in a case by case basis.

• If r′ is an instance of an axiom, we use the proof obtained by applying !_{R} to π.

• If one of the n occurences of the formula !A in the end-sequent of π′ is introduced by r′ which is an instance of !_{L}: we have two subcases. If n = 1 then we have a (!_{R},!_{L}) key-case, so we change τ according to the table of key-cases in Appendix B cf. Lemma 3.6. If n > 1 then we have the following situation

{!Γ ⊢ A,?Δ \atop !Γ ⊢!A,?Δ}  {Γ′,!A^{n−1}, A ⊢ Δ′ \atop Γ′,!A^{n−1},!A ⊢ Δ′} ; = ; Γ′,!A ⊢ Δ′
Γ′,!Γ ⊢ Δ′,?Δ

where we first change the proof in accordance with Lemma 3.2 to obtain the (!_{R}, C_{L}) pseudo key-case

!Γ ⊢ A,?Δ !Γ ⊢!A,?Δ Γ′,!A^{n−1}, A ⊢ Δ′ ; = ; Γ′,!A, A ⊢ Δ′ ; Γ′,!A,!A ⊢ Δ′

Γ′,!A ⊢ Δ′
Γ′,!Γ ⊢ Δ′,?Δ

which we change as prescribed in Appendix C cf. Lemma 3.8 to

!Γ ⊢ A,?Δ !Γ ⊢!A,?Δ {!Γ ⊢ A,?Δ \atop !Γ ⊢!A,?Δ}  Γ′,!A^{n−1}, A ⊢ Δ′ ; = ; Γ′,!A, A ⊢ Δ′ ; Γ′,!A,!A ⊢ Δ′

Γ′,!Γ,!A ⊢ Δ′,?Δ

Γ′,!Γ,!Γ ⊢ Δ′,?Δ,?Δ = Γ′,!Γ ⊢ Δ′,?Δ on which we apply Lemma 3.4 to obtain

!Γ ⊢ A,?Δ !Γ ⊢!A,?Δ

{!Γ ⊢ A,?Δ \atop !Γ ⊢!A,?Δ}  Γ′,!A^{n−1}, A ⊢ Δ′ ; = ; Γ′,!A, A ⊢ Δ′
Γ′,!Γ, A ⊢ Δ′,?Δ
Γ′,!Γ,!A ⊢ Δ′,?Δ

Γ′,!Γ,!Γ ⊢ Δ′,?Δ,?Δ = Γ′,!Γ ⊢ Δ′,?Δ

which contains a (!_{R},!_{L}) key-case which we eliminate as prescribed in Appendix B cf. Lemma 3.6 and get a proof

!Γ ⊢ A,?Δ {!Γ ⊢ A,?Δ \atop !Γ ⊢!A,?Δ}  Γ′,!A^{n−1}, A ⊢ Δ′ ; = ; Γ′,!A, A ⊢ Δ′ Γ′,!Γ, A ⊢ Δ′,?Δ

Γ′,!Γ,!Γ ⊢ Δ′,?Δ,?Δ = Γ′,!Γ ⊢ Δ′,?Δ

on which we apply the induction hypothesis on the appropriate subproof.

• If one of the n occurences of the formula !A in the end-sequent of π′ is introduced by r′ which is an instance of W_{L}. This situation is analogous to the previous case.

• If one of the n occurences of the formula !A in the end-sequent of π′ is introduced by r′ which is an instance of C_{L}. We apply the induction hypothesis to the immediate subproof of π′ where we consider the appropriate n + 1 occurences of !A.

• If none of the n occurences of the formula !A in the end-sequent of π′ is introduced by r′. We have two subcases. In the first subcase all of the n occurrences of the formula !A in the end-sequent of π′ are inherited from the same immediate subproof. If r′ is a one-premiss rule we have the following situation

{!Γ ⊢ A,?Δ \atop !Γ ⊢!A,?Δ}  Γ_{1},!A^{n} ⊢ Δ_{1} ; r′ ; Γ′,!A^{n} ⊢ Δ′ ; = ; Γ′,!A ⊢ Δ′
Γ′,!Γ ⊢ Δ′,?Δ

where we first change the proof in accordance with Lemma 3.2 to

{!Γ ⊢ A,?Δ \atop !Γ ⊢!A,?Δ}  Γ_{1},!A^{n} ⊢ Δ_{1} ; = ; Γ_{1},!A ⊢ Δ_{1} ; r′ ; Γ′,!A ⊢ Δ′
Γ′,!Γ ⊢ Δ′,?Δ

which we change in accordance with Lemma 3.4 (note that this is possible even if r′ is an instance of !_{R} or ?_{L} because each formula in !Γ has a ! at the top level and each formula in ?Δ has a ? at the top level) to the proof

{!Γ ⊢ A,?Δ \atop !Γ ⊢!A,?Δ}  Γ_{1},!A^{n} ⊢ Δ_{1} ; = ; Γ_{1},!A ⊢ Δ_{1}
Γ_{1},!Γ ⊢ Δ_{1},?Δ
r′
Γ′,!Γ ⊢ Δ′,?Δ

and we are finally in position to use the induction hypothesis at the appropriate subproof. The situation is analogous if r′ is a two-premiss rule. In the second subcase the n occurrences of the formula !A in the end-sequent of π′ are not inherited from the same immediate subproof, so we have the following situation

!Γ ⊢ A,?Δ !Γ ⊢!A,?Δ

Γ_{1},!A^{p} ⊢ Δ_{1} Γ_{2},!A^{q} ⊢ Δ_{2}
r′

Γ′,!A^{p+q} ⊢ Δ′ = Γ′,!A ⊢ Δ′

Γ′,!Γ ⊢ Δ′,?Δ

where we first change the proof in accordance with Lemma 3.2 to obtain the (!_{R}, C_{L}) pseudo key-case

!Γ ⊢ A,?Δ !Γ ⊢!A,?Δ

Γ_{1},!A^{p} ⊢ Δ_{1} ; = ; Γ_{1},!A ⊢ Δ_{1}  Γ_{2},!A^{q} ⊢ Δ_{2} ; = ; Γ_{2},!A ⊢ Δ_{2}
r′
Γ′,!A,!A ⊢ Δ′
Γ′,!A ⊢ Δ′
Γ′,!Γ ⊢ Δ′,?Δ

which we change as prescribed in Appendix C cf. Lemma 3.8 to

!Γ ⊢ A,?Δ !Γ ⊢!A,?Δ

!Γ ⊢ A,?Δ !Γ ⊢!A,?Δ Γ_{1},!A^{p} ⊢ Δ_{1} ; = ; Γ_{1},!A ⊢ Δ_{1}  Γ_{2},!A^{q} ⊢ Δ_{2} ; = ; Γ_{2},!A ⊢ Δ_{2}

r′
Γ′,!A,!A ⊢ Δ′

Γ′,!Γ,!A ⊢ Δ′,?Δ

Γ′,!Γ,!Γ ⊢ Δ′,?Δ,?Δ = Γ′,!Γ ⊢ Δ′,?Δ

on which we apply Lemma 3.4 twice to obtain

{!Γ ⊢ A,?Δ \atop !Γ ⊢!A,?Δ}  Γ_{1},!A^{p} ⊢ Δ_{1} ; = ; Γ_{1},!A ⊢ Δ_{1}
Γ_{1},!Γ ⊢ Δ_{1},?Δ

{!Γ ⊢ A,?Δ \atop !Γ ⊢!A,?Δ}  Γ_{2},!A^{q} ⊢ Δ_{2} ; = ; Γ_{2},!A ⊢ Δ_{2}
Γ_{2},!Γ ⊢ Δ_{2},?Δ
r′

Γ′,!Γ,!Γ ⊢ Δ′,?Δ,?Δ = Γ′,!Γ ⊢ Δ′,?Δ

on which we use the induction hypothesis on the appropriate two subproofs.

□

There is a dual to Lemma 3.10; and it is the case that the proofs are also dual.

3.4 Putting the Proof Together

The following lemma is the engine of the cut elimination proof.

Lemma 3.11 Let the proof τ of Γ′, Γ ⊢ Δ′, Δ be obtained from the proof π of Γ ⊢ A, Δ and the proof π′ of Γ′, A ⊢ Δ′ by a cut. Assume that π and π′ have degrees strictly less than the degree of τ. Then we can construct a proof τ′ of Γ′, Γ ⊢ Δ′, Δ such that the proof τ′ has degree strictly less than the degree of τ and moreover

1. if τ is a proof in FILL then the end-sequent of τ′ has fewer dependencies than the end-sequent of τ;

2. if τ is a proof in FILL then τ′ is a proof in FILL too.

Proof: Induction on h(π) + h(π′). In what follows, the last rules in π and π′ are denoted by r and r′, respectively, and the immediate subproofs of π and π′ are denoted by π_{i} and π′_{j}, respectively. The formula A is denoted the principal formula. We proceed case by case.

• r is an instance of an axiom; we use π′.

• r′ is an instance of an axiom; dual to the previous case.

We have now dealt with the cases where r or r′ is an instance of an axiom.

• r is an instance of !_{R} that introduces the principal formula; thus, A =!A′ for some A′, and π looks as follows:

{!Γ ⊢ A′,?Δ \atop !Γ ⊢!A′,?Δ}

We use Lemma 3.10.

• r′ is an instance of ?_{L} that introduces the principal formula; dual to the previous case.

• r is an instance of !_{R} that does not introduce the principal formula; thus, A =?A′ for some A′, and π looks as follows:

{!Γ ⊢ B,?A′,?Δ \atop !Γ ⊢!B,?A′,?Δ}

If the principal formula ?A′ is not introduced by r′, then we change τ according to Lemma 3.4 (note that r′ can not be an instance of !_{R} or ?_{L}) and use the induction hypothesis. If the principal formula ?A′ is introduced by r′, that is, π′ looks as follows:

{!Γ′, A′ ⊢?Δ′ \atop !Γ′,?A′ ⊢?Δ′}

then we change τ according to the dual to Lemma 3.4 (note that each formula in !Γ′ has a ! at the top level and each formula in ?Δ′ has a ? at the top level) and use the induction hypothesis.

• r′ is an instance of ?_{L} that does not introduce the principal formula; dual to the previous case.

• r is an instance of ?_{L}; thus, A =?A′ for some A′, and π looks as follows:

{!Γ, B ⊢?A′,?Δ \atop !Γ,?B ⊢?A′,?Δ}

If the principal formula ?A′ is not introduced by r′, then we change τaccording to Lemma 3.4 (note that r′ can not be an instance of !_{R} or ?_{L}) and use the induction hypothesis. If the principal formula ?A′ is introduced by r′, that is, π′ looks as follows:

{!Γ′, A′ ⊢?Δ′ \atop !Γ′,?A′ ⊢?Δ′}

then we change τ in accordance with the dual to Lemma 3.4 (note that each formula in !Γ′ has a ! at the top level and each formula in ?Δ′ has a ? at the top level) and use the induction hypothesis.

• r′ is an instance of !_{R}; dual to the previous case.

We have now dealt with the cases where r or r′ is an instance of !_{R} or ?_{L}.

• r does not introduce the principal formula; we change τ according to the dual to Lemma 3.4 and use the induction hypothesis.

• r′ does not introduce the principal formula; dual to the previous case.

• r introduces the principal formula on the right hand side and r′ introduces the principal formula on the left hand side; we have a (⊗_{R}, ⊗_{L}), (I_{R}, I_{L}), (□_{R}, □_{L}), (⊥_{R}, ⊥_{L}) or (⊸_{R}, ⊸_{L}) key-case. We change τ as precribed in Appendix B and use Lemma 3.6 or Lemma 3.7 as appropriate.

□

Lemma 3.12 Given a proof τ of Γ ⊢ Δ, we can construct a proof τ′ of the same sequent with strictly lower degree than the degree of τ such that

1. if τ is a proof in FILL then the end-sequent of τ′ has fewer dependencies than the end-sequent of τ;

2. if τ is a proof in FILL then τ′ is a proof in FILL too.

Proof: Induction on h(τ). If the last rule used in τ is not a cut with the same degree as the degree of τ, we are done by using the induction hypothesis on the immediate subproofs of τ. If the last rule in τ is a cut with the same degree as the degree of τ, we apply the induction hypothesis on the immediate subproofs of τ, and obtain a proof τ′′ which looks as follows

\begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π \\ Γ′ ⊢ A, Δ′ \end{matrix}  \begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π′ \\ Γ′′, A ⊢ Δ′′ \end{matrix}
Γ′′, Γ′ ⊢ Δ′′, Δ′

where the proofs π and π′ have strictly lower degree than the degree of τ′′. Note that Γ′′, Γ′ is equal to Γ and Δ′′, Δ′ is equal to Δ. We then use Lemma 3.11. □

And now the Hauptsatz.

Theorem 3.13 Given a proof τ of Γ ⊢ Δ, we can construct a cut-free proof τ′ of the same sequent such that

1. if τ is a proof in FILL then the end-sequent of τ′ has fewer dependencies than the end-sequent of τ;

2. if τ is a proof in FILL then τ′ is a proof in FILL too.

Proof: Iteration of Lemma 3.12. □

Note in Theorem 3.13 that the end-sequent of τ′ has fewer dependencies than the endsequent of τ under the assumption that τ is a proof in FILL. This assumption is inherited from Lemma 3.7 via Lemma 3.11 and Lemma 3.12.

4 Conclusions

We have described a cut elimination procedure for CLL that works for FILL, an intuitionistic and more restricted system. Given the similarity between CLL and FILL, and the appealing analogy between FILL and IL, and CLL and CL, one might think that proving cut elimination for FILL would be a trivial matter. If this seems the case in this note, it is because the presentation of FILL has had a long gestation period.

In [HdP93] a term assignment system was proposed to handle the “dependency condition” of our definition 2.3. There was a small mistake in that paper, concerning the side-condition on the rule for the par connective. The mistake is corrected here and, independently, in [Bel95, Bie95]. The notion of dependency introduced in this paper enables the side-condition of the implication right rule to be stated in a way that captures the underlying notion of intuitionistic implication, and moreover, that enables the proof of the cut elimination theorem to go through in a straightforward manner. The proof, as all proofs of cut elimination, is still a bit envolved, hence this note, spelling out the details.

We remark that the formulation of the system here might please traditional logicians, who may not want a term assignment decorating their usual sequent calculus proofs, but who are fairly used to side conditions on their rules. A similar approach to ours was pursued by de Paiva and Pereira [dPP95] for Intuitionistic Logic, as opposed to Intuitionistic Linear Logic. Their approach is more akin to a primitive kind of term assignment, as their sequents are of the form

A_{1}(n_{1}), …, A_{k}(n_{k}) ⇒ B_{1}/S_{1}, …, B_{m}/S_{m}

where the n_{i} are natural numbers and the S’s are sets of natural numbers that code up the dependency relation.

Much work remains to be done on the system FILL, though. In particular, following Braüner’s earlier work, we would like to see how recursion interacts with the kind of multiple-conclusion logic presented here.

Acknowledgements. We would like to thank Gianluigi Bellin, Gavin Bierman, Martin Hyland and Luiz Carlos Pereira for stimulating discussions on the subject of this paper. We also thank Mathias Kegelmann for reading a draft of this work and providing many helpful comments and suggestions. We have used Paul Taylor’s macros to produce the proof-rules.

References

[Bel95] G. Bellin. Private communication, 1995.

[Bie95] G. Bierman. A note on full intuitionistic linear logic. Manuscript, 1995.

[dPP95] V. de Paiva and L. C. Pereira. A new proof system for intuitionistic logic. The Bulletin of Symbolic Logic, 1(1):101, 1995.

[Gir94] J.-Y. Girard. Light linear logic. Manuscript, 1994.

[GLT89] J.-Y. Girard, Y. Lafont, and P. Taylor. Proofs and Types. Cambridge University Press, 1989.

[HdP93] M. Hyland and V. de Paiva. Full intuitionistic linear logic (extended abstract). Annals of Pure and Applied Logic, 64, 1993.

[Shi94] M. Shirahata. Linear Set Theory. PhD thesis, Stanford University, 1994.

A Appendix, CLL Proof-Rules

Axiom

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

Structural rules

Γ, A, B, Γ′ ⊢ Δ ; E_{L} ; Γ, B, A, Γ′ ⊢ Δ Γ ⊢ Δ, A, B, Δ′ ; E_{R} ; Γ ⊢ Δ, B, A, Δ′

Cut rule

Γ ⊢ A, Δ Γ′, A ⊢ Δ′
Cut
Γ′, Γ ⊢ Δ′, Δ

Logical rules

Γ, A, B ⊢ Δ ; ⊗_{L} ; Γ, A ⊗ B ⊢ Δ Γ ⊢ A, Δ Γ′ ⊢ B, Δ′

⊗_{R}
Γ, Γ′ ⊢ A ⊗ B, Δ, Δ′
Γ ⊢ Δ ; I_{L} ; Γ, I ⊢ Δ  \begin{aligned}& I_{R} \\ ⊢ I \end{aligned}
Γ, A ⊢ Δ Γ′, B ⊢ Δ′
□_{L}

Γ, Γ′, A□B ⊢ Δ, Δ′

Γ ⊢ A, B, Δ ; □_{R} ; Γ ⊢ A□B, Δ

\begin{aligned}& ⊥_{L} \\ ⊥⊢ \end{aligned}  Γ ⊢ Δ ; ⊥_{R} ; Γ ⊢⊥, Δ
Γ ⊢ A, Δ Γ′, B ⊢ Δ′
⊸_{L}
Γ, Γ′, A ⊸ B ⊢ Δ, Δ′

Γ, A ⊢ B, Δ ; ⊸_{R} ; Γ ⊢ A ⊸ B, Δ

Γ, A ⊢ Δ ; !_{L} ; Γ,!A ⊢ Δ  !Γ ⊢ A,?Δ ; !_{R} ; !Γ ⊢!A,?Δ
!Γ, A ⊢?Δ ; ?_{L} ; !Γ,?A ⊢?Δ  Γ ⊢ A, Δ ; ?_{R} ; Γ ⊢?A, Δ
Γ ⊢ Δ ; W_{L} ; Γ,!A ⊢ Δ  Γ ⊢ Δ ; W_{R} ; Γ ⊢?A, Δ
Γ,!A,!A ⊢ Δ ; C_{L} ; Γ,!A ⊢ Δ  Γ ⊢?A,?A, Δ ; C_{R} ; Γ ⊢?A, Δ

B Appendix, the Key-Cases

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

Γ, Γ′ ⊢ A ⊗ B, Δ, Δ′

\begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π′_{1} \\ Γ′′, A, B ⊢ Δ′′ \end{matrix} Γ′′, A ⊗ B ⊢ Δ′′

Γ′′, Γ, Γ′ ⊢ Δ′′, Δ, Δ′

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

Γ′′, A, Γ′ ⊢ Δ′′, Δ′

Γ′′, Γ, Γ′ ⊢ Δ′′, Δ′, Δ

\begin{aligned}⊢ I & \begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π′_{1} \\ Γ′ ⊢ Δ′ \end{matrix} ; Γ′, I ⊢ Δ′ \\ & Γ′ ⊢ Δ′ \end{aligned}  ⇝  \begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π′_{1} \\ Γ′ ⊢ Δ′ \end{matrix}

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

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

Γ′, Γ′′, A□B ⊢ Δ′, Δ′′

Γ′, Γ′′, Γ ⊢ Δ′, Δ′′, Δ

⇝ \begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π_{1} \\ Γ ⊢ A, B, Δ \end{matrix} \begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π′_{1} \\ Γ′, A ⊢ Δ′ \end{matrix}

Γ′, Γ ⊢ Δ′, B, Δ,

\begin{matrix}· \\ · \\ · \end{matrix} π′_{2} Γ′′, B ⊢ Δ′′

Γ′′, Γ′, Γ ⊢ Δ′′, Δ′, Δ

\begin{matrix}\begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π_{1} \\ Γ ⊢ Δ \end{matrix} ; Γ ⊢⊥, Δ & ⊥⊢ \\ Γ ⊢ Δ \end{matrix}  ⇝  \begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π_{1} \\ Γ ⊢ Δ \end{matrix}

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

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

Γ′, Γ′′, A ⊸ B ⊢ Δ′′, Δ′

Γ′, Γ′′, Γ ⊢ Δ′′, Δ′, Δ

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

Γ′′, Γ, A ⊢ Δ′′, Δ

Γ′′, Γ, Γ′ ⊢ Δ′′, Δ, Δ′

\begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π_{1} \\ !Γ ⊢ A,?Δ \end{matrix} ; !Γ ⊢!A,?Δ \begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π′_{1} \\ Γ′, A ⊢ Δ′ \end{matrix} ; Γ′,!A ⊢ Δ′

Γ′,!Γ ⊢ Δ′,?Δ

⇝ \begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π_{1} \\ !Γ ⊢ A,?Δ \end{matrix} \begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π′_{1} \\ Γ′, A ⊢ Δ′ \end{matrix}

Γ′,!Γ ⊢ Δ′,?Δ

\begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π_{1} \\ Γ ⊢ A, Δ \end{matrix} ; Γ ⊢?A, Δ \begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π′_{1} \\ !Γ′, A ⊢?Δ′ \end{matrix} ; !Γ′,?A ⊢?Δ′

!Γ′, Γ ⊢?Δ′, Δ

⇝ \begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π_{1} \\ Γ ⊢ A, Δ \end{matrix} \begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π′_{1} \\ !Γ′, A ⊢?Δ′ \end{matrix}

!Γ′, Γ ⊢?Δ′, Δ

\begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π_{1} \\ !Γ ⊢ A,?Δ \end{matrix} ; !Γ ⊢!A,?Δ \begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π′_{1} \\ Γ′ ⊢ Δ′ \end{matrix} ; Γ′,!A ⊢ Δ′

Γ′,!Γ ⊢ Δ′,?Δ

⇝

\begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π′_{1} \\ Γ′ ⊢ Δ′ \end{matrix} ; = ; Γ′,!Γ ⊢ Δ′,?Δ

\begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π_{1} \\ Γ ⊢ Δ \end{matrix} ; Γ ⊢?A, Δ \begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π′_{1} \\ !Γ′, A ⊢?Δ′ \end{matrix} ; !Γ′,?A ⊢?Δ′

!Γ′, Γ ⊢?Δ′, Δ

⇝

\begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π_{1} \\ Γ ⊢ Δ \end{matrix} ; = ; !Γ′, Γ ⊢?Δ′, Δ

C Appendix, the Pseudo Key-Cases

\begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π_{1} \\ !Γ ⊢ A,?Δ \end{matrix} ; !Γ ⊢!A,?Δ \begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π′_{1} \\ Γ′,!A,!A ⊢ Δ′ \end{matrix} ; Γ′,!A ⊢ Δ′

Γ′,!Γ ⊢ Δ′,?Δ ⇝

\begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π_{1} \\ !Γ ⊢ A,?Δ \end{matrix} !Γ ⊢!A,?Δ

\begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π_{1} \\ !Γ ⊢ A,?Δ \end{matrix} ; !Γ ⊢!A,?Δ \begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π′_{1} \\ Γ′,!A,!A ⊢ Δ′ \end{matrix}
Γ′,!Γ,!A ⊢ Δ′,?Δ

Γ′,!Γ,!Γ ⊢ Δ′,?Δ,?Δ =

Γ′,!Γ ⊢ Δ′,?Δ

\begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π_{1} \\ Γ ⊢?A,?A, Δ \end{matrix} ; Γ ⊢?A, Δ \begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π′_{1} \\ !Γ′, A ⊢?Δ′ \end{matrix} ; !Γ′,?A ⊢?Δ′

!Γ′, Γ ⊢?Δ′, Δ

⇝ \begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π_{1} \\ Γ ⊢?A,?A, Δ \end{matrix} \begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π′_{1} \\ !Γ′, A ⊢?Δ′ \end{matrix} ; !Γ′,?A ⊢?Δ′

!Γ′, Γ ⊢?Δ′,?A, Δ

\begin{matrix}\begin{matrix}· \\ · \\ · \end{matrix} π′_{1} \\ !Γ′, A ⊢?Δ′ \end{matrix} !Γ′,?A ⊢?Δ′

!Γ′,!Γ′, Γ ⊢?Δ′,?Δ′, Δ = !Γ′, Γ ⊢?Δ′, Δ

Recent Publications in the BRICS Report Series

RS-96-10 Torben Bra� uner and Valeria de Paiva. Cut-Elimination for Full Intuitionistic Linear Logic. April 1996. 27 pp.

RS-96-9 Thore Husfeldt, Theis Rauhe, and S�ren Skyum. Lower Bounds for Dynamic Transitive Closure, Planar Point Location, and Parentheses Matching. April 1996. 11 pp. To appear in Algorithm Theory: 5th Scandinavian Workshop, SWAT ’96 Proceedings, LNCS, 1996.

RS-96-8 Martin Hansen, Hans H� uttel, and Josva Kleist. Bisimulations for Asynchronous Mobile Processes. April 1996. 18 pp. Appears in Tbilisi Symposium on Language, Logic, and Computation, 1995.

RS-96-7 Ivan Damg� ard and Ronald Cramer. Linear Zero-Knowledegde - A Note on Ef�cient Zero-Knowledge Proofs and Arguments. April 1996. 17 pp.

RS-96-6 Mayer Goldberg. An Adequate Left-Associated Binary Numeral System in the λ-Calculus (Revised Version). March 1996. 19 pp. Accepted for Information Processing Letters. This report is a revision of the BRICS Report RS-95-38.

RS-96-5 Mayer Goldberg. G� odelisation in the λ-Calculus (Extended Version). March 1996. 10 pp.

RS-96-4 J�rgen H. Andersen, Ed Harcourt, and K. V. S. Prasad. A Machine Veri�ed Distributed Sorting Algorithm. February 1996. 21 pp. Abstract appeared in 7th Nordic Workshop on Programming Theory, NWPT ’7 Proceedings, 1995.

RS-96-3 Jaap van Oosten. The Modi�ed Realizability Topos. February 1996. 17 pp.

RS-96-2 Allan Cheng and Mogens Nielsen. Open Maps, Behavioural Equivalences, and Congruences. January 1996. 25 pp. A short version of this paper is to appear in the proceedings of CAAP ’96.

RS-96-1 Gerth St�lting Brodal and Thore Husfeldt. A Communication Complexity Proof that Symmetric Functions have Logarithmic Depth. January 1996. 3 pp.