Relating state-based and process-based concurrency through linear logic (full-version)

被引:31
作者
Cervesato, Iliano [1 ]
Scedrov, Andre [2 ]
机构
[1] Carnegie Mellon Univ Qatar, Doha, Qatar
[2] Univ Penn, Dept Math, Philadelphia, PA 19104 USA
基金
美国国家科学基金会;
关键词
Linear logic; Concurrency; Multiset rewriting; Process algebra; Security protocols; PI-CALCULUS; PETRI NETS; PROOFS;
D O I
10.1016/j.ic.2008.11.006
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
This paper has the purpose of reviewing some of the established relationships between logic and concurrency, and of exploring new ones. Concurrent and distributed systems are notoriously hard to get right. Therefore, following an approach that has proved highly beneficial for sequential programs, much effort has been invested in tracing the foundations of concurrency in logic. The starting points of such investigations have been various idealized languages of concurrent and distributed programming, in particular the well established state-transformation model inspired by Petri nets and multiset rewriting, and the prolific process-based models such as the pi-calculus and other process algebras. In nearly all cases, the target of these investigations has been linear logic, a formal language that supports a view of formulas as consumable resources. In the first part of this paper, we review some of these interpretations of concurrent languages into linear logic and observe that, possibly modulo duality, they invariably target a small semantic fragment of linear logic that we call LVobs. In the second part of the paper, we propose a new approach to understanding concurrent and distributed programming as a manifestation of logic, which yields a language that merges those two main paradigms of concurrency. Specifically, we present a new semantics for multiset rewriting founded on an alternative view of linear logic and specifically LVobs. The resulting interpretation is extended with a majority of linear connectives into the language of omega-multisets. This interpretation drops the distinction between multiset elements and rewrite rules, and considerably enriches the expressive power of standard multiset rewriting with embedded rules, choice, replication, and more. Derivations are now primarily viewed as open objects, and are closed only to examine intermediate rewriting states. The resulting language can also be interpreted as a process algebra. For example, a simple translation maps process constructors of the asynchronous pi-calculus to rewrite operators. The language of omega-multisets forms the basis for the security protocol specification language MSR 3. With relations to both multiset rewriting and process algebra, it supports specifications that are process-based, state-based, or of a mixed nature, with the potential of combining verification techniques from both worlds. Additionally, its logical underpinning makes it an ideal common ground for systematically comparing protocol specification languages. (C) 2009 Elsevier Inc. All rights reserved.
引用
收藏
页码:1044 / 1077
页数:34
相关论文
共 79 条
[1]   A calculus for cryptographic protocols: The spi calculus [J].
Abadi, M ;
Gordon, AD .
INFORMATION AND COMPUTATION, 1999, 148 (01) :1-70
[2]  
Abramsky S, 2000, NATO ADV SCI I F-COM, V175, P167
[3]   PROOFS AS PROCESSES [J].
ABRAMSKY, S .
THEORETICAL COMPUTER SCIENCE, 1994, 135 (01) :5-9
[4]  
ALY S, 2004, 04003 DEPAUL U
[5]  
Andreoli J. M., 1991, New Generation Computing, V9, P445, DOI 10.1007/BF03037173
[6]  
ANDREOLI JM, 2002, SPRINGER LNAI, V2392, P501
[7]  
Asperti A., 1987, LOGIC CONCURRENCY
[8]   PROGRAMMING BY MULTISET TRANSFORMATION [J].
BANATRE, JP ;
LEMETAYER, D .
COMMUNICATIONS OF THE ACM, 1993, 36 (01) :98-111
[9]  
Barber Andrew., 1996, Dual intuitionistic linear logic
[10]   ON THE PI-CALCULUS AND LINEAR LOGIC [J].
BELLIN, G ;
SCOTT, PJ .
THEORETICAL COMPUTER SCIENCE, 1994, 135 (01) :11-65