Concurrency and Permutability in the Sequent Calculus
Total Page:16
File Type:pdf, Size:1020Kb
Concurrency and Permutability in the Sequent Calculus May 2009 Nicolas Guenot, LIX | Ecole´ Polytechnique [email protected] Abstract. In proof theory, the sequent calculus has been the most widely used logical formalism since its inception by Gentzen. However, it uses a syntax involving a lot of bureaucracy, thus detaining similar proofs from being written as a unique object. Indeed, different rule instances in a proof can be permuted, if the order of the corresponding inference steps does not matter. What we present here is a work in progress, aiming at a general framework for studying permutability properties of inference rule instances. In order to achieve this, we introduce the notion of permutability graph, which provides a unified syntax for equivalent proofs up to permutations. Eventually, it can be used to prove completeness for proof transformations, especially those based on permutations of inference rule instances such as focusing, as discussed at the end of this paper. 1 | Introduction In the sequent calculus, proofs are trees of inference rule instances, structured by the order in which inference steps are used, and creating branches when two unrelated paths of the inference process need to be glued together. However, this order is often arbitrary, thus disallowing a clear reading of the proof by hiding the natural concurrency that exists between different inference steps. This is an inconsistent way of dealing with concurrency, since branches are explicitly separated, while some of the other rule instances within the same branch could be used in parallel without essentially changing the proof. We are interested in the permutability properties of inference rule instances, and the dependencies between steps of the inference process that they induce, in any given logic | in particular, our analysis is valid for systems of usual logics, namely LK, LJ and LL. In order to work on permutability within proof objects, we introduce the notion of permutability graph, providing a unified presentation of most equivalent proofs modulo permutations. This is obviously related to proof-nets [Gir96], that allow for a canonical representation of proofs in linear logic, but the scope and goals of our analysis are quite different. These graphs can be used to prove completeness for proof transformations based on rule instances permutations, since they represent an invariant of proofs through permutations. This was actually the original motivation for introducing these graphs, and all of this work should be considered as a continuation of the focalization graphs used in [MS07] to prove completeness for focusing. Indeed, 1 after the permutability graph of a given proof has been built, any equivalent proof can be produced from it by a sequentialisation process, which can be controlled and create a focused proof. This is related to the sequentialisation theorem for proof-nets, and is close to the creation of tree-like strategies from `-nets as presented in [CF05]. However, we try here to give a more general analysis, and this work, which is still in progress, aims at exploring with permutability the ideas of concurrency and sequentiality that can be found in proof objects. This is why this work is mainly based on the permutability properties of inference rule instances, and we will only illustrate the use of this approach in the end by discussing a proof of completeness for focusing in MLL. 2 | Permuting Inference Rules In the sequent calculus, permuting two inference rule instances is very easy, in an informal way. However, the analysis of permutability presented here requires to be precise, so that we need some definitions for basic logical objects. First, we assume that we are given a language of formulas, which is defined by binary connectives on a set of atoms fa; b; c; · · ·}. We work with occurrences of such formulas rather than directly with formulas, in order to distinguish between copies, and thus handle additive and exponential behaviours. An occurrence An of a formula A is simply this formula labeled with an integer. Moreover, there should be no two occurrences of the same formula with the same index within a sequent, and inference rules should handle duplication as illustrated below by the additive conjunction rule of linear logic : ` A5;B3 ` A6;C4 ` A1; (B3 C4) N N 2 Then, we shall define the objects we are trying to permute : an instance χ of an inference rule scheme is derived from this rule scheme by instantiating variable formulas with actual occurrences. Given a rule instance χ, some of the occurrences in its conclusion are special, since they are the ones on which χ is applied, that could not be removed while keeping the instance correct with respect to its scheme | they are called the principal occurrences, and the set of such occurrences will be denoted by P(χ) in the following. Finally, we define an equivalence relation over occurrences, so that An ' Am for any n; m 2 N. This can be immediately extended to sets of occurrences, and then to inference rule instances, as shown in the definition below. Definition 1 Two instances χ1 and χ2 of the same inference rule scheme are said to be twins, which is denoted by χ1 ' χ2, if and only if P(χ1) 'P(χ2). Then, the permutation of two rule instances can be defined by exhibition of the corresponding transformation on the rule instances at the bottom of the proof, which is trivially extended to instances located anywhere in the proof. 2 2.1 | Conservative Permutations We start with a definition that expresses the most simple permutation case, where no instance is duplicated, keeping the set of rule instances used in the proof unchanged | in a proof Π, we will denote this set by IΠ in the following. Definition 2 A proof Π0 is a conservative permutation of some proof Π if and only if Π0 is derived from Π by any variant of the following transformation : ?? ?? ?? ?? ?Π1 ?Π2 ?Π1 ?Π3 ?? ?? ?? ?? ?? ?? ?Π3 −! ?Π2 ` Σ ` Ψ ?? ` Σ ` Φ ?? χ2 χ1 ` ∆ ` Φ ` Σ0 ` Ψ χ1 χ2 ` Γ ` Γ Example 1 The two MLL proofs below are equivalent because the right one is built by permuting the rule instance below a ⊗ instance in the left one, using a conservative permutation.O In MLL, this is the only possible kind of permutation. id id id id ` a; a? ` b; b? ` a; a? ` b; b? ⊗ ⊗ 1 ` a; b; a? ⊗ b? ≡ ` a; b; a? ⊗ b? ` 1 1 ⊗ O ` a b; a? ⊗ b? ` 1 ` a; b; (a? ⊗ b?) ⊗ 1 ⊗ O ` a b; (a? ⊗ b?) ⊗ 1 ` a b; (a? ⊗ b?) ⊗ 1 O O O The basic step of conservative permutations can be seen as the permutation of an inference rule instance χ2 under another rule instance χ1. Then, the existence of cases where the conservative permutation of two rule instances fails induces a dependency relation between all instances within a given proof. This relation, defined below, will be the starting point of our analysis of the permutability properties of rule instances in proof objects. Definition 3 Given a proof Π, and χ1; χ2 2 IΠ , the conservative dependency relation @Π is defined so that χ1 @Π χ2 if and only if, for any conservative 0 0 permutation Π of Π, χ2 is located above χ1 in the proof tree Π . In the following, when working on a given proof Π, we will use the transitive reduction of the @Π relation, denoted by <Π , in order to keep the graph of rule instances dependencies as close as possible to the tree structure of proof objects. Moreover, it should be noticed that this relation always exists, and is unique, because @Π is antisymmetric and finite. Remark 2 Given a proof Π, its conservative dependency relation @Π is an invariant of all conservative permutations of rule instances, since it is defined by quantification over these permutations. Thus, all conservative permutations of a given proof have the same permutability properties. 3 2.2 | General Permutations A general definition can be given for permutations, allowing to duplicate rule instances in the process, and thus to handle the additive and exponential rule instances, where contraction is involved. This is done by relaxing the condition on the instances that can be used in the resulting proof | this requires to extend the twin relation to proofs, which is trivial | and by allowing to copy the instance moved upward in the tree, as done in the following definition. Definition 4 A proof Π0 is a permutation of some proof Π if and only if Π0 is 0 derived from Π by any variant of the following transformation, where Π3 and 00 Π3 are twins of the original Π3 proof : ? ? ? ? ? ? ? ? ? ? 0 ? ? 00 ?Π1 ?Π2 ?Π1 ?Π ?Π2 ?Π ?? ?? ?? ??3 ?? ??3 ?? ?Π3 −! ` Σ ` Ψ ?? ` Σ ` Φ ` Ψ ` Φ χ2 χ1 χ1 ` ∆ ` Φ ` Σ0 ` Φ0 χ1 χ2 ` Γ ` Γ Remark 3 The most general notion of permutation we consider here does not allow erasures of inference rule instances, so that axiomatic rules can never be permuted down. This is the reason why it will be impossible here to capture all possible proofs of the sequent calculus. We will thus restrict our study to extensive proofs, where axiomatic rules are only applied on sequents that cannot be handled by any other non-axiomatic inference rule. Again, the cases of permutation failure induce a dependency relation, but in order to handle duplications, we need to group some rule instances. This is done by using the merging relation, which is defined on rule instances of a proof Π so that χ1 χ2 when χ1 ' χ2 and there exists a permutation of Π in which + only one twin of these instances appear. Then, we will denote by IΠ the set of equivalence classes of rule instances generated by the merging relation, applied on all inference rule instances used in this proof.