Proof Net Semantics of Proof Search Computation 1 ... - CiteSeerX

3 downloads 0 Views 282KB Size Report
Apr 2, 1997 - De nition 1 (Span and Pre-Span) Given a proof net ... Then, since C does not belong to the x-span of , x must be the parameter of some.
Proof Net Semantics of Proof Search Computation Lus Caires and Lus Monteiro Departamento de Informatica - Universidade Nova de Lisboa 2825 Monte da Caparica, Portugal flcaires,[email protected]

April 2, 1997

Abstract

We present a sound and complete compositional semantics for proof-search computation in a linear logic-based language structured around certain abstractions of proof nets. The model captures the interaction of agents in terms of the actions they engage into and of the dynamic creation of names. The model can also be shown adequate for reasoning about a notion of operational equivalence. We will also suggest how a partial order semantics can be derived from the present approach.

1 Introduction The \proof-search as computation" paradigm, where computational behaviour is extracted from the execution of goal-directed proof-search algorithms for some logic, has received much attention in recent years. The general concept of goal-directed proof search was explained in [14] by the notion of uniform-proof in cut-free sequent calculi for variants of intuitionistic logic, and also by the related notion of focused proof [1] in the more general setting of classical linear logic. Several programming and speci cation languages were proposed in this setting, either emphasising the deductive (theorem proving or meta-level reasoning) aspects (Forum [13]), or what we might call the reductive ones (for instance, ACL [11]) which are of a more operational nature and inspired by the interpretation of \formulas" as \agents" [12, 11]. In [6] we presented L , a simple language that supports the reduction and stateoriented style of speci cation of process calculi without compromising the relational style of speci cation typical of logic programming. In particular we have shown that both the -calculus with choice and the logic of ( rst order) hereditary harrop formulas can be adequately encoded into L . L is actually a fragment of classical linear logic, and we argued that the study of its semantics can lead to a better understanding of the relations between proof-search and concurrency. For instance, the proposed transition system semantics clearly distinguishes static (structural congruence) from dynamic (reduction) aspects of proof-search, and shows how these are related to the notions of asynchronous and synchronous proof segments in focused proofs. In [6] we suggested that L was designed having in mind that connectives express global interaction patterns, not just proof-search directives; this paper attempts to make precise that remark by de ning a compositional semantics for L that captures the role of agents inside proofs. The interpretation is developed in terms of certain abstractions of proof nets and captures 1

the interaction of agents in terms of the actions they engage into, the dynamic creation of names and the phenomenon of scope extrusion represented by the use of universal quanti cation [12]. The semantics can also be shown adequate for reasoning about a certain notion of operational equivalence. We will also show that a model that directly expresses causality can be derived from the present approach and relate them to a true concurrent semantics in the form a higher dimensional transition system. In the context of a proof, a L agent interacts with the rest of the proof in which it occurs, what might be seen as the environment. These interactions may be local, in the sense that other interactions occurring in the same proof evolve independently or, on the contrary, there might be some causal dependencies involved. These dependencies become clearer if we look at a proof net (instead of at the sequent calculus proof) for a L agent as a picture of a particular computation. This observation also suggests an interpretation of agents in terms of their roles inside proof-nets, the main idea being to assign to each agent P a set of proof-structures, each one with a distinguished conclusion P that exhaust the possible behaviours of P inside proofs. What kind of proof structures shall we consider? Let us consider a proof net  with several conclusions , among them P . Starting from the occurrence P , if we follow the structural order up in the proof net, making some arbitrary choice of premise at intermediary links, we will necessarily arrive at some axiom-link connecting some atomic formulas a and a?. Now, either both a and a? are hereditary premises of P or this is not the case. In the rst case, the axiom-link can be seen as standing for an internal interaction of P (like a silent action in CCS). In the other case, the axiom-link is also signalling an interaction between complementary messages: however one is originated by P , while the other is caused by the environment. The set of such atomic occurrences at the borderline between the substructure of the proof net rooted at P and the rest of the proof can then be seen as a characterisation of the behaviour of P inside  (let us call ports to those atomic occurrences and a slice to such substructure). This is but a partial characterisation, for it does not take into account the internal structure of the slice; this structure also constrains its possible contexts of occurrence inside a complete proof. For instance, in the proof structure of Fig.1 (a) we can connect (with axiom links) either a2 to a?1 or b1 to b?2 but not both because in that case the resulting proof structure  is not a proof net (there is no sequent calculus proof of ` a? b; b? a). This can be detected by the existence of a cyclic Danos-Regnier graph [9] in , and interpreted intuitively as a violation of causality: P (a? b) receives from Q (b? a) a message a that was caused by the sending by P of a message b to Q (this corresponds to a \deadlocked" proof structure in the sense of [2]). Now, we

a?1 6

6

b1

b?2 5





5

a2

(a)

b(u)?




=