J. Shanghai Jiaotong Univ. (Sci.), 2014
DOI: 10.1007/s12204-014-1554-y
A Logical Characterization for Linear Higher-Order Processes
XU Xian
1∗
(徐 贤), LONG Huan
2
(龙 环)
(1. Department of Computer Science and Technology, East China University of Science and Technology,
Shanghai 200237, China; 2. Laboratory of Basic Study In Computing Science, MOE-MS Key Laboratory
for Intelligent Computing and Intelligent Systems, Department of Computer Science and Engineering,
Shanghai Jiaotong University, Shanghai 200240, China)
© Shanghai Jiaotong University and Springer-Verlag Berlin Heidelberg 2014
Abstract: Modal logic characterization in a higher-order setting is usually not a trivial task because higher-order
pro cess-passing is quite different from first-order name-passing. We study the logical characterization of higher-
order processes constrained by linearity. Linearity respects resource-sensitiveness and does not allow processes
to duplicate themselves arbitrarily. We provide a modal logic that characterizes linear higher-order processes,
particularly the bisimulation called local bisimulation over them. More importantly, the logic has modalities for
higher-order actions downscaled to resembling first-order ones in Hennessy-Milner logic, based on a formulation
exploiting the linearity of processes.
Key words: modal logic, bisimulation, linearity, higher-order, process calculi
CLC number: TP 301.2 Document code: A
0 Intro duction
Compared with first-order processes
[1-3]
, higher-
order processes are capable of communicating in-
tegral programs and replicating themselves in a
convenient way
[4-6]
, and thus are quite different
in expressiveness
[7-10]
and relevant applications
[11-14]
.
Linear higher-order π-calculus (LHOPi) is proposed
in order to tune down the expressiveness of (general)
higher-order processes
[15-16]
. In particular, linearity
stipulates that a process cannot be multiplied arbi-
trarily on concurrent positions. Suppose P |Q stands
for the concurrent running of two processes P and Q;
linearity rules out processes like a(X).(X|X) that be-
haves as receiving a process on port a to instantiate
variable X and producing another copy of the received
process for p otential communication. On the other
hand, linearity retains processes like a(X).(X+X) in
which + is nondeterministic choice, since the two X in
X+X would not be running concurrently (alone com-
municating with each other). The concept of linear-
ity reminds us of the concept of “singleton” in (object-
oriented) programming, that is at most one single copy
Received date: 2013-09-10
Foundation item: the National Natural Science Foun-
dation of China (Nos. 61202023, 61261130589 and
61173048), the PACE Project (No. 12IS02001), and the
Specialized Research Fund for the Doctoral Program of
Higher Edueation of China (No. 20120073120031)
∗E-mail: xuxian@ecust.edu.cn
of a pro cess can be created during execution (interac-
tion). For example a service, such as an online han-
dler of bank-transfer transaction, can be used only
once (within certain time scope) in network applica-
tions. As a canonical behavioral equivalence on (linear)
higher-order processes, local bisimulation
[16]
improves
context bisimulation
[17]
on higher-order processes, in
that it is not of delayed style
[18-19]
(“delayed” means
that in simulation the visible action cannot be followed
by some internal actions
[19]
). In the linear setting of
Ref. [16], a rather simple characterization called local
linear bisimulation greatly reduces the burden of check-
ing the matching of higher-order input and output (in
a game of local bibismulation).
In this study, we endeavor in establishing a logical
framework that characterizes linear higher-order pro-
cesses as well as local bisimulation. It serves as a
first step toward achieving automatic verification of the
properties of linear processes. Below we first introduce
the related work in the field that motivates our work,
and then state the contribution of this study.
1 Related Works
Modal logic for process calculi
[20]
complements the
algebraic nature of process calculi
[18,21]
, such as the
well-known Hennessy-Milner logic (HML) for calculus
of communicating systems (CCS)
[1]
and its extension
for mobile calculi
[22]
. Potentially they can be used
to specify the properties of a concurrent system, and