10. スコープ拡張規則
10
( x)0 0
( x)(P|Q) P|( x)Q if x / fn(P)
( x)(P + Q) P + ( x)Q if x / fn(P)
( x)if u = v then P if u = v then ( x)P if x / {u, v}
( x)if u = v then P if u = v then ( x)P if x / {u, v}
( x)( y)P ( y)( x)P
18. π计算の操作的意味論
18
PREFIX
.P P
MATCH
P P
P + Q P
STRUCT
P P P Q Q Q
P Q
MISMATCH
P P x = y
if x = y then P P
SUM
P P
P + Q P
PAR
P P bn( ) fn(Q) =
P|Q P |Q
COM
P
a(x)
P Q
?au
Q
P|Q P {x/u}|Q
RES
P P x /
( x)P ( x)P
34. 双模倣性:例2
34
P = a|?b
Q = a.?b + ?b.a
P
P
a ?b
?b
0
P
?b
a
a
0
Q
Q
a ?b
?b
0
Q
?b
a
a
0
P Q P ˙ Q
35. 双模倣性:例3
35
P = a(u)
Q = a(x).( v)?vu
P
a(u)
0 Q
u x u
P Q
P ˙ Q
bn(a(u)) (fn(P) fn(Q)) = {u} = a(u)
36. 双模倣性:例4
36
P1 = a(x).P + a(x).0
P2 = a(x).P + a(x).0 + a(x).if x = u then P
P1 x
P1
a(x)
P
P1
a(x)
0
P2
P2
a(x)
P
P2
a(x)
0
P2
a(x)
if x = u then P
3 x
P2
a(y=u)
0 (if y = u then P )
P2
a(x=u)
P (if u = u then P )
P1 P1 P2
37. 双模倣性:例4の続き
37
P1 = a(x).P + a(x).0
P2 = a(x).P + a(x).0 + a(x).if x = u then P
P ˙ 0 P1 ˙ P2
P2
a(x)
if x = u then P
P1 {x/u}
P1 P2 P1 ˙ P2
38. 強双模倣性から得られる等価式
38
STR If P Q then P = Q
CG1 If P = Q then ?au.P = ?au.Q
.P = .Q
P + R = Q + R
P|R = Q|R
( x)P = ( x)Q
CG2 If P{x/y} = Q{x/y} for all y fn(P, Q, x) then a(x).P = a(x).Q
S P + P = P
M1 (if x = x then P) = P
M2 (if x = y then P) = 0 if x = y
MM1 (if x = x then P) = 0
MM2 (if x = y then P) = P if x = y
R1 ( x) .P = .( x)P if x /
R2 ( x) .P = 0 if = ?xy or = x(y)
R3 ( x)(P + Q) = ( x)P + ( x)Q Parrow, J. (2001). An Introduction of the π calculus. In Bergs,
Poise, Smolka (Eds.), Handbook of Process Algebra. Elsevier.
41. 強合同性から得られる等価式
41
STR If P Q then P = Q
CG “=” is preserved by all operators
S P + P = P
MM1 (if x = x then P) = 0
GM1 (if M then P) = (if N then P) if M N
GM2 (if x = y then P + if x = y then P) = P
GM3 (if M then (P + Q)) = (if M then P + if M then Q)
GM4 (if M then .P) = (if M then ( .if M then P)) if bn( ) / M
GM5 (if x = y then .P) = (if x = y then ( {y/x}).P)
GM6 (( x)if x = y then P) = 0 if x = y
R1 ( x) .P = .( x)P if x /
R2 ( x) .P = 0 if = ?xy or = x(y)
R3 ( x)(P + Q) = ( x)P + ( x)Q Parrow, J. (2001). An Introduction of the π calculus. In Bergs,
Poise, Smolka (Eds.), Handbook of Process Algebra. Elsevier.