Linearity and the pi-calculus

被引:141
|
作者
Kobayashi, N
Pierce, BC
Turner, DN
机构
[1] Univ Tokyo, Dept Informat Sci, Bunkyo Ku, Tokyo 1130033, Japan
[2] Univ Penn, Dept Comp & Informat Sci, Philadelphia, PA 19104 USA
[3] Teallach Ltd, Technol Transfer Ctr, Edinburgh EH9 3JL, Midlothian, Scotland
来源
ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS | 1999年 / 21卷 / 05期
关键词
languages; theory; concurrency; confluence; linear types; pi-calculus; process calculi;
D O I
10.1145/330249.330251
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
The economy and flexibility of the pi-calculus make it an attractive object of theoretical study and a clean basis for concurrent language design and implementation. However, such generality has a cost: encoding higher-level features like functional computation in pi-calculus throws away potentially useful information. We show how a linear type system can be used to recover important static information about a process's behavior. In particular, we can guarantee that two processes communicating over a linear channel cannot interfere with other communicating processes. After developing standard results such as soundness of typing, we focus on equivalences, adapting the standard notion of barbed bisimulation to the linear setting and showing how reductions on linear channels induce a useful "partial confluence" of process behaviors. For an extended example of the theory, we prove the validity of a tail-call optimisation for higher-order functions represented as processes.
引用
收藏
页码:914 / 947
页数:34
相关论文
共 50 条
  • [1] Semantic subtyping for the pi-calculus
    Castagna, Giuseppe
    De Nicola, Rocco
    Varacca, Daniele
    THEORETICAL COMPUTER SCIENCE, 2008, 398 (1-3) : 217 - 242
  • [2] Probabilistic pi-Calculus and Event Structures
    Varacca, Daniele
    Yoshida, Nobuko
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2007, 190 (03) : 147 - 166
  • [3] A Resource Analysis of the pi-calculus
    Wand, Aaron Turon Mitchell
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2011, 276 : 313 - 334
  • [4] A Chart Semantics for the Pi-Calculus
    Borgstrom, Johannes
    Gordon, Andrew D.
    Phillips, Andrew
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2008, 194 (02) : 3 - 29
  • [5] Types for Complexity of Parallel Computation in Pi-calculus
    Baillot, Patrick
    Ghyselen, Alexis
    ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 2022, 44 (03):
  • [6] Types for Complexity of Parallel Computation in Pi-Calculus
    Baillot, Patrick
    Ghyselen, Alexis
    PROGRAMMING LANGUAGES AND SYSTEMS, ESOP 2021, 2021, 12648 : 59 - 86
  • [7] Structural inclusion in the pi-calculus with replication
    Engelfriet, J
    Gelsema, T
    THEORETICAL COMPUTER SCIENCE, 2001, 258 (1-2) : 131 - 168
  • [8] Spatial and behavioral types in the pi-calculus
    Acciai, Lucia
    Boreale, Michele
    INFORMATION AND COMPUTATION, 2010, 208 (10) : 1118 - 1153
  • [9] Behavioral equivalence in the polymorphic pi-calculus
    Pierce, BC
    Sangiorgi, D
    JOURNAL OF THE ACM, 2000, 47 (03) : 531 - 584
  • [10] A Proof Search Specification of the pi-Calculus
    Tiu, Alwen
    Miller, Dale
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2005, 138 (01) : 79 - 101