This document contains the proofs of theorems from the paper
A Compositional Semantics of Reaction Systems with Restriction
G. Pardini, R. Barbuti, A. Maggiolo-Schettini, P. Milazzo, S. Tini
appeared in The Nature of Computation. Logic, Algorithms, Applications,
Lecture Notes in Computer Science, Volume 7921, pp 330-339, 2013.
doi:10.1007/978-3-642-39053-1 39
Appendix: proofs
Proposition 1. The semantics satisfies the following properties:
x,y,z
x,y,z
1. (determinism) whenever A −−−−→ A0 and A −−−−→ A00 , A0 = A00 ;
x,y,z
2. for all transitions A −−−−→ A0 , x = fo(A), and sets x, y, z form a partition
of the background set S;
3. for all terms A, and sets {y, z} being a partition of S \ fo(A), there exists a
x,y,z
transition A −−−−→ A0 with x = fo(A) for some A0 .
Proof. Item 1 can be proved by rule induction. As regards the base case when
x,y,z
I
I
A = R 7−
→ P , note that a given transition R 7−
→ P −−−−→ A0 , for any A0 , cannot
be derived using both (1) and (2).
Both Item 2 and 3 can be proved by rule induction as well. As regards Item 3,
it is worth discussing the proof relative to rule (6). Assume that the thesis holds
x,y,z
for A −−−−→ A0 , and c ∈
/ y; then, by induction, either c ∈ x \ z or c ∈ z \ x. When
x\{c}, y∪{c}, z
c ∈ x \ z, the following transitions can be derived: A\c −−−−−−−−−−−→ A0 \c,
x\{c}, y, z∪{c}
A\c −−−−−−−−−−−→ A0\c. Conversely, when c ∈ z\x, the following transitions can
x, y∪{c}, z\{c}
x,y,z
be derived: A\c −−−−−−−−−−−→ A0\c, A\c −−−−→ A0\c. On the other hand, let c ∈ y,
x, y 0 , z∪{c}
and y 0 = y \ {c}. By induction, there exists a transition A −−−−−−−−→ A0 , for
which rule (6) is applicable, allowing the derivation of the following transitions:
x,y,z
x, y 0 , z∪{c}
A\c −−−−→ A0 \c, A\c −−−−−−−−→ A0 \c.
Lemma 1. Semantics −→ is closed under ≡, namely ∀A1 , A01 , A2 , x, y, z. A1 ≡
x,y,z
x,y,z
A01 ∧ A1 −−−−→ A2 implies ∃A02 ≡ A2 . A01 −−−−→ A02 .
Proof. The proof is by cases over the axioms defining the congruence relation ≡
(Definition 3).
Case 1: A1 |A2 ≡ A2 |A1 . The following transition for A1 |A2 can be derived:
x1 ,y1 ,z
A1 −−−−−→ A01
x2 ,y2 ,z
A2 −−−−−→ A02
0
x1 ∪x2 , y , z
A1 | A2 −−−−−−−−→ A01 | A02
y 0 = y1 \ x2
x1 ∪x2 , y 0 , z
Therefore, by assuming transition A1 | A2 −−−−−−−−→ A01 | A02 the following
transition for A2 | A1 can be derived:
x2 ,y2 ,z
x1 ,y1 ,z
A2 −−−−−→ A02
A1 −−−−−→ A01
y 00 = y2 \ x1
x1 ∪x2 , y 00 , z
A2 | A1 −−−−−−−−→ A02 | A01
with y 00 = y 0 , and where A02 | A01 ≡ A01 | A02 . The other direction is analogous and
thus is omitted.
Case 2: (A1 |A2 )|A3 ≡ A1 |(A2 |A3 ). Let us consider the following derivations:
α,y1 ,z
β,y2 ,z
A1 −−−−→ A01
A2 −−−−→ A02
γ,y3 ,z
A3 −−−−→ A03
α∪β, y1 \β, z
A1 | A2 −−−−−−−−−→ A01 | A02
α∪β∪γ, y1 \β\γ, z
(A1 | A2 ) | A3 −−−−−−−−−−−−→ (A01 | A02 ) | A03
β,y2 ,z
A2 −−−−→ A02
α,y1 ,z
A1 −−−−→ A01
γ,y3 ,z
A3 −−−−→ A03
β∪γ, y2 \γ, z
A2 | A3 −−−−−−−−−→ A02 | A03
α∪β∪γ, y2 \α\β, z
A1 | (A2 | A3 ) −−−−−−−−−−−−→ A01 | (A02 | A03 )
where it holds that y1 \β \γ = y2 \α\β. Since (A01 |A02 )|A03 ≡ A01 |(A02 |A03 ), terms
(A1 | A2 ) | A3 and A1 | (A2 | A3 ) are able to perform the same set of transitions,
yielding equivalent terms in each case.
Case 3: A | 0 ≡ A. The following transition can be derived for A | 0:
∅, x∪y, z
x,y,z
A −−−−→ A0
0 −−−−−−→ 0
x,y,z
A | 0 −−−−→ A0 | 0
where A0 | 0 ≡ A0 , hence the thesis.
Case 4: A | A ≡ A. The following transition can be derived for A | A:
x,y,z
A −−−−→ A0
x,y,z
A −−−−→ A0
x,y,z
A | A −−−−→ A0 | A0
where A0 | A0 ≡ A0 , hence the thesis.
Case 5: A\c|d ≡ (A|d)\c, with c 6= d. The following transition can be derived
for A\c | d, assuming that rule 6 is instantiated with Z1 = {c} and Z2 = ∅:
x,y,z
A −−−−→ A0
x\{c}, y∪{c}, z\{c}
{d}, S\{d}\(z\{c}), z\{c}
d −−−−−−−−−−−−−−−−−−→ 0
A\c −−−−−−−−−−−−−−→ A0 \c
(x\{c})∪{d}, (y∪{c})\{d}, z\{c}
A\c | d −−−−−−−−−−−−−−−−−−−−−−→ A0 \c | 0
Moreover, still assuming Z1 = {c} and Z2 = ∅, the following transition for
(A | d)\c can be derived:
x,y,z
A −−−−→ A0
{d}, S\{d}\z, z
d −−−−−−−−−−−→ 0
x∪{d}, y\{d}, z
A | d −−−−−−−−−−−→ A0 | 0
(x∪{d})\{c}, (y\{d})∪{c}, z\{c}
(A | d)\c −−−−−−−−−−−−−−−−−−−−−−→ (A0 | 0)\c
Since A0 \c | 0 ≡ (A0 | 0)\c, both A\c | d and (A | d)\c are able to perform the
same transitions, yielding equivalent terms, thus the thesis holds for this case.
The other case, namely when Z1 = ∅ and Z2 = {c}, is analogous.
Theorem 1. Let (S, A) be a reaction system, γ = C0 , C1 , . . . , Cn be a context
sequence for some n ≥ 1. Then δ = D0 , D1 , . . . , Dn is the result sequence corresponding to γ, as defined by the semantics of reaction systems, iff h(x0 , y0 , z0 ),
(x1 , y1 , z1 ), . . . , (xn , yn , zn )i ∈ traces(η(S, A)), with ∀i. xi = Di , yi = Ci \ Di ,
and zi = S \ (Ci ∪ Di ).
Proof. In the following, given a set of elements X ⊆ S, its corresponding term
of the Reaction Algebra will be denoted as T (X). Formally, it is defined as
T (∅) = 0, and T ({c1 , . . . , ck }) = c1 | . . . | ck for k ≥ 1.
According to Proposition 1, given any initial term A0 and context sequence γ,
there always exists a unique run hA0 , (x0 , y0 , z0 ), A1 , (x1 , y1 , z1 ), . . . , An , (xn , yn ,
zn ), An+1 i with xi = fo(Ai ), yi = Ci \ xi , and zi = S \ (xi ∪ yi ).
Therefore, posing Ar = η(S, A) = r1 | . . . | rk for some reactions r1 , . . . , rk , it
suffices to prove that ∀A, A0 ∈ ΘS , ∀C, D ⊆ S:
D, C\D, S\(C∪D)
A ≡ Ar | T (D) ∧ A −−−−−−−−−−−−−→ A0 =⇒ A0 ≡ Ar | T (D0 )
with D0 = resA (C ∪ D).
The proof proceeds by induction on the set of reactions A. Let A = ∅. Given
C, D ⊆ S, it holds that D0 = resA (C ∪ D) = ∅. As regards the compositional
semantics, Ar | T (D) ≡ T (D). By a simple rule induction, it can be proved that
D, C\D, S\(C∪D)
T (D) −−−−−−−−−−−−−→ A0 , with A0 ≡ 0.
Let A = {(R, I, P )}. Given C, D ⊆ S, let D0 = resA (C ∪ D). The following
I
transition for R 7−
→ P | T (D) can be derived:
I
∅, C∪D, S\(C∪D)
R 7−
→ P −−−−−−−−−−−−−→ A0
I
D, C\D, S\(C∪D)
T (D) −−−−−−−−−−−−−→ 0
D, C\D, S\(C∪D)
R 7−
→ P | T (D) −−−−−−−−−−−−−→ A0 | 0
where A0 , according to the semantics of single reactions (Rules 1 and 2 of DefiI
I
nition 2) is either (i) A0 ≡ R 7−
→ P ≡ R 7−
→ P | T (∅), when resA (C ∪ D) = ∅; or
I
(ii) A0 ≡ R 7−
→ P | T (D0 ), when resA (C ∪ D) = D0 .
As regards the inductive case, let A = {r1 , . . . , rk }, with k ≥ 2, and assume
that the thesis holds for each proper subset of A. Let A1 = {r1 , . . . , rk−1 },
A2 = {rk }, and Di = resAi (C ∪ D) for i ∈ {1, 2}. By the definition of res,
D0 = resA (C ∪ D) = D1 ∪ D2 .
(1)
(2)
Let Ar = η(S, A1 ) and Ar = η(S, A2 ). By inductive hypothesis, we can
(i)
D, C\D, S\(C∪D)
(i)
assume Ar | T (D) −−−−−−−−−−−−−→ Ar | T (Di ), for i ∈ {1, 2}. Moreover, by
(1)
(2)
exploiting Definition 3, it holds that Ar | T (D) ≡ Ar | T (D) | Ar | T (D). Thus
the following transition can be derived:
(i)
D, C\D, S\(C∪D)
(i)
∀i ∈ {1, 2}. Ar | T (D) −−−−−−−−−−−−−→ Ar | T (Di )
(1)
D, C\D, S\(C∪D)
(2)
(1)
(2)
Ar | T (D) | Ar | T (D) −−−−−−−−−−−−−→ Ar | T (D1 ) | Ar | T (D2 )
(1)
(2)
Since Ar | T (D1 ) | Ar | T (D2 ) ≡ Ar | T (D0 ), this concludes the proof.
Theorem 2. Bisimulation over Reaction Algebra terms is a congruence.
Proof. The inference rules defining the semantics (Figure 1) respect the de Simone format [16], which ensures that bisimulation is a congruence.
Theorem 3. Let S be a finite background set. Then ∀A1 , A2 ∈ rac(S) : (S, A1 )∼S
(S, A2 ) ⇐⇒ η(S, A1 ) - η(S, A2 ).
Proof. Since the semantics of the Reaction Algebra is deterministic, bisimulation
equivalence coincides with trace equivalence [14], therefore it suffices to prove
that (S, A1 ) ∼S (S, A2 ) iff traces(η(S, A1 )) = traces(η(S, A2 )).
Let γ = C0 , . . . , Cn be a context sequence. Then, for j ∈ {1, 2}, let us denote
(j)
(j)
(i) by δj = D0 , . . . , Dn the result sequence of the reaction system (S, Aj )
corresponding to the given context sequence γ, and (ii) by tj ∈ traces(η(S, Aj ))
the trace of term η(S, Aj ) corresponding to γ. By Theorem 1, we can assume
(j)
(j)
(j)
(j)
(j) (j) (j)
(j) (j) (j)
tj = h(x0 , y0 , z0 ), . . . , (xn , yn , zn )i with ∀i. xi = Di , yi = Ci \ Di ,
(j)
(j)
zi = S \ (Ci ∪ Di ).
(1)
(2)
Recall that D0 = D0 = ∅, by definition. On the one hand, let us assume
that (S, A1 ) ∼S (S, A2 ), thus ∀T ⊆ S. resA1 (T ) = resA2 (T ). Then, according to
(1)
(2)
the semantics of reaction systems, it holds that ∀i. Di = Di ; hence t1 = t2 .
(1)
(2)
On the other hand, let us assume that t1 = t2 . Then ∀i. Di = Di , i.e. δ1 = δ2 .
© Copyright 2026 Paperzz