June 11, 2026
**Testing Theory of Truly Concurrent Processes**
— Yong Wang —
A process is able to execute a set of actions with a predefined manner, while a truly concurrent process executes this set of actions with a manner with the flavour of true concurrency.
The so-called truly concurrent process algebras [1] [2] bridge the true concurrency (such as Petri nets [3] [4] [5], event structures [6], etc), and the interleaving concurrency (such as CCS [7], CSP [8] [9], ACP [10], etc).
In this paper, we give truly concurrent processes testing semantics followed by Hennessy’s great work [11], which inherits the trinity of operational semantics, axiomatic semantics and denotational semantics.
For self-satisfactory, in this section, we introduce the preliminaries on set in 2.1 and multiset in 2.2.
Definition 1 (Set). A set contains some objects, and let \(\{-\}\) denote the contents of a set. For instance, \(\mathbb{N}=\{1,2,3,\cdots\}\). Let \(a\in A\) denote that \(a\) is an element of the set \(A\) and \(a\notin A\) denote that \(a\) is not an element of the set \(A\). For all \(a\in A\), if we can get \(a\in B\), then we say that \(A\) is a subset of \(B\) denoted \(A\subseteq B\). If \(A\subseteq B\) and \(B\subseteq A\), then \(A=B\). We can define a new set by use of predicates on the existing sets, such that \(\{n\in\mathbb{N}|\exists k\in\mathbb{N},n=2k\}\) for the set of even numbers. We can also specify a set to be the least set satisfy some inductive inference rules, for instance, we specify the set of even numbers \(A\) satisfying the following rules:
\[\frac{}{0\in A}\quad\quad\frac{n\in A}{n+2\in A}\]
Definition 2 (Set composition). The union of two sets \(A\) and \(B\), is denoted by \(A\cup B=\{a|a\in A or a\in B\}\), and the intersection of \(A\) and \(B\) by \(A\cap B=\{a|a\in A and a\in B\}\), the difference of \(A\) and \(B\) by \(A\setminus B=\{a|a\in A and a\notin B\}\). The empty set \(\emptyset\) contains nothing. The set of all subsets of a set \(A\) is called the powerset of \(A\) denoted \(2^A\).
Definition 3 (Tuple). A tuple is a finite and ordered list of objects and denoted \(\langle -\rangle\). For sets \(A\) and \(B\), the Cartesian product of \(A\) and \(B\) is denoted by \(A\times B=\{\langle a,b\rangle|a\in A,b\in B\}\). \(A^n\) is the \(n\)-fold Cartesian product of set \(A\), for instance, \(A^2=A\times A\). Tuples can be flattened as \(A\times (B\times C)=(A\times B)\times C=A\times B\times C\) for sets \(A\), \(B\) and \(C\).
Definition 4 (Relation). A relation \(R\) between sets \(A\) and \(B\) is a subset of \(A\times B\), i.e., \(R\subseteq A\times B\). We say that \(R\) is a relation on set \(A\) if \(R\) is a relation between \(A\) and itself, and,
\(R\) is reflexive if for all \(a\in A\), \(aRa\) holds; it is irreflexive if for all \(a\in A\), \(aRa\) does not hold.
\(R\) is symmetric if for all \(a,a'\in A\) with \(aRa'\), then \(a'Ra\) holds; it is antisymmetric if for all \(a,a'\in A\) with \(aRa'\) and \(a'Ra\), then \(a=a'\).
\(R\) is transitive if for all \(a,a',a''\in A\) with \(aRa'\) and \(a'Ra''\), then \(aRa''\) holds.
Definition 5 (Preorder, partial order, strict order). If a relation \(R\) is reflexive and transitive, we call that it is a preorder; When it is a preorder and antisymmetric, it is called a partial order, and a partially ordered set (poset) is a pair \(\langle A,R\rangle\) with a set \(A\) and a partial order \(R\) on \(A\); When it is irreflexive and transitive, it is called a strict order.
Definition 6 (Equivalence). A relation \(R\) is called an equivalence, if it is reflexive, symmetric and transitive. For an equivalent relation \(R\) and a set \(A\), \([a]_R=\{a'\in A|aRa'\}\) is called the equivalence class of \(a\in A\).
Definition 7 (Relation composition). For sets \(A\), \(B\) and \(C\), and relations \(R\subseteq A\times B\) and \(R'\subseteq B\times C\), the relational composition denoted \(R\circ R'\), is defined as the least relation \(a(R\circ R')c\) satisfying \(aRb\) and \(bR'c\) with \(a\in A\), \(b\in B\) and \(c\in C\). For a relation \(R\) on set \(A\), we denote \(R^*\) for the reflexive and transitive closure of \(R\), which is the least reflexive and transitive relation on \(A\) that contains \(R\).
Definition 8 (Function). A function \(f:A\rightarrow B\) from sets \(A\) to \(B\) is a relation between \(A\) and \(B\), i.e., for every \(a\in A\), there exists one \(b=f(a)\in B\), where \(A\) is called the domain of \(f\) and \(B\) the codomain of \(f\). \(\llbracket -\rrbracket\) is also used as a function with \(-\) a placeholder, i.e., \(\llbracket x\rrbracket\) is the value of \(\llbracket -\rrbracket\) for input \(x\). A function \(f\) is a bijection if for every \(b\in B\), there exists exactly one \(a\in A\) such that \(b=f(a)\). For functions \(f:A\rightarrow B\) and \(g:B\rightarrow C\), the functional composition of \(f\) and \(g\) denoted \(g\circ f\) such that \((g\circ f)(a)=g(f(a))\) for \(a\in A\).
Definition 9 (Labelled poset). A labelled poset is a tuple \(\mathbf{u}=\langle S, \leq, \lambda\rangle\), where \(S\) is the carrier set, \(\leq\) is a partial order on \(S\) and \(\lambda\) is a labelling function \(\lambda:S\rightarrow\Sigma\).
For a labelled poset \(\mathbf{u}\), \(S_{\mathbf{u}}\), \(\leq_{\mathbf{u}}\) and \(\lambda_{\mathbf{u}}\) denote the carrier, the partial order and the labelling of \(\mathbf{u}\) respectively. The set of labelled posets is denoted \(\mathsf{LP}\) and the empty labelled poset is \(1\).
Definition 10 (Poset morphism). For posets \(\langle A,\leq\rangle\) and \(\langle A',\leq'\rangle\) and function \(\varphi:A\rightarrow A'\), \(f\) is called a poset morphism if for \(a_0,a_1\in A\) with \(a_0\leq a_1\), then \(\varphi(a_0)\leq' \varphi(a_1)\) holds.
Definition 11 (Labelled poset isomorphism). Let \(\mathbf{u}=\langle S_1,\leq_1,\lambda_1\rangle\) and \(\mathbf{v}=\langle S_2,\leq_2,\lambda_2\rangle\) be labelled posets. A labelled poset morphism \(\varphi\) from \(\mathbf{u}=\langle S_1,\leq_1,\lambda_1\rangle\) to \(\mathbf{v}=\langle S_2,\leq_2,\lambda_2\rangle\) is a poset morphism from \(\langle S_1,\leq_1\rangle\) and \(\langle S_2,\leq_2\rangle\) with \(\lambda_2\circ \varphi=\lambda_1\). Moreover, \(\varphi\) is a labelled poset isomorphism if it is a bijection with \(\varphi^{-1}\) is a poset isomorphism from \(\langle S_2,\leq_2,\lambda_2\rangle\) to \(\langle S_1,\leq_1,\lambda_1\rangle\). We say that \(\mathbf{u}=\langle S_1,\leq_1,\lambda_1\rangle\) is isomorphic to \(\mathbf{v}=\langle S_2,\leq_2,\lambda_2\rangle\) denoted \(\langle S_1,\leq_1,\lambda_1\rangle\sim\langle S_2,\leq_2,\lambda_2\rangle\), if there exists a poset isomorphism \(\varphi\) between \(\langle S_1,\leq_1,\lambda_1\rangle\) and \(\langle S_2,\leq_2,\lambda_2\rangle\).
Definition 12 (Multiset). A multiset is a kind of set of objects which may be repetitive denoted \(\{\mskip-4mu|-|\mskip-4mu\}\), such that \(\{\mskip-4mu|a,b,b|\mskip-4mu\}\) is significantly distinguishable from \(\{\mskip-4mu|a,b|\mskip-4mu\}\).
Definition 13 (Pomset). A partially ordered multiset, pomset, is a \(\sim\)-equivalence class of posets. The set of pomsets is denoted \(\mathsf{Pom}\); the empty pomset is denoted \(\mathbf{1}\) and the \(\sim\)-equivalence class of \(1\) is also denoted by \(1\). If there does not exist partial orders between any two objects in a pomset, such pomset is called a step denoted \(\langle\mskip-4mu|-|\mskip-4mu\rangle\). The set of steps is denoted \(\mathsf{Stp}\).
Definition 14 (Strict pomset). For a step \(\langle\mskip-4mu|a,b|\mskip-4mu\rangle\), there is no partial orders between \(a\) and \(b\). With a little abuse of concepts, a reflexive partial order \(\leq\) contains two cases: one for strict partial order \(<\) and the other for \(=\). We let \(\langle\mskip-4mu|a,b|\mskip-4mu\rangle=\{\mskip-4mu|a,b|a\leq b|\mskip-4mu\}\cup\{\mskip-4mu|a,b|b\leq a|\mskip-4mu\}\), and each \(\{\mskip-4mu|a,b|a\leq b|\mskip-4mu\}\) or \(\{\mskip-4mu|a,b|b\leq a|\mskip-4mu\}\) is called a strict pomset. The set of strict pomsets is denoted \(\mathsf{SPom}\); the empty strict pomset is denoted \(\mathbf{1}\) and the \(\sim\)-equivalence class of \(1\) is also denoted by \(1\).
We assume that the partial order \(\leq\) can be divided into two kinds: execution order \(\leq^{e}\) and communication \(\leq^{c}\). In the same parallel branch, the partial orders usually execution orders and communication usually exists among different parallel branches. Of course, parallel branches can be nested. Then, we can get the following definitions naturally.
Definition 15 (Labelled poset with communications). A labelled poset with communications is a tuple \(\mathbf{u}=\langle S, \leq^{e}, \leq^{c}, \lambda\rangle\), where \(S\) is the carrier set, \(\leq^{e}\) is an execution order on \(S\), \(\leq^{c}\) is a communication on \(S\), and \(\lambda\) is a labelling function \(\lambda:S\rightarrow\Sigma\). We usually use \(\mathbf{u},\mathbf{v}\) to denote labelled posets with communications. And the set of labelled posets with communications is denoted \(\mathsf{LPC}\), and the empty labelled poset with communications is \(1\).
Definition 16 (Labelled poset isomorphism). Let \(\mathbf{u}=\langle S_1,\leq^{e}_1,\leq^{c}_1,\lambda_1\rangle\) and \(\mathbf{v}=\langle S_2,\leq^{e}_2, \leq^{c}_2,\lambda_2\rangle\) be labelled posets. A labelled poset morphism \(h\) from \(\langle S_1,\leq^{e}_1,\leq^{c}_1,\lambda_1\rangle\) to \(\langle S_2,\leq^{e}_2,\leq^{c}_2,\lambda_2\rangle\) is a poset morphism from \(\langle S_1,\leq^{e}_1,\leq^{c}_1\rangle\) and \(\langle S_2,\leq^{e}_2,\leq^{c}_2\rangle\) with \(\lambda_2\circ h=\lambda_1\). Moreover, \(h\) is a labelled poset isomorphism if it is a bijection with \(h^{-1}\) is a poset isomorphism from \(\langle S_2,\leq^{e}_2,\leq^{c}_2,\lambda_2\rangle\) to \(\langle S_1,\leq^{e}_1,\leq^{c}_1,\lambda_1\rangle\). We say that \(\mathbf{u}=\langle S_1,\leq^{e}_1,\leq^{c}_1,\lambda_1\rangle\) is isomorphic to \(\mathbf{v}=\langle S_2,\leq^{e}_2,\leq^{c}_2,\lambda_2\rangle\) denoted \(\langle S_1,\leq^{e}_1,\leq^{c}_1,\lambda_1\rangle\sim\langle S_2,\leq^{e}_2,\leq^{c}_2,\lambda_2\rangle\), if there exists a poset isomorphism \(h\) between \(\langle S_1,\leq^{e}_1,\leq^{c}_1,\lambda_1\rangle\) and \(\langle S_2,\leq^{e}_2,\leq^{c}_2,\lambda_2\rangle\).
It is easy to see that \(\sim\) is an equivalence and can be used to abstract from the carriers.
Definition 17 (Pomset with communications). A partially ordered multiset with communications, pomsetc, is a \(\sim\)-equivalence class of labelled posets with communications \(\mathbf{u}\), written as \([\mathbf{u}]\), i.e., \([\mathbf{u}]=\{\mathbf{v}\in \mathsf{LPC}:\mathbf{u}\sim\mathbf{v}\}\). The set of pomsetcs is also denoted \(\mathsf{Pom}\); the empty labelled poset with communications is denoted \(1\) and the \(\sim\)-equivalence class of \(1\) is denoted by \(1\); the pomsetc containing exactly one action \(a\in\Sigma\) is called primitive.
Concurrency includes parallelism and communication, then, we can get the following definitions of Pomsetc compositions.
Definition 18 (Pomsetc composition in parallel). Let \(U,V\in\mathsf{Pomc}\) with \(U=[\mathbf{u}]\) and \(V=[\mathbf{v}]\). We write \(U\parallel V\) for the parallel composition of \(U\) and \(V\), which is the pomsetc represented by \(\mathbf{u}\parallel\mathbf{v}\), where
\[S_{\mathbf{u}\parallel\mathbf{v}}=S_{\mathbf{u}}\cup S_{\mathbf{v}} \quad\quad\leq^{e}_{\mathbf{u}\parallel\mathbf{v}}=\leq^{e}_{\mathbf{u}}\cup\leq^{e}_{\mathbf{v}} \quad\quad\leq^{c}_{\mathbf{u}\parallel\mathbf{v}}=\leq^{c}_{\mathbf{u}}\cup\leq^{c}_{\mathbf{v}} \quad\quad\lambda_{\mathbf{u}\parallel\mathbf{v}}(x)=\begin{cases} \lambda_{\mathbf{u}},& x\in S_{\mathbf{u}};\\ \lambda_{\mathbf{v}},& x\in S_{\mathbf{v}}. \end{cases}\]
Definition 19 (Pomsetc composition in communication). Let \(U,V\in\mathsf{Pomc}\) with \(U=[\mathbf{u}]\) and \(V=[\mathbf{v}]\). We write \(U\mid V\) for the communicative composition of \(U\) and \(V\), which is the pomsetc represented by \(\mathbf{u}\mid\mathbf{v}\), where
\[S_{\mathbf{u}\mid\mathbf{v}}=S_{\mathbf{u}}\cup S_{\mathbf{v}} \quad\quad\leq^{e}_{\mathbf{u}\mid\mathbf{v}}=\leq^{e}_{\mathbf{u}}\cup\leq^{e}_{\mathbf{v}} \quad\quad\leq^{c}_{\mathbf{u}\mid\mathbf{v}}=\leq^{c}_{\mathbf{u}}\cup\leq^{c}_{\mathbf{v}}\cup(S_{\mathbf{u}}\times S_{\mathbf{v}}) \quad\quad\lambda_{\mathbf{u}\mid\mathbf{v}}(x)=\begin{cases} \lambda_{\mathbf{u}},& x\in S_{\mathbf{u}};\\ \lambda_{\mathbf{v}},& x\in S_{\mathbf{v}}. \end{cases}\]
Definition 20 (Pomsetc composition in concurrency). Let \(U,V\in\mathsf{Pomc}\) with \(U=[\mathbf{u}]\) and \(V=[\mathbf{v}]\). We write \(U\between V\) for the concurrent composition of \(U\) and \(V\), which is the pomsetc represented by \(\mathbf{u}\between\mathbf{v}\), where
\[S_{\mathbf{u}\between\mathbf{v}}=S_{\mathbf{u}}\cup S_{\mathbf{v}} \quad\leq^{e}_{\mathbf{u}\between\mathbf{v}}=\leq^{e}_{\mathbf{u}}\cup\leq^{e}_{\mathbf{v}} \quad\leq^{c}_{\mathbf{u}\between\mathbf{v}}=\leq^{c}_{\mathbf{u}}\cup\leq^{c}_{\mathbf{v}}or \leq^{c}_{\mathbf{u}\between\mathbf{v}}=\leq^{c}_{\mathbf{u}}\cup\leq^{c}_{\mathbf{v}}\cup(S_{\mathbf{u}}\times S_{\mathbf{v}}) \quad\lambda_{\mathbf{u}\between\mathbf{v}}(x)=\begin{cases} \lambda_{\mathbf{u}},& x\in S_{\mathbf{u}};\\ \lambda_{\mathbf{v}},& x\in S_{\mathbf{v}}. \end{cases}\]
Definition 21 (Pomsetc composition in sequence). Let \(U,V\in\mathsf{Pomc}\) with \(U=[\mathbf{u}]\) and \(V=[\mathbf{v}]\). We write \(U\cdot V\) for the sequential composition of \(U\) and \(V\), which is the pomsetc represented by \(\mathbf{u}\cdot\mathbf{v}\), where
\[S_{\mathbf{u}\cdot\mathbf{v}}=S_{\mathbf{u}}\cup S_{\mathbf{v}} \quad\quad\leq^{e}_{\mathbf{u}\cdot\mathbf{v}}=\leq^{e}_{\mathbf{u}}\cup\leq^{e}_{\mathbf{v}}\cup(S_{\mathbf{u}}\times S_{\mathbf{v}}) \quad\quad\leq^{c}_{\mathbf{u}\cdot\mathbf{v}}=\leq^{c}_{\mathbf{u}}\cup\leq^{c}_{\mathbf{v}} \quad\quad\lambda_{\mathbf{u}\cdot\mathbf{v}}(x)=\begin{cases} \lambda_{\mathbf{u}},& x\in S_{\mathbf{u}};\\ \lambda_{\mathbf{v}},& x\in S_{\mathbf{v}}. \end{cases}\]
The following definitions and conclusions are coming from [12], we retype them.
Definition 22 (Pomset types). Let \(U\in\mathsf{Pom}\), \(U\) is sequential (resp. parallel) if there exist non-empty pomsets \(U_1\) and \(U_2\) such that \(U=U_1\cdot U_2\) (resp. \(U=U_1\parallel U_2\)).
Definition 23 (Factorization). Let \(U\in\mathsf{Pom}\). (1) When \(U=U_1\cdot\cdots \cdot U_i\cdot\cdots \cdot U_n\) with each \(U_i\) non-sequential and non-empty, the sequence \(U_1,\cdots,U_i,\cdots,U_n\) is called a sequential factorization of \(U\). (2) When \(U=U_1\parallel\cdots \parallel U_i\parallel\cdots \parallel U_n\) with each \(U_i\) non-parallel and non-empty, the multiset \(\{\mskip-4mu|U_1,\cdots,U_i,\cdots,U_n|\mskip-4mu\}\) is called a parallel factorization of \(U\).
Lemma 1 (Factorization). Sequential and parallel factorizations exist uniquely.
Lemma 2. For \(U\in\mathsf{Pomc}\), then the following two conclusions hold:
\(U\) is either sequential or parallel, and there are not other types in \(U\).
Sequential and parallel factorizations exist in \(U\) uniquely.
Definition 24 (Series-parallel pomset). The set of series-parallel pomset, or sp-pomsets denoted \(\mathsf{SP}\), is the smallest set satisfying the following rules:
\[\frac{}{1\in\mathsf{SP}} \quad\frac{a\in\Sigma}{a\in\mathsf{SP}} \quad\frac{U,V\in\mathsf{SP}}{U\cdot V\in\mathsf{SP}} \quad\frac{U,V\in\mathsf{SP}}{U\parallel V\in\mathsf{SP}}\]
Definition 25 (Series-communication-parallel pomsetc). The set of series-communication-parallel pomsetcs, or scp-pomsetcs denoted \(\mathsf{SCP}\), is the smallest set satisfying the following rules:
\[\frac{}{1\in\mathsf{SCP}} \quad\frac{a\in\Sigma}{a\in\mathsf{SCP}} \quad\frac{U,V\in\mathsf{SCP}}{U\cdot V\in\mathsf{SCP}} \quad\frac{U,V\in\mathsf{SCP}}{U\parallel V\in\mathsf{SCP}} \quad\frac{U,V\in\mathsf{SCP}}{U\mid V\in\mathsf{SCP}} \quad\frac{U,V\in\mathsf{SCP}}{U\between V\in\mathsf{SCP}}\]
Definition 26 (N-shape1). Let \(U=[\mathbf{u}]\) be a pomset. An N-shape1 in \(U\) is a quadruple \(u_0,u_1,u_2,u_3\in S_{\mathbf{u}}\) of distinct points such that \(u_0\leq_{\mathbf{u}}u_1\), \(u_2\leq_{\mathbf{u}}u_3\) and \(u_0\leq_{\mathbf{u}}u_3\) and their exists no other relations among them. A pomset \(U\) is N-free if it has no N-shape1s.
Definition 27 (N-shape2). Let \(U=[\mathbf{u}]\) be a pomsetc. An N-shape2 in \(U\) is a quadruple \(u_0,u_1,u_2,u_3\in S_{\mathbf{u}}\) of distinct points such that \(u_0\leq^{e}_{\mathbf{u}}u_1\), \(u_2\leq^{e}_{\mathbf{u}}u_3\) and \(u_0\leq^{c}_{\mathbf{u}}u_3\) and their exists no other relations among them.
The definition of N-shape2 in Definition 27 is based on the assumption that partial orders (causalities) among different parallel branches are all communications.
Theorem 1 (N-shape1). A pomset is series-parallel if and only if it is N-shape1-free in Definition 26.
Theorem 2 (N-shape2). A pomsetc is series-communication-parallel if and only if it only contains N-shape2s in Definition 27.
Theorem 3 (Series-communication-parallelism to series-parallelism). A series-communication-parallel pomsetc \(U\) can be translated into a series-parallel pomset \(U'\) if all the communications are all synchronous, i.e., for all \(u_i\leq^{c} u_j\) in \(U\), \(u_i,u_j\) can merge into a single \(\gamma(u_i,u_j)\) in \(U'\), where \(\gamma(u_i,u_j)\) is the communication function between \(u_i\) and \(u_j\).
So, in the following chapters, assume that all pomsets are series-parallel and all pomsetcs are series-communication-parallel. With a little of abuse of notions, we use \(\mathsf{Pom}\), \(\mathsf{Pomc}\), \(\mathsf{SP}\) and \(\mathsf{SCP}\) without distinctions.
In Scott-Strachey approach [13] of denotational semantics, domains are the key concepts. In this chapter, we introduce the related concepts of \(\Sigma\)-domain, which are coming from algebraic semantics [14] [15] [11].
Firstly, we introduce \(\Sigma\)-algebra related concepts in 3.1, then we introduce equational classes in 3.2 and inequational classes in 3.3. Finally, we introduce continuous algebras in 3.4.
Definition 28 (Signature). A signature \(\Sigma\) consists of a finite set of function symbols (or operators) \(f,g,\cdots\), where each function symbol \(f\) has an arity \(ar(f)\), being its number of arguments. A function symbol \(a,b,c,\cdots\) of arity zero* is called a constant, a function symbol of arity one is called unary, and a function symbol of arity two is called binary.*
Definition 29 (\(\Sigma\)-algebra). Let \(\Sigma\) be a signature. A \(\Sigma\)-algebra consists of \(\langle A, \Sigma_A\rangle\), where:
\(A\) is the carrier set.
\(\Sigma_A\) is a set of functions \(\{f_A:A^{ar(f)}\rightarrow A|f\in\Sigma\}\).
Sometimes, we use \(A\) to denote \(\langle A, \Sigma_A\rangle\).
Definition 30 (Term algebra). For every signature \(\Sigma\), there is a particular \(\Sigma\)-algebra called term algebra for \(\Sigma\), denoted \(T_{\Sigma}\), the carriers consist of terms (strings) and the functions of the term algebras merely manipulate these terms. Let \(T_{\Sigma}\) be the least set of terms satisfying:
If \(f\in\Sigma\) and \(ar(f)=0\), then the term consisting of \(f\) is in \(T_{\Sigma}\).
If \(f\in\Sigma\) and \(ar(f)>0\), and \(t_1,\cdots,t_{ar(f)}\in T_{\Sigma}\), then \(f(t_1,\cdots,t_{ar(f)})\in T_{\Sigma}\).
Definition 31 (\(\Sigma\)-homomorphism). A mapping \(\varphi:A\rightarrow B\) between two \(\Sigma\)-algebras \(\langle A,\Sigma_A\rangle\) and \(\langle B,\Sigma_B\rangle\) is a \(\Sigma\)-homomorphism if for every \(f\in\Sigma\) and \(d_1,\cdots,d_{ar(f)}\in A\), it holds that:
\[\varphi(f_A(d_1,\cdots,d_{ar(f)}))=f_B(\varphi(d_1),\cdots,\varphi(d_{ar(f)}))\]
Proposition 4 (\(\Sigma\)-homomorphism composition and identity \(\Sigma\)-homomorphism). Let \(\langle A,\Sigma_A\rangle\), \(\langle B,\Sigma_B\rangle\) and \(\langle C,\Sigma_C\rangle\) be \(\Sigma\)-algebras.
If \(\varphi:A\rightarrow B\) and \(\psi:B\rightarrow C\) be \(\Sigma\)-homomorphisms, then their composition \(\psi\circ\varphi:A\rightarrow C\) is also a \(\Sigma\)-homomorphism.
The identity \(i_A:A\rightarrow A\) is also a \(\Sigma\)-homomorphism.
For every \(\Sigma\)-algebra \(\langle A, \Sigma_A\rangle\), there exists a unique \(\Sigma\)-homomorphism \(i_A:T_{\Sigma}\rightarrow A\).
Definition 32 (\(\Sigma\)-isomorphism). A \(\Sigma\)-homomorphism \(\varphi:A\rightarrow B\) is called \(\Sigma\)-isomorphic if it is a bijection.
Proposition 5 (\(\Sigma\)-isomorphism). \(\langle A,\Sigma_A\rangle\) and \(\langle B,\Sigma_B\rangle\) are isomorphic if and only if there exist two \(\Sigma\)-homomorphisms, \(\varphi:A\rightarrow B\) and \(\psi:B\rightarrow A\), such that:
\(\varphi\circ\psi=id_B\).
\(\psi\circ\varphi=id_A\).
Definition 33 (Initiality). Let \(\mathscr{C}\) be a class of \(\Sigma\)-algebras. A \(\Sigma\)-algebra \(I\) is called initial in \(\mathscr{C}\) if for every \(\Sigma\)-algebra \(J\) in \(\mathscr{C}\) there exists a unique \(\Sigma\)-homomorphism \(\varphi\) from \(I\) to \(J\).
Corollary 1 (Initiality). If \(I_1,I_2\) are initial in class \(\mathscr{C}\) of \(\Sigma\)-algebras, then they are isomorphic.
Definition 34 (\(\Sigma\)-congruence). Let \(\langle A, \Sigma_A\rangle\) be a \(\Sigma\)-algebra. An equivalent relation \(R\) over \(A\) is a \(\Sigma\)-congruence, if for every \(f\in\Sigma\) with arity \(ar(f)\) and \(\langle a_i,a_i'\rangle\in R\) for every \(i\) with \(0\leq i\leq ar(f)\), then \(\langle f_A(a_1,\cdots,a_{ar(f)}),f_A(a_1',\cdots,a_{ar(f)}')\rangle\in R\).
Definition 35 (Equivalence classes). Given a \(\Sigma\)-algebra \(\langle A,\Sigma_A\rangle\), for every \(a\in A\), the equivalence class of \(a\) under an equivalent relation \(R\), denoted \([a]_R\) with \([a]_R=\{a'|\langle a, a'\rangle\in R\}\). Let \(A/R\) be the set of equivalence classes induced by \(R\) over \(A\) with \(A/R=\{[a]_R|a\in A\}\). And for every \(f\in\Sigma\), the mapping over \(A/R\) is defined as:
\[f_{A/R}([a_1]_R,\cdots,[a_{ar(f)}]_R)=[f_A(a_1,\cdots,a_{ar(f)})]_R\]
For a \(\Sigma\)-congruence \(R\) over \(A\), \(\langle A,\Sigma_A\rangle\) satisfies \(R\) if \(i_A(t)=i_A(t')\) whenever \(\langle t, t'\rangle\in R\). And let \(\mathscr{C}(R)\) be the class of all \(\Sigma\)-algebras satisfying \(R\).
Lemma 3. Let \(\langle A, \Sigma_A\rangle\) be a \(\Sigma\)-algebra and \(R\) be an equivalent relation over \(A\).
\(\langle A/R,\Sigma_{A/R}\rangle\) is a \(\Sigma\)-algebra.
The natural injection mapping \(in:A\rightarrow A/R\), defined by \(in(a)=[a]_R\) for \(a\in A\), is a \(\Sigma\)-homomorphism.
Theorem 6 (Initiality for congruences). For a \(\Sigma\)-congruence \(R\), the \(\Sigma\)-algebra \(T_{\Sigma}/R\) is initial in the class \(\mathscr{C}(R)\).
By allowing the occurrences of variables \(x,x_1,x_2\cdots\in X\) in a signature \(\Sigma\), we can get of the extended signature denoted \(\Sigma(X)\). Similarly, the term algebra \(T_{\Sigma}(X)\) is extended from \(T_{\Sigma}\), the elements of \(T_{\Sigma}\) are called closed terms (we often refer them as processes), while the ones of \(T_{\Sigma}(X)\) are called open terms. An \(A\)-assignment for \(X\) is a mapping \(\sigma_A:X\rightarrow A\), while a substitution \(\sigma(X)\) is a \(T_{\Sigma}(X)\)-assignment by mapping each \(x\in X\) to a term in \(T_{\Sigma}(X)\). For each \(x_i\) in a variable sequence \(\underline{x}\), if \(\sigma(x_i)\) is a closed term in \(T_{\Sigma}\), then \(\sigma\) is called a closed substitution. We write \(t\sigma\) for \(\sigma(t)\) and \(t(\sigma\circ\sigma')=(t\sigma')\sigma\) with \(t\in T_{\Sigma}(X)\), which is called an instantiation of \(t\).
Theorem 7 (Freeness). If \(A\) is a \(\Sigma\)-algebra and \(\sigma_A\) an \(A\)-assignment for \(X\), then there exists a unique \(\Sigma\)-homomorphism \(\varphi_A\) from \(T_{\Sigma}(X)\) to \(A\) such that \(\varphi_A(x)=\sigma_A(x)\) for every \(x\in X\).
Lemma 4 (Substitution lemma). For every \(A\)-assignment \(\sigma_A\) and every substitution \(\sigma\), the unique extension of the \(A\)-assignment \(\sigma_A\circ\sigma\) to \(T_{\Sigma}(X)\) is given by the function \(\varphi(t)=\sigma_A(t\sigma)\), where \(t\in T_{\Sigma}(X)\).
Definition 36 (Equational relation). For a \(\Sigma\)-algebra \(\langle A,\Sigma_A\rangle\), we define an equational relation \(=_A\) over \(A\), which satisfying:
It is an equivalent relation.
It is closed under substitutions.
It is closed under instantiations.
A set of \(\Sigma\)-equations \(E\) contains equations such as \(t=t'\) with \(t,t'\in T_{\Sigma}(X)\), \(\langle A, \Sigma_A\rangle\) satisfies \(E\) if \(E\subseteq =_A\). Let \(\mathscr{C}(E)\) be the class of \(\Sigma\)-algebras satisfying \(E\).
Theorem 8 (Initiality for equations). For every set of \(\Sigma\)-equations \(E\), \(\mathscr{C}(E)\) has an initial \(\Sigma\)-algebra.
Definition 37 (Proof system). A system of equational deductions by whose equations in \(E\) can be used to derive equations, denoted \(\mathbf{DED}(E)\). It contains the following six rules, where \(t,t'\in T_{\Sigma}(X)\), \(f\in\Sigma\) and \(\sigma\) is a substitution:
Reflexivity: \[\frac{}{t=t}\]
Symmetry: \[\frac{t=t'}{t'=t}\]
Transitivity: \[\frac{t=t',t'=t''}{t=t''}\]
Substitution: \[\frac{t_1=t_1',\cdots,t_{ar(f)}=t_{ar(f)}'}{f(t_1,\cdots,t_{ar(f)})=f(t_1',\cdots,t_{ar(f)}')}\]
Instantiation: \[\frac{t=t'}{t\sigma=t'\sigma}\]
Equations: for every \(\langle t,t'\rangle\in E\), \[\frac{}{t=t'}\]
A proof is a sequence of deductions by use of the above six rules. If \(t=t'\) is the last proof statement, denoted \(\vdash_E t=t'\), then it is called a theorem of \(\mathbf{DED}(E)\). And \(t=_E t'\) if and only if \(\vdash_E t=t'\).
Lemma 5. For \(t,t'\in T_{\Sigma}(X)\), if \(\vdash_E t=t'\) and \(A\) satisfies \(E\) then \(t=_A t'\), i.e., \(E\subseteq =_A\) implies \(=_E\subseteq =_A\).
Corollary 2 (Initiality for equations). \(T_{\Sigma}/=_E\) is initial in \(\mathscr{C}(E)\).
Definition 38 (Soundness and completeness). Let \(R\) be a relation on \(T_{\Sigma}(X)\).
The proof system \(\mathbf{DED}(E)\) is sound with respect to \(R\) if \(\vdash_E t=t'\) implies \(\langle t,t'\rangle\in R\).
The proof system \(\mathbf{DED}(E)\) is complete with respect to \(R\) if \(\langle t,t'\rangle\in R\) implies \(\vdash_E t=t'\).
Theorem 9 (Equational logic theorem). \(\mathscr{C}(E)\) has a unique initial \(\Sigma\)-algebra up to \(\Sigma\)-isomorphism denoted by \(I_E\). Then,
\(\mathbf{DED}(E)\) is sound with respect to \(=_{I_E}\).
\(\mathbf{DED}(E)\) is complete with respect to \(=_{I_E}\), restricted to \(T_{\Sigma}\).
Definition 39 (Partial order). Let \(\langle A, \leq_A\rangle\) be a partial order. A function \(f:A\rightarrow A\) is monotonic if \(a\leq_A a'\) implies \(f(a)\leq_A f(a')\). For \(\underline{a},\underline{a}'\in A^k\), \(\underline{a}\leq_A\underline{a}'\), if for each \(1\leq i\leq k\), \(a_i\leq a_i'\), then \(f:A^k\rightarrow A\) is monotonic of \(\underline{a}\leq_A\underline{a}'\) implies \(f(\underline{a})\leq_A f(\underline{a}')\). A relaxed monotonicity requires that \(\underline{a}\leq_A'\underline{a}'\) implies \(f(\underline{a})\leq_A f(\underline{a}')\), where \(\underline{a}\leq_A'\underline{a}'\) if there exists \(1\leq j\leq k\), such that \(a_j\leq_A a_j'\) and for every \(i\neq j\), \(a_i=a_i'\).
Definition 40 (\(\Sigma\)-po algebra). Let \(\Sigma\) be a signature. A \(\Sigma\)-po algebra consists of \(\langle A, \leq_A, \Sigma_A\rangle\), where:
\(A\) is the carrier set.
\(\leq_A\) is a partial order over \(A\).
\(\Sigma_A\) is a set of monotonic functions \(\{f_A:A^{ar(f)}\rightarrow A|f\in\Sigma\}\) with respect to \(\leq_A\).
Sometimes, we use \(A\) to denote \(\langle A, \leq_A, \Sigma_A\rangle\).
Definition 41 (\(\Sigma\)-po homomorphism). A mapping \(\varphi:A\rightarrow B\) between two \(\Sigma\)-po algebras \(\langle A,\leq_A,\Sigma_A\rangle\) and \(\langle B,\leq_B,\Sigma_B\rangle\) is a \(\Sigma\)-po homomorphism if:
for every \(f\in\Sigma\), it holds that \(\varphi(f_A(\underline{a}))=f_B(\varphi(\underline{a}))\).
\(a\leq_A a'\) implies \(\varphi(a)\leq_A\varphi(a')\).
A \(\Sigma\)-po homomorphism is \(\Sigma\)-po isomorphic if it is has an inverse.
Theorem 10 (Freeness). If \(A\) is a \(\Sigma\)-po algebra and \(\sigma_A\) an \(A\)-assignment for \(X\), then there exists a unique \(\Sigma\)-po homomorphism \(\varphi_A\) from \(T_{\Sigma}(X)\) to \(A\) such that \(\varphi_A(x)=\sigma_A(x)\) for every \(x\in X\).
Definition 42 (\(\Sigma\)-preorder). For a \(\Sigma\)-po algebra \(\langle A,\leq_A,\Sigma_A\rangle\), we define a \(\Sigma\)-preorder relation \(\sqsubseteq\) over \(A\), which satisfying for \(a,a',a''\in A\) and \(f\in\Sigma\):
\(a\sqsubseteq a\).
\(a\sqsubseteq a'\), \(a'\sqsubseteq a''\) implies \(a\sqsubseteq a''\).
\(a\leq_A a'\) implies \(a\sqsubseteq a'\).
\(\underline{a}\sqsubseteq\underline{a}'\) implies \(f_A(\underline{a})\sqsubseteq f_A(\underline{a}')\)
By replacing the partial order \(\leq_A\) with the preorder \(\sqsubseteq\), we can obtain new \(\Sigma\)-po algebras.
Definition 43 (Equivalence classes). Given a \(\Sigma\)-po algebra \(\langle A,\sqsubseteq, \Sigma_A\rangle\), let \(\sim\) be the kernel of \(\sqsubseteq\), for every \(a\in A\), the equivalence class of \(a\) under an equivalent relation \(\sim\), denoted \([a]_{\sqsubseteq}\) with \([a]_{\sqsubseteq}=\{a'|\langle a, a'\rangle\in \sim\}\). Let \(A/\sqsubseteq\) be the set of equivalence classes induced by \(\sqsubseteq\) over \(A\) with \(A/\sqsubseteq=\{[a]_{\sqsubseteq}|a\in A\}\). And for every \(f\in\Sigma\), the mapping over \(A/\sqsubseteq\) is defined as:
\[f_{A/\sqsubseteq}([a_1]_{\sqsubseteq},\cdots,[a_{ar(f)}]_{\sqsubseteq})=[f_A(a_1,\cdots,a_{ar(f)})]_{\sqsubseteq}\]
Lemma 6. Let \(\langle A, \sqsubseteq,\Sigma_A\rangle\) be a \(\Sigma\)-po algebra and \(\sqsubseteq\) be a preorder relation over \(A\).
\(\langle A/\sqsubseteq,\sqsubseteq,\Sigma_{A/\sqsubseteq}\rangle\) is a \(\Sigma\)-po algebra.
The natural injection mapping \(in:A\rightarrow A/\sqsubseteq\), defined by \(in(a)=[a]_{\sqsubseteq}\) for \(a\in A\), is a \(\Sigma\)-po homomorphism.
Theorem 11 (Initiality for preoders). Let \(\mathscr{C}(\sqsubseteq)\) be the class of all \(\Sigma\)-po algebras satisfying \(\sqsubseteq\). The \(\Sigma\)-po algebra \(T_{\Sigma}/\sqsubseteq\) is initial in the class \(\mathscr{C}(\sqsubseteq)\).
Definition 44 (Inequations). A set of \(\Sigma\)-inequations \(E\) contains inequations such as \(t\leq t'\) with \(t,t'\in T_{\Sigma}(X)\), \(\langle A, \leq_A, \Sigma_A\rangle\) satisfies \(E\) if \(E\subseteq \leq_A\). Let \(\mathscr{C}(E)\) be the class of \(\Sigma\)-po algebras satisfying \(E\).
Definition 45 (Proof system). A system of inequational deductions by whose inequations in \(E\) can be used to derive inequations, also denoted \(\mathbf{DED}(E)\). It contains the following six rules, where \(t,t'\in T_{\Sigma}(X)\), \(f\in\Sigma\) and \(\sigma\) is a substitution:
Reflexivity: \[\frac{}{t\leq t}\]
Transitivity: \[\frac{t\leq t',t'\leq t''}{t\leq t''}\]
Substitution: \[\frac{t_1\leq t_1',\cdots,t_{ar(f)}\leq t_{ar(f)}'}{f(t_1,\cdots,t_{ar(f)})\leq f(t_1',\cdots,t_{ar(f)}')}\]
Instantiation: \[\frac{t\leq t'}{t\sigma\leq t'\sigma}\]
Inequations: for every \(\langle t,t'\rangle\in E\), \[\frac{}{t\leq t'}\]
Equations: \[\frac{t\leq t',t'\leq t}{t=t'},~~\frac{t=t'}{t\leq t',t'\leq t},~~\frac{t=t'}{t'=t}\]
A proof is a sequence of deductions by use of the above six rules. If \(t\leq t'\) is the last proof statement, denoted \(\vdash_E t\leq t'\), then it is called a theorem of \(\mathbf{DED}(E)\). And \(t\leq_E t'\) if and only if \(\vdash_E t\leq t'\).
Lemma 7. For \(t,t'\in T_{\Sigma}(X)\), if \(\vdash_E t\leq t'\) and \(A\) satisfies \(E\) then \(t\leq_A t'\), i.e., \(E\subseteq \leq_A\) implies \(\leq_E\subseteq \leq_A\).
Corollary 3 (Initiality for equations). \(T_{\Sigma}/\leq_E\) is initial in \(\mathscr{C}(E)\).
Definition 46 (Soundness and completeness). Let \(R\) be a relation on \(T_{\Sigma}(X)\).
The proof system \(\mathbf{DED}(E)\) is sound with respect to \(R\) if \(\vdash_E t\leq t'\) implies \(\langle t,t'\rangle\in R\).
The proof system \(\mathbf{DED}(E)\) is complete with respect to \(R\) if \(\langle t,t'\rangle\in R\) implies \(\vdash_E t\leq t'\).
Theorem 12 (Inequational logic theorem). \(\mathscr{C}(E)\) has a unique initial \(\Sigma\)-po algebra up to \(\Sigma\)-po isomorphism denoted by \(I_E\). Then,
\(\mathbf{DED}(E)\) is sound with respect to \(\leq_{I_E}\).
\(\mathbf{DED}(E)\) is complete with respect to \(\leq_{I_E}\), restricted to \(T_{\Sigma}\).
Definition 47 (Substitution closed). A \(\Sigma\)-preorder \(R\) over \(T_{\Sigma}(X)\) is substitution closed if for every substitution \(\sigma\), \(\langle t,t'\rangle\in R\) implies \(\langle t\sigma,t'\sigma\rangle\in R\), where \(t,t'\in T_{\Sigma}(X)\).
Proposition 13. If \(E\) is a set of inequations, then \(\leq_E\) is the least substitution closed \(\Sigma\)-preorder satisfying \(E\).
Corollary 4. The \(\Sigma\)-po algebra \(\langle A,\leq_A,\Sigma_A\rangle\) is initial in \(\mathscr{C}(E)\) if and only if it is surjective, i.e., every element in \(A\) is denotable by some syntactic object in \(T_{\Sigma_A}\), and \(\mathbf{DED}(E)\) is sound and complete with respect to \(\leq_A\) over \(T_{\Sigma_A}\).
Definition 48 (Full Abstractness). Let \(R\) be a behavioural motivated relation over terms from \(T_{\Sigma_A}\), a given interpretation over A, denoted \(A\llbracket \rrbracket\), is fully abstract with respect to \(R\), if for every \(t,t'\in T_{\Sigma_A}\): \(\langle t,t'\rangle\in R\) if and only if \(A\llbracket t\rrbracket\leq A\llbracket t'\rrbracket\).
Proposition 14. If \(A\) is surjective, then it is fully abstract with respect to \(R\) if and only if:
\(R\) is a \(\Sigma\)-preorder over \(T_{\Sigma}\).
\(A\) is initial in \(\mathscr{C}(R)\).
Corollary 5. \(I_E\) is fully abstract with respect to \(R\) if and only if \(\mathbf{DED}(E)\) is both sound and complete with respect to \(R\).
Recursion is used to capture infinite computations. \(\Sigma\)-algebras whose carrier are partial orders enjoying certain continuity constraints are called \(\Sigma\)-domains, which are sufficient to ensure that the recursive equations always have least solutions taken as the meaning of the recursive definitions.
Definition 49 (Least element and upper bound). Let \(\langle A,\leq_A\rangle\) be a partial order. The least element \(\bot_A\) in \(A\) satisfies \(\bot_A\leq_A a\) for every \(a\in A\). Let \(D\subseteq A\) and \(a\in A\), then \(a\) is an upper bound of \(D\) if \(d\leq_A a\) for every \(d\in D\). \(a\) is a least upper bound (lub) of \(D\), if (1) \(a\) is an upper bound of \(D\); (2) if \(d'\) is an upper bound of \(D\) then \(a\leq_A d'\). If the lub of \(D\) exists, then it is unique and denoted \(\mathord{\scalebox{1.3}{\bigvee}}_A D\), and sometimes \(\mathord{\scalebox{1.3}{\bigvee}}D\) for short.
Definition 50 (Directed subset). \(D\) is a directed subset of \(A\) if it is nonempty and for every pair of elements \(d_1,d_2\in D\), the set \(\{d_1,d_2\}\) has an upper bound which is also in \(D\).
Definition 51 (Complete partial order (cpo)). The partial order \(\langle A,\leq_A\rangle\) is a complete partial order (cpo) if:
It contains a least element \(\bot_A\).
every directed subset of \(A\) has a lub.
Definition 52 (Domination). If \(D,D'\) are directed subsets of a cpo \(A\) and \(D\subseteq D'\) then \(\mathord{\scalebox{1.3}{\bigvee}}D\leq\mathord{\scalebox{1.3}{\bigvee}}D'\); \(D'\) dominates \(D\) if for every \(d\in D\) there is some \(d'\in D'\) such that \(d\leq d'\).
Lemma 8. If \(D,D'\) are directed subsets of a cpo \(A\) and \(D'\) dominates \(D\) then \(\mathord{\scalebox{1.3}{\bigvee}}D\leq\mathord{\scalebox{1.3}{\bigvee}}D'\).
Lemma 9. For a doubly indexed subset of a cpo \(A\) denoted \(D=\{d_{ij}|i\in I,j\in J\}\), \(D_i=\{d_{ij}|j\in J\}\) for each \(i\in I\) and \(D^j=\{d_{ij}|i\in I\}\) for each \(j\in J\), if:
\(D\) is directed.
Each \(D_i,D^j\) are directed with lubs \(d_i,d^j\) respectively.
The sets \(\{d_i|i\in I\}\) and \(\{d^j|j\in J\}\) are also directed.
then,
\(\mathord{\scalebox{1.3}{\bigvee}}D=\mathord{\scalebox{1.3}{\bigvee}}\{d_i|i\in I\}\).
\(\mathord{\scalebox{1.3}{\bigvee}}D=\mathord{\scalebox{1.3}{\bigvee}}\{d^j|j\in J\}\).
Lemma 10 (Cartesian product). For any two cpos \(\langle A_1,\leq_{A_1}\rangle\) and \(\langle A_2,\leq_{A_2}\rangle\), \(a_1,a_1'\in A_1\) and \(a_2,a_2'\in A_2\), let \(\langle a_1,a_2\rangle\leq\langle a_1',a_2'\rangle\) if both \(a_1\leq_{A_1}a_1'\) and \(a_2\leq_{A_2}a_2'\). Then, \(\langle A_1\times A_2,\leq\rangle\) is a cpo.
Lemma 11. For any set \(S\) and cpo \(A\), let \((S\rightarrow A)\) be the set of all functions from \(S\) to \(A\). For \(f,g\in (S\rightarrow A)\), let \(f\leq g\) if \(f(s)\leq_A g(s)\) for every \(s\in S\). Then, \(\langle (S\rightarrow A),\leq\rangle\) is a cpo.
Definition 53 (Continuous functions). Let \(\langle A,\leq_A\rangle\) and \(\langle A',\leq_{A'}\rangle\) be two cpos and function \(f:A\rightarrow A'\). Then \(f\) is continuous if for every directed subset \(D\subseteq A\),
\(f(D)\) is directed in \(A'\).
\(f(\mathord{\scalebox{1.3}{\bigvee}}_A D)=\mathord{\scalebox{1.3}{\bigvee}}_{A'}f(D)\)
Where \(f(D)=\{f(d)|d\in D\}\)
Lemma 12. Continuous functions are monotonic.
Lemma 13. \(f:A\rightarrow A'\) is continuous if and only if it is monotonic and for every directed subset \(D\subseteq A\), it holds that \(f(\mathord{\scalebox{1.3}{\bigvee}}_A D)\leq\mathord{\scalebox{1.3}{\bigvee}}_{A'}f(D)\).
Proposition 15 (Left and right continuity). The function \(f:A_1\times A_2\rightarrow A'\) is left-continuous, if for every \(a_0\in A_2\) and every directed subset \(D\subseteq A_1\times A_2\) whose elements are of the form \(\langle a,a_0\rangle\), it holds that \(f(\mathord{\scalebox{1.3}{\bigvee}}_{A_1\times A_2} D)=\mathord{\scalebox{1.3}{\bigvee}}_{A'}f(D)\). Right-continuity can be defined correspondingly. Then, \(f:A_1\times A_2\rightarrow A'\) is continuous if and only if it is both left-continuous and right-continuous.
Definition 54 (Induced pointwise ordering). Let \([A\rightarrow A']\) be the set of all continuous functions from the cpo \(A\) to the cpo \(A'\). This set can be ordered by the so-called induced pointwise ordering: \(f\leq g\) if for every \(a\in A\), \(f(a)\leq_{A'}g(a)\).
Lemma 14. Let \(F\subseteq [A\rightarrow A']\) be a directed set of functions. Define \(f:A\rightarrow A'\) by \(f(a)=\mathord{\scalebox{1.3}{\bigvee}}_{A'}\{g(a)|g\in F\}\), then \(f\) is well-defined and continuous.
Proposition 16. \([A\rightarrow A']\) is a cpo under the induced pointwise ordering.
Recursive equations will be interpreted semantically by least fixpoints.
Definition 55 (Fixpoint). Let \(f\in[A\rightarrow A']\). The element \(a\in A\) is called a fixpoint of \(f\) if \(a=f(a)\). It is called the least fixpoint of \(f\), if \(a\leq_A a'\) for every fixpoint \(a'\) of \(f\). Further, it is called a pre-fixpoint of \(f\), if \(f(a)\leq_A a\).
Proposition 17. Every \(f\in [A\rightarrow A']\) has a least fixpoint \(x_f\).
Proposition 18. Let \(Y\in[[A\rightarrow A]\rightarrow A]\) be a mapping from a function \(f\in[A\rightarrow A]\) to its least fixpoint \(x_f\), i.e., \(Y(f)=x_f\). Then \(Y\) is a continuous function.
Definition 56 (Algebraic cpo). Let \(A\) be a cpo and \(D\) a directed subset of \(A\), an element \(a\in A\) is compact or finite, if whenever \(a\leq\mathord{\scalebox{1.3}{\bigvee}}D\) there exists some \(d\in D\) such that \(a\leq d\). \(A\) is an algebraic cpo if for every \(a\in A\), \(a=\mathord{\scalebox{1.3}{\bigvee}}\{d|d\leq a,d compact\}\).
The compact elements are the semantic denotations of finite processes, and if an interpretation is algebraic, every recursive defined processes is semantically the limit of a directed set of finite processes. Let \(\mathrm{Fin}(A)\) to denote the set of finite or compact elements of \(A\), and for \(a\in A\) \(\mathrm{Fin}(a)=\{d\in\mathrm{Fin}(A)|d\leq a\}\), then the algebraicness requires \(a=\mathord{\scalebox{1.3}{\bigvee}}_A \mathrm{Fin}(a)\). If \(A,A'\) are algebraic cpos with \(\langle\mathrm{Fin}(A),\leq_A\rangle\) and \(\langle \mathrm{Fin}(A'),\leq_{A'}\rangle\) being isomorphic as partial orders, then \(A,A'\) are isomorphic as cpos.
Definition 57 (\(\Sigma\)-domains). Let \(\Sigma\) be a signature which contains a distinguished constant \(\Omega\). A \(\Sigma\)-domain consists of \(\langle A, \leq_A, \Sigma_A\rangle\), where:
\(A\) is the carrier set.
\(\leq_A\) is a partial order over \(A\).
\(\langle A, \leq_A\rangle\) is an algebraic cpo.
\(\Sigma_A\) is a set of continuous functions \(\{f_A:A^{ar(f)}\rightarrow A|f\in\Sigma\}\) with respect to \(\leq_A\).
\(\Omega_A\) is \(\bot_A\) which is the least element with respect to \(\leq_A\).
Sometimes, we use \(A\) to denote \(\langle A, \leq_A, \Sigma_A\rangle\).
Definition 58 (\(\Sigma\)-domain homomorphism). A mapping \(\varphi:A\rightarrow B\) between two \(\Sigma\)-domains \(\langle A,\leq_A,\Sigma_A\rangle\) and \(\langle B,\leq_B,\Sigma_B\rangle\) is a \(\Sigma\)-domain homomorphism if:
for every \(f\in\Sigma\), it holds that \(\varphi(f_A(\underline{a}))=f_B(\varphi(\underline{a}))\).
it is continuous with respect to \(\leq\).
A \(\Sigma\)-domain homomorphism is \(\Sigma\)-domain isomorphic if it is has an inverse.
Sometimes, we write \(\Sigma\)-homomorphism for \(\Sigma\)-domain homomorphism and \(\Sigma\)-isomorphism for \(\Sigma\)-domain isomorphism.
Proposition 19. The \(\Sigma\)-domains \(\langle A,\leq_A,\Sigma_A\rangle\) and \(\langle B,\leq_B,\Sigma_B\rangle\) are isomorphic if and only if they are isomorphic as \(\Sigma\)-po algebras.
Let \(\mathscr{CC}(E)\) denote the class of \(\Sigma\)-domains satisfying the equations \(E\).
Theorem 20 (Initiality). \(\mathscr{CC}(E)\) has an initial object, denoted \(CI_E\), which is unique up to isomorphism.
When \(E=\emptyset\), \(CI_E\) can not give syntax for the continuous objects, as the \(\Sigma\)-domain \(CT_{\Sigma}\) which can not be deemed as a language in the normal sense; but it can still give semantic domains. By introducing a new \(\Omega\)-rule to the proof system \(\mathbf{DED}(E)\), where \(t\in T_{\Sigma}(X)\): \[\frac{}{\Omega\leq t}\] we get the new proof system \(\mathbf{\Omega DED}(E)\), and \(t\leq_{E\Omega} t'\) if and only if \(\vdash_{E\Omega} t\leq t'\).
Definition 59 (Finitariness). A \(\Sigma\)-domain \(A\) is finitary, if:
For every term \(t\in T_{\Sigma}\) and \(i_A:T_{\Sigma}\rightarrow A\), \(i_A(t)\) is a finite element in \(A\).
For every finite element \(a\in A\), there exists a term \(t\in T_{\Sigma}\) such that \(i_A(t)=a\).
Theorem 21. The \(\Sigma\)-domain \(A\) is initial in \(\mathscr{CC}(E)\) if and only if:
It is finitary.
\(\mathbf{\Omega DED}(E)\) is sound and complete with respect to \(\leq_A\), restrict to \(T_{\Sigma}\).
Definition 60 (\(\Sigma\)-predomains). Let \(\Sigma\) be a signature which contains a distinguished constant \(\Omega\). A \(\Sigma\)-domain consists of \(\langle A, \leq_A, \Sigma_A\rangle\), where:
\(A\) is the carrier set.
\(\leq_A\) is a partial order over \(A\).
\(\Sigma_A\) is a set of monotonic functions \(\{f_A:A^{ar(f)}\rightarrow A|f\in\Sigma\}\) with respect to \(\leq_A\).
\(\Omega_A\) is \(\bot_A\) which is the least element with respect to \(\leq_A\).
Sometimes, we use \(A\) to denote \(\langle A, \leq_A, \Sigma_A\rangle\).
Definition 61 (\(\Sigma\)-predomain homomorphism). A mapping \(\varphi:A\rightarrow B\) between two \(\Sigma\)-predomains \(\langle A,\leq_A,\Sigma_A\rangle\) and \(\langle B,\leq_B,\Sigma_B\rangle\) is a \(\Sigma\)-predomain homomorphism if:
for every \(f\in\Sigma\), it holds that \(\varphi(f_A(\underline{a}))=f_B(\varphi(\underline{a}))\).
it is monotonic with respect to \(\leq\).
A \(\Sigma\)-predomain homomorphism is \(\Sigma\)-predomain isomorphic if it is has an inverse.
Sometimes, we write \(\Sigma\)-homomorphism for \(\Sigma\)-predomain homomorphism and \(\Sigma\)-isomorphism for \(\Sigma\)-predomain isomorphism.
Let \(\mathscr{CP}(E)\) denote the class of \(\Sigma\)-predomains satisfying the equations \(E\).
Theorem 22 (Initiality). \(\mathscr{CP}(E)\) has an initial object, denoted \(PI_E\), which is unique up to isomorphism.
Corollary 6. The \(\Sigma\)-predomain \(\langle A,\leq_A,\Sigma_A\rangle\) is initial in \(\mathscr{CP}(E)\) if and only if it is surjective, i.e., every element in \(A\) is denotable by some syntactic object in \(T_{\Sigma_A}\), and \(\mathbf{\Omega DED}(E)\) is sound and complete with respect to \(\leq_A\) over \(T_{\Sigma_A}\).
\(t\leq_{E\Omega} t'\) if and only if \(\vdash_{E\Omega} t\leq t'\).
Proposition 23. \(\leq_{E\Omega}\) is the least substitution closed \(\Sigma\)-preorder over \(T_{\Sigma}(X)\) satisfying \(E\) and the additional inequation \(\Omega\leq x\), where \(x\in T_{\Sigma}(X)\).
The following is related to generating \(\Sigma\)-domains from \(\Sigma\)-predomains by use of ideal completion.
Definition 62 (Ideal). Let \(\langle A,\leq_A\rangle\) be a partial order. An ideal in \(A\), denoted \(I\), is an nonempty subset of \(A\) satisfying:
\(x,y\in I\), then there exists some \(z\in I\) such that \(x\leq_A z\) and \(y\leq_A z\), i.e., \(I\) is directed.
\(x\in I\) and \(y\leq_A x\), then \(y\in I\), i.e., \(I\) is downwards closed.
Let \(\mathscr{I}(A)\) denote the set of ideals of \(A\).
Lemma 15. Let \(\langle A,\leq_A\rangle\) be a partial order. If \(A\) has a least element then \(\langle \mathscr{I}(A),\subseteq\rangle\) is an algebraic cpo.
Theorem 24. \(\langle\mathscr{I}(A),\subseteq\rangle\) is the unique algebraic cpo (up to isomorphism) whose set of finite elements are isomorphic to \(\langle A,\leq_A\rangle\) as partial order.
\(in:A\rightarrow\mathscr{I}(A)\) is defined as \(in(a)=\{x|x\leq_A a,a\in A\}\), and the ideal completion \(\langle\mathscr{I}(A),\subseteq\rangle\) of the partial order \(\langle A,\leq_A\rangle\) is denoted \(\langle A,\leq_A\rangle^{\infty}\) or \(A^{\infty}\).
Theorem 25. If \(k:A\rightarrow E\) is any monotonic function from the partial order \(A\) to the cpo \(E\), then there exists a unique continuous function \(ext(k):A^{\infty}\rightarrow E\) such that the following diagram commutes.
Lemma 16. \(\langle A^{\infty},\leq_{A^{\infty}},\Sigma_{A^{\infty}}\rangle\) is a \(\Sigma\)-domain
We write \(\langle A,\leq_{A},\Sigma_{A}\rangle^{\infty}\) or \(A^{\infty}\) to denote the \(\Sigma\)-domain \(\langle A^{\infty},\leq_{A^{\infty}}, \Sigma_{A^{\infty}}\rangle\).
Theorem 26. If \(k:A\rightarrow E\) is a \(\Sigma\)-predomain homomorphism from the \(\Sigma\)-predomain \(A\) to the \(\Sigma\)-domain \(E\), then there exists a unique \(\Sigma\)-domain homomorphism \(ext(k):A^{\infty}\rightarrow E\) such that the following diagram commutes.
Lemma 17. If \(A\in\mathscr{CP}(E)\) then \(A^{\infty}\in\mathscr{CP}(E)\).
Proposition 27. If \(PI\) is initial in \(\mathscr{CP}(E)\) then \(PI^{\infty}\) is initial in \(\mathscr{CP}(E)\).
In this chapter, we generalize the testing semantics [11] to the truly concurrent processes. Firstly, we introduce the testing preorders and testing equivalences in 4.1. Then we introduce pomset labelled transition system in 4.2. Finally, we introduce the operational semantics, axiomatic semantics and denotational semantics of the basic processes, recursion and abstraction in 5, 7 and 8, respectively.
Definition 63 (Experimental system). A experimental system (\(\mathscr{EP}\)) is a collection of the form \(\langle \mathsf{Proc},\mathsf{Exp},\mapsto,Success\rangle\), where
\(\mathsf{Proc}\) is an arbitrary set of processes.
\(\mathsf{Exp}\) is an arbitrary set of experimenters.
\(\mapsto\subseteq(\mathsf{Exp}\times \mathsf{Proc})\times(\mathsf{Exp}\times \mathsf{Proc})\) is the interacting relation, for the interconnection of \(p\in \mathsf{Proc}\) and \(e\in \mathsf{Exp}\), we denote it as \(\parallel_{EP}\) to be distinguished from the parallel operator \(\parallel\) in the signature in the following chapters.
\(Success\subseteq \mathsf{Exp}\) is the success set.
An experiment or test, i.e., the interactions between the experimenter \(e\in \mathsf{Exp}\) and \(p\in \mathsf{Proc}\), is a sequence of the form:
\[e\parallel_{EP}p\mapsto e_0\parallel_{EP}p_0\mapsto e_1\parallel_{EP}p_1\mapsto\cdots\mapsto e_k\parallel_{EP}p_k\mapsto\cdots\]
The above sequence is called a computation if it is maximal, i.e., it is infinite or finite with terminal element \(e_n\parallel_{EP}p_n\), and denoted \(Comp(e,p)\). The possible results \(Result(e,p)\) of \(Comp(e,p)\) is defined by \(Result(e,p)=\{\top,\bot\}\), where \(\top\) denotes a successful computation and \(\bot\) denotes an unsuccessful computation. There are the following natural relations between processes \(p,p'\in \mathsf{Proc}\), where \(e\in \mathsf{Exp}\):
\(p\bar{\sim}' p'\) if for every \(e\in \mathsf{Exp}\), \(Result(e,p)=Result(e,p')\).
\(p~\mathsf{may}~e\) if \(\top\in Result(e,p)\).
\(p~\mathsf{must}~e\) if \(\bot\notin Result(e,p)\).
This leads to the definitions of three kinds of preorders.
Definition 64 (Testing preorders). For an \(\mathscr{EP}\) \(\langle \mathsf{Proc}, \mathsf{Exp}, \rightarrow,Success\rangle\) and \(p,p'\in \mathsf{Proc}\):
\(p\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MAY}}p'\) if for every \(e\in \mathsf{Exp}\), \(p~\mathsf{may}~e\) implies \(p'~\mathsf{may}~e\).
\(p\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MUST}}p'\) if for every \(e\in \mathsf{Exp}\), \(p~\mathsf{must}~e\) implies \(p'~\mathsf{must}~e\).
\(p\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}p'\) if \(p\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MAY}}p'\) and \(p\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MUST}}p'\).
The kernels of \(\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MAY}}\), \(\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MUST}}\) and \(\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}\) are denoted \(\bar{\sim}_{\mathrm{MAY}}\), \(\bar{\sim}_{\mathrm{MUST}}\) and \(\bar{\sim}\), respectively.
Lemma 18. \(\bar{\sim}'\) and \(\bar{\sim}\) coincide, i.e., for \(p,p'\in \mathsf{Proc}\), \(p\bar{\sim}' p'\) if and only if \(p\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}p'\) and \(p'\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}p\).
definitionpomsetlts A pomset labelled transition system (PLTS) is a quadruple \(\langle\mathsf{Proc},\mathsf{Act},\{\xrightarrow{U}|U\in\mathsf{Pom}\},\mathsf{Pred}\rangle\), where:
\(\mathsf{Proc}\) is a set of processes, ranged over by \(p,q\).
\(\mathsf{Act}\) is a set of actions, ranged over by \(a,b\).
\(\mathsf{Pom}\) is the set of pomsets over \(\mathsf{Act}\), ranged over by \(U,V\).
\(\xrightarrow{U}\subseteq\mathsf{Proc}\times\mathsf{Pom}\times\mathsf{Proc}\) is called a pomset transition for every \(U\in\mathsf{Pom}\). We write \(p\xrightarrow{U}q\) instead of \((p,q)\in\xrightarrow{U}\), and write \(p \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{U}\) if \(p\xrightarrow{U}q\) with no state \(q\). Intuitively, \(p\xrightarrow{U}q\) means that state \(p\) can evolve into state \(q\) by the execution of pomset \(U\). We see that traditional single action transition \(p\xrightarrow{a}q\) with \(a\in\mathsf{Act}\) is a special case of pomset transition in which the pomset is primitive.
For every \(P\in\mathsf{Pred}\), we write \(pP\) (resp. \(p\neg P\)) if state \(p\) satisfies (resp. does not satisfy) predicate \(P\). Intuitively, \(pP\) means that predicate \(P\) holds in state \(p\).
The binary pomset transitions \(p\xrightarrow{U}q\) and unary predicates \(pP\) in a PLTS are called transitions.
Note that, by replacing \(U\in\mathsf{Pom}\) by \(a\in\mathsf{Act}\), we can get the definition of traditional labelled transition system (LTS). When \(U\in\mathsf{Stp}\), we get the special case of a PLTS, called Step Labelled Transition System (SLTS). And we use \(\mathsf{Act}(p)\subseteq\mathsf{Act}\) to denote the set of actions occurring in \(p\).
Definition 65 (Finiteness conditions on a PLTS). A PLTS is:
Finitely branching: if for every state \(p\) there are only finitely many outgoing pomset transitions \(p\xrightarrow{U}q\).
Regular: if it is finitely branching and each state can reach only finitely many other states.
Finite: if it is finitely branching and there is no infinite sequence of pomset transitions \(p_0\xrightarrow{U_0}p_1\xrightarrow{U_1}\cdots\).
A pomset transition system specification is a collection of inductive proof rules to derive the pomset transitions over states in \(\mathsf{Proc}\).
Definition 66 (Pomset transition system specification). Let \(\Sigma\) be a signature, and \(t,t'\in\mathbb{T}(\Sigma)\). A pomset transition rule \(\rho\) is of the form \(\frac{H}{\alpha}\), where \(H\) is the set of premises with positive premises \(t\xrightarrow{U}t'\) and \(tP\), and negative premises \(t \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{U}\) and \(t\neg P\); \(\alpha\) is the conclusion with the form \(t\xrightarrow{U}t'\) and \(tP\), and \(U\in\mathsf{Pom}\) and \(P\) is a predicate. For the conclusion with the form of \(t\xrightarrow{U}t'\), the left-hand side of the conclusion \(t\) is called the source of \(\rho\) and the right-hand side of the conclusion \(t'\) is called the target of \(\rho\). A transition rule is closed if it does not contain variables.
A pomset transition system specification (PTSS) is a set of pomset transition rules. A PTSS is positive if its transition rules do not contain negative premises.
Definition 67 (Extended pomset labelled transition system). An extended pomset labelled transition system (EPLTS) is a quintuple \(\langle\mathsf{Proc},\mathsf{Act},\{\xrightarrow{U}|U\in\mathsf{Pom}\},\mathsf{Pred},\rightarrowtail\rangle\), where:
\(\langle\mathsf{Proc},\mathsf{Act},\{\xrightarrow{U}|U\in\mathsf{Pom}\},\mathsf{Pred}, \rightarrowtail\rangle\) is a PLTS
\(\rightarrowtail\) is a binary relation over \(\mathsf{Proc}\), the internal action relation.
The corresponding finiteness condition and PTSS can be extended the extended ones obviously.
Both the operational behaviours of processes and experimenters can be modelled by EPLTSs, and the EPLTS of experimenters can be defined as \(\langle\mathsf{Exp},\mathsf{Act}\cup\{\omega,\mu,\tau\},\{\xrightarrow{U}|U\in\mathsf{Pom}\},\mathsf{Pred},\rightarrowtail\rangle\), where \(\omega\) is special action and \(Success=\{e\in\mathsf{Exp}|e\xrightarrow{\omega}\}\); \(\tau\) is a special action, while \[\frac{e\xrightarrow{\tau}e'}{e\parallel_{EP}p\mapsto e'\parallel_{EP}p}\] for \(e,e'\in\mathsf{Exp}\) and \(p\in\mathsf{Proc}\); \(\mu\) is a special action, while \[\frac{e\xrightarrow{\mu}e'\quad p\surd}{e\parallel_{EP}p\mapsto e'\parallel_{EP}p}\] for \(\surd\) is the successful termination predicate, \(e,e'\in\mathsf{Exp}\) and \(p\in\mathsf{Proc}\). For \(e,e'\in\mathsf{Exp}\), \(p,p'\in\mathsf{Proc}\) and \(U\in\mathsf{Pom}\), we have the following compatible interaction between experimenters and processes:
\[\frac{e\xrightarrow{U}e'\quad p\xrightarrow{U}p'}{e\parallel_{EP}p\mapsto e'\parallel_{EP}p'}\] \[\frac{e\rightarrowtail e'}{e\parallel_{EP}p\mapsto e'\parallel_{EP}p}\] \[\frac{p\rightarrowtail p'}{e\parallel_{EP}p\mapsto e\parallel_{EP}p'}\]
Definition 68. Let \(L_{\mathbf{Proc}}\) and \(L_{\mathsf{Exp}}\) be two compatible EPLTSs \(\langle\mathsf{Proc},\mathsf{Act},\{\xrightarrow{U}|U\in\mathsf{Pom}\},\mathsf{Pred},\rightarrowtail\rangle\) and \(\langle\mathsf{Exp},\mathsf{Act}\cup\{\omega,\mu,\tau\},\{\xrightarrow{U}|U\in\mathsf{Pom}\},\mathsf{Pred},\rightarrowtail\rangle\) respectively. Then \(\mathscr{EP}(L_{\mathsf{Proc}},L_{\mathsf{Exp}})\) is the experimental system \(\langle \mathsf{Proc},\mathsf{Exp},\mapsto,Success\), where \(Success=\{e\in\mathsf{Exp}|e\xrightarrow{\omega}\}\) and \(\mapsto\) is defined above as the compatible interaction between experimenters and processes.
In this chapter, we introduce the basic processes. Because of the elementary properties of parallelism in true concurrency, we move the parallelism and concurrency related operators into the basic processes. Firstly, we introduce the basic signature in 5.1, then the operational semantics, denotational semantics and axiomatic semantics of the basic processes are introduced in 5.2, 5.3 and 5.4, respectively. Finally, we get the results on trinity of operational semantics, denotational semantics and axiomatic semantics in 5.5.
Definition 69 (Basic signature). The basic signature \(\Sigma^1\) consists of:
A set of atomic actions \(\mathsf{Act}\) ranged over \(a,b,\cdots\).
A set of pomsets \(\mathsf{Pom}\) over \(\mathsf{Act}\) ranged over \(U,V,\cdots\).
A constant \(0\) denoting inaction without any behaviour.
A constant \(1\) denoting empty action which terminates immediately and successfully.
The communication action \(\gamma(a,b)\).
The binary operator \(\cdot\) as the sequential composition, i.e., for processes \(p\) and \(p'\), the process \(p\cdot p'\) firstly executes \(p\) followed \(p'\). The process \(p\cdot p'\) is abbreviated as \(pp'\).
The binary operator \(\sharp\) as the conflict composition, i.e., the process \(a\sharp b\) either executes \(a\) and its successors or \(b\) and its successors.
The binary operator \(\mathbin{\mathpalette\make@circled{\#}}\) as the internal conflict composition, i.e., the process \(a\sharp b\) either executes \(a\) and its successors or \(b\) and its successors internally.
The binary operator \(+\) as the alternative composition, i.e., for processes \(p\) and \(p'\), the process \(p+p'\) either executes \(p\) or \(p'\) alternatively.
The binary operator \(\oplus\) as the internal alternative composition, i.e., for processes \(p\) and \(p'\), the process \(p+p'\) either executes \(p\) or \(p'\) alternatively and internally.
The binary operator \(\between\) as the concurrent composition, i.e., for processes \(p\) and \(p'\), the process \(p\between p'\) means \(p\) and \(p'\) execute concurrently, i.e., in parallel but may be with unstructured communications.
The binary operator \(\parallel\) as the parallel composition, i.e., for processes \(p\) and \(p'\), the process \(p\parallel p'\) executes \(p\) and \(p'\) in parallel.
The binary operator \(\mid\) as the communication merge, i.e., for processes \(p\) and \(p'\), the process \(p\mid p'\) executes with synchronous communications. \[a\mid b=\begin{cases} \gamma(a,b), & a\leq^c b;\\ 0, & otherwise. \end{cases}\] where \(a\leq^c b\) denotes that there exists a communication between \(a\) and \(b\).
The unary operator \(\Theta\) as confliction eliminator, i.e., for process \(p\), the process \(\Theta(p)\) eliminates and the \(\sharp\) relations between actions in \(p\).
The binary unless operator \(\triangleleft\) as an auxiliary operator to confliction eliminator \(\Theta\).
The unary operator \(\partial_H\) as the encapsulation, i.e., for process \(p\), the process \(\partial_H(p)\) renames all actions of \(p\) in the set \(H\) to \(0\).
Brackets are omitted whenever possible, with sequential composition \(\cdot\) having a higher precedence than concurrent composition \(\between\), parallel composition \(\parallel\) and communication merge \(\mid\). Concurrent composition \(\between\), parallel composition \(\parallel\) and communication merge \(\mid\) have the same precedences which are higher than internal alternative composition \(\oplus\) and internal conflict composition \(\mathbin{\mathpalette\make@circled{\#}}\). While internal alternative composition \(\oplus\) and internal conflict composition \(\mathbin{\mathpalette\make@circled{\#}}\) have the same precedences which are higher than alternative composition \(+\) and conflict composition \(\sharp\), and alternative composition \(+\) and conflict composition \(\sharp\) have the same precedences.
Definition 70 (Syntax of basic process language). The syntax of the basic process language \(\mathbf{M}_1\) is given by the following BNF grammar:
\(p::=~0~|~1~|~U~|~\gamma(a,b)~|~p\cdot p~|~a\sharp b~|~a\mathbin{\mathpalette\make@circled{\#}}b~|~p+p~|~p\oplus p~|~p\parallel p~|~p\mid p~|~p\between p~|~\Theta(p)~|~p\triangleleft p~|~\partial_H(p)~\)
where \(a,b\in\mathsf{Act}\), \(U\in\mathbf{Pom}\), \(p\in \mathsf{Proc}\).
In this section, we give the operational semantics of the language \(\mathbf{M}_1\). The predicate \(\surd\) represents successful termination, \(\xrightarrow{a}\surd\) represents successful termination after execution of the action \(a\in\mathsf{Act}\), \(\xrightarrow{U}\surd\) represents successful termination after execution of the action \(U\in\mathsf{Pom}\) and \(\xrightarrow{ }\surd\) represents successful termination without execution of the any action. The following are the PTSS of the language \(\mathbf{M}_1\), where \(p,q\in\mathsf{Proc}\).
The PTSS of action \(1\), \(a\in\mathsf{Act}\) and \(U\in\mathsf{Pom}\) is as follows. Note that, there is no any transition rules for \(0\).
\[\frac{}{1\xrightarrow{ }\surd}\quad\frac{}{a\xrightarrow{a}\surd}\quad\frac{}{U\xrightarrow{U}\surd}\]
The PTSS of sequential composition is as follows.
\[\frac{p\xrightarrow{U}\surd}{p\cdot q\xrightarrow{U} q}\quad\frac{p\xrightarrow{U}p'}{p\cdot q\xrightarrow{U} p'\cdot q}\]
The PTSS of alternative composition is as follows.
\[\frac{p\xrightarrow{U}\surd}{p+ q\xrightarrow{U}\surd} \quad\frac{p\xrightarrow{U}p'}{p+ q\xrightarrow{U}p'} \quad\frac{q\xrightarrow{U}\surd}{p+ q\xrightarrow{U}\surd} \quad\frac{q\xrightarrow{U}q'}{p+ q\xrightarrow{U}q'}\]
The PTSS of concurrent composition is as follows.
\[\frac{p\xrightarrow{a}\surd\quad q\xrightarrow{b}\surd}{p\between q\xrightarrow{\langle\mskip-4mu|a,b|\mskip-4mu\rangle}\surd} \quad\frac{p\xrightarrow{a}p'\quad q\xrightarrow{b}\surd}{p\between q\xrightarrow{\langle\mskip-4mu|a,b|\mskip-4mu\rangle}p'}\] \[\frac{p\xrightarrow{a}\surd\quad q\xrightarrow{b}q'}{p\between q\xrightarrow{\langle\mskip-4mu|a,b|\mskip-4mu\rangle}q'} \quad\frac{p\xrightarrow{a}p'\quad q\xrightarrow{b}q'}{p\between q\xrightarrow{\langle\mskip-4mu|a,b|\mskip-4mu\rangle}p'\between q'}\] \[\frac{p\xrightarrow{a}\surd\quad q\xrightarrow{b}\surd}{p\between q\xrightarrow{\gamma(a,b)}\surd} \quad\frac{p\xrightarrow{a}p'\quad q\xrightarrow{b}\surd}{p\between q\xrightarrow{\gamma(a,b)}p'}\] \[\frac{p\xrightarrow{a}\surd\quad q\xrightarrow{b}q'}{p\between q\xrightarrow{\gamma(a,b)}q'} \quad\frac{p\xrightarrow{a}p'\quad q\xrightarrow{b}q'}{p\between q\xrightarrow{\gamma(a,b)}p'\between q'}\]
The PTSS of parallel composition is as follows.
\[\frac{p\xrightarrow{a}\surd\quad q\xrightarrow{b}\surd}{p\parallel q\xrightarrow{\langle\mskip-4mu|a,b|\mskip-4mu\rangle}\surd} \quad\frac{p\xrightarrow{a}p'\quad q\xrightarrow{b}\surd}{p\parallel q\xrightarrow{\langle\mskip-4mu|a,b|\mskip-4mu\rangle}p'}\] \[\frac{p\xrightarrow{a}\surd\quad q\xrightarrow{b}q'}{p\parallel q\xrightarrow{\langle\mskip-4mu|a,b|\mskip-4mu\rangle}q'} \quad\frac{p\xrightarrow{a}p'\quad q\xrightarrow{b}q'}{p\parallel q\xrightarrow{\langle\mskip-4mu|a,b|\mskip-4mu\rangle}p'\between q'}\]
The PTSS of communication merge is as follows.
\[\frac{p\xrightarrow{a}\surd\quad q\xrightarrow{b}\surd}{p\mid q\xrightarrow{\gamma(a,b)}\surd} \quad\frac{p\xrightarrow{a}p'\quad q\xrightarrow{b}\surd}{p\mid q\xrightarrow{\gamma(a,b)}p'}\] \[\frac{p\xrightarrow{a}\surd\quad q\xrightarrow{b}q'}{p\mid q\xrightarrow{\gamma(a,b)}q'} \quad\frac{p\xrightarrow{a}p'\quad q\xrightarrow{b}q'}{p\mid q\xrightarrow{\gamma(a,b)}p'\between q'}\]
The PTSS of encapsulation operator is as follows.
\[\frac{p\xrightarrow{a}\surd\quad a\notin H}{\partial_H(p)\xrightarrow{a}\surd}\quad\frac{p\xrightarrow{a}p'\quad a\notin H}{\partial_H(p)\xrightarrow{a}\partial_H(p')}\]
The PTSS of confliction, confliction eliminator and the auxiliary unless operator is as follows, where \(\leq\) is the execution order.
\[\frac{p\xrightarrow{a}\surd\quad a\sharp b}{\Theta(p)\xrightarrow{a}\surd} \quad\frac{p\xrightarrow{b}\surd\quad a\sharp b}{\Theta(p)\xrightarrow{b}\surd}\] \[\frac{p\xrightarrow{a}p'\quad a\sharp b}{\Theta(p)\xrightarrow{a}\Theta(p')} \quad\frac{p\xrightarrow{b}p'\quad a\sharp b}{\Theta(p)\xrightarrow{b}\Theta(p')}\] \[\frac{p\xrightarrow{c}\surd \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\sharp b\quad c\leq a}{p\triangleleft q\xrightarrow{c}\surd} \quad\frac{p\xrightarrow{c}p' \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\sharp b\quad c\leq a}{p\triangleleft q\xrightarrow{c}p'}\] \[\frac{p\xrightarrow{a}\surd \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\sharp b}{p\triangleleft q\xrightarrow{ }\surd} \quad\frac{p\xrightarrow{a}p' \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\sharp b}{p\triangleleft q\xrightarrow{ }p'}\] \[\frac{p\xrightarrow{a}\surd \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{c}\quad a\sharp b\quad b\leq c}{p\triangleleft q\xrightarrow{ }\surd} \quad\frac{p\xrightarrow{a}p' \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{c}\quad a\sharp b\quad b\leq c}{p\triangleleft q\xrightarrow{ }p'}\] \[\frac{p\xrightarrow{c}\surd \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\sharp b\quad a\leq c}{p\triangleleft q\xrightarrow{ }\surd} \quad\frac{p\xrightarrow{c}p' \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\sharp b\quad a\leq c}{p\triangleleft q\xrightarrow{ }p'}\]
The PTSS of internal confliction, confliction eliminator and the auxiliary unless operator is as follows.
\[\frac{p\xrightarrow{a}\surd\quad a\mathbin{\mathpalette\make@circled{\#}}b}{\Theta(p)\xrightarrow{a}\surd} \quad\frac{p\xrightarrow{b}\surd\quad a\mathbin{\mathpalette\make@circled{\#}}b}{\Theta(p)\xrightarrow{b}\surd}\] \[\frac{p\xrightarrow{a}p'\quad a\mathbin{\mathpalette\make@circled{\#}}b}{\Theta(p)\xrightarrow{a}\Theta(p')} \quad\frac{p\xrightarrow{b}p'\quad a\mathbin{\mathpalette\make@circled{\#}}b}{\Theta(p)\xrightarrow{b}\Theta(p')}\] \[\frac{p\xrightarrow{c}\surd \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\mathbin{\mathpalette\make@circled{\#}}b\quad c\leq a}{p\triangleleft q\xrightarrow{c}\surd} \quad\frac{p\xrightarrow{c}p' \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\mathbin{\mathpalette\make@circled{\#}}b\quad c\leq a}{p\triangleleft q\xrightarrow{c}p'}\] \[\frac{p\xrightarrow{a}\surd \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\mathbin{\mathpalette\make@circled{\#}}b}{p\triangleleft q\xrightarrow{ }\surd} \quad\frac{p\xrightarrow{a}p' \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\mathbin{\mathpalette\make@circled{\#}}b}{p\triangleleft q\xrightarrow{ }p'}\] \[\frac{p\xrightarrow{a}\surd \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{c}\quad a\mathbin{\mathpalette\make@circled{\#}}b\quad b\leq c}{p\triangleleft q\xrightarrow{ }\surd} \quad\frac{p\xrightarrow{a}p' \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{c}\quad a\mathbin{\mathpalette\make@circled{\#}}b\quad b\leq c}{p\triangleleft q\xrightarrow{ }p'}\] \[\frac{p\xrightarrow{c}\surd \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\mathbin{\mathpalette\make@circled{\#}}b\quad a\leq c}{p\triangleleft q\xrightarrow{ }\surd} \quad\frac{p\xrightarrow{c}p' \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\mathbin{\mathpalette\make@circled{\#}}b\quad a\leq c}{p\triangleleft q\xrightarrow{ }p'}\]
The PTSS of internal alternative composition is as follows.
\[\frac{}{1\rightarrowtail\surd}\] \[\frac{}{p\oplus q\rightarrowtail p} \quad\frac{}{p\oplus q\rightarrowtail q}\] \[\frac{p\rightarrowtail p'}{p\cdot q\rightarrowtail p'\cdot q}\] \[\frac{p\rightarrowtail p'}{p+q\rightarrowtail p'+q} \quad\frac{q\rightarrowtail q'}{p+q\rightarrowtail p+q'}\] \[\frac{p\rightarrowtail p'}{p\between q\rightarrowtail p'\between q} \quad\frac{q\rightarrowtail q'}{p\between q\rightarrowtail p\between q'} \quad\frac{p\rightarrowtail p'\quad q\rightarrowtail q'}{p\between q\rightarrowtail p'\between q'}\] \[\frac{p\rightarrowtail p'}{p\parallel q\rightarrowtail p'\parallel q} \quad\frac{q\rightarrowtail q'}{p\parallel q\rightarrowtail p\parallel q'} \quad\frac{p\rightarrowtail p'\quad q\rightarrowtail q'}{p\parallel q\rightarrowtail p'\parallel q'}\] \[\frac{p\rightarrowtail p'}{p\mid q\rightarrowtail p'\mid q} \quad\frac{q\rightarrowtail q'}{p\mid q\rightarrowtail p\mid q'} \quad\frac{p\rightarrowtail p'\quad q\rightarrowtail q'}{p\mid q\rightarrowtail p'\mid q'}\] \[\frac{p\rightarrowtail p'}{\partial_H(p)\rightarrowtail \partial_H(p')}\] \[\frac{p\rightarrowtail p'}{\Theta(p)\rightarrowtail \Theta(p')}\] \[\frac{p\rightarrowtail p'}{p\triangleleft q\rightarrowtail p'\triangleleft q} \quad\frac{q\rightarrowtail q'}{p\triangleleft q\rightarrowtail p\triangleleft q'}\]
Definition 71. For any PLTS \(\langle\mathsf{Proc},\mathsf{Act},\{\xrightarrow{U}|U\in\mathsf{Pom}\},\mathsf{Pred}\rangle\), \(p,p'\in\mathsf{Proc}\) and \(s\in\mathsf{Pom}^*\) respectively, the following are defined:
\(D(p,s)=\{p'\in\mathsf{Proc}|p\xrightarrow{s}p'\}\), the \(s\)-derivatives of \(p\).
\(L(p)=\{s|p\xrightarrow{s}\}\), the language of \(p\).
\(D(p)=\{p'| for some U\in\mathsf{Pom},p\xrightarrow{U}p'\}\), the derivatives of \(p\).
\(S(p)=\{U|p\xrightarrow{U}\}\), the successors of \(p\).
\(S(p,s)=\{U|p\xrightarrow{s}p'\xrightarrow{U}\}\), the successors of \(p\) after \(s\).
\(\mathscr{A}(p,s)=\{S(p')|p\xrightarrow{s}p'\}\), the Acceptance sets of \(p\) after \(s\).
If \(\mathscr{A},\mathscr{B}\) are Acceptance sets, we write \(\mathscr{A}\subset\subset\mathscr{B}\) if for every \(A\in\mathscr{A}\), there exists some \(B\in\mathscr{B}\) such that \(B\subseteq A\).
Definition 72. For any PLTS \(\langle\mathsf{Proc},\mathsf{Act},\{\xrightarrow{U}|U\in\mathsf{Pom}\},\mathsf{Pred}\rangle\), \(p,p'\in\mathsf{Proc}\) and \(s\in\mathsf{Pom}^*\) respectively, the following are defined:
\(p\ll_{\mathrm{MAY}} p'\) if \(L(p)\subseteq L(p')\).
\(p\ll_{\mathrm{MUST}} p'\) if \(\mathscr{A}(p',s)\subset\subset\mathscr{A}(p,s)\) for every \(s\in\mathsf{Pom}^*\).
\(p\ll p'\) if both \(p\ll_{\mathrm{MAY}}p'\) and \(p\ll_{\mathrm{MUST}}p'\).
Lemma 19. If \(p\ll_{\mathrm{MUST}}p'\) then \(L(p')\subseteq L(p)\).
Lemma 20. Both \(\ll_{\mathrm{MAY}}\) and \(\ll_{\mathrm{MUST}}\) are \(\Sigma^1\)-preorders.
For \(U,U_1,\cdots,U_k,V_1,\cdots,V_n\in\mathsf{Stp}\), one essential type of test is of the form denoted \(e(s,U)\) where \(s\) is the sequence \(V_1\cdots V_n\):
\[\tau w+V_1(\tau w+\cdots+V_n(\tau w+U)\cdots)\]
Another essential type of test is of the form denoted \(e(s,A)\) where \(s\) is the sequence \(V_1\cdots V_n\) and \(A\) is the set of steps \(\{U_1,\cdots,U_k\}\):
\[\tau w+V_1(\tau w+V_2(\tau w+\cdots+V_n(U_1 w+\cdots+U_k w)\cdots))\]
Let \(T\) denote the set of all experiments of the form \(e(s,U)\) or \(e(s,A)\). For \(p,q\in\mathsf{Proc}\) and every \(e\in T\), \(p\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MUST}}^T q\) if \(p~\mathsf{must}~e\) implies \(q~\mathsf{must}~e\).
Proposition 28. \(p\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MUST}}^{T} p'\) implies \(p\ll_{\mathrm{MUST}}p'\).
Theorem 29 (Alternative characterization of testing preorders). For every \(p,p'\in\mathbf{M}_1\):
\(p\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MAY}}p'\) if and only if \(p\ll_{\mathrm{MAY}}p'\).
\(p\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MUST}}p'\) if and only if \(p\ll_{\mathrm{MUST}}p'\).
\(p\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}p'\) if and only if \(p\ll p'\).
By use of the following relations:
\(p\xRightarrow{U}p'\) if \(p\rightarrowtail^* q\xrightarrow{U}q'\rightarrowtail^* p'\) for some \(q,q'\).
\(p\xRightarrow{1}p'\) if \(p\rightarrowtail^* p'\).
\(p\xRightarrow{Us}\) if \(p\xRightarrow{U}q\xRightarrow{s}p'\) for some \(q\).
and the following definitions:
\(Im(p)=\{p'|p\rightarrowtail p'\}\).
\(D(p,s)=\{p'\in\mathsf{Proc}|p\xRightarrow{s}p'\}\), the \(s\)-derivatives of \(p\).
\(L(p)=\{s|p\xRightarrow{s}\}\), the language of \(p\).
\(D(p)=\{p'| for some U\in\mathsf{Pom},p\xRightarrow{U}p'\}\), the derivatives of \(p\).
\(S(p)=\{U|p\xRightarrow{U}\}\), the successors of \(p\).
\(S(p,s)=\{U|p\xRightarrow{s}p'\xRightarrow{U}\}\), the successors of \(p\) after \(s\).
\(\mathscr{A}(p,s)=\{S(p')|p\xRightarrow{s}p'\}\), the Acceptance sets of \(p\) after \(s\).
we can get the modified definition of the preorders \(\ll_{\mathrm{MUST}}\), \(\ll_{\mathrm{MAY}}\) and \(\ll\). The result theorem of alternative characterization of testing preorders in 29 still holds.
In this section, we give the denotational semantics of the language \(\mathbf{M}_1\), the denotational interpretation of \(\mathbf{M}_1\) is finite Parallel Acceptance Tree (\(\mathbf{fPAT}\)), which is a parallelism generalization of Hennessy’s finite Acceptance Tree (\(\mathbf{fAT}\)) in [11]. In an \(\mathbf{fPAT}\), every node and every edge are labelled. Intuitively, every edge can be labelled by a single action. By this way, an \(\mathbf{fPAT}\) is usually unstructured, i.e., there are two kinds of branches: parallel ones and alternative ones, and there may exist communications or conflictions among actions located in different parallel branches. It is reasonable that all partial orders between actions in different parallel branches are communications. In the example of \(\mathbf{fPAT}\) in 1, there exist parallel branches denoted by \(\parallel\), alternative branches denoted by \(+\), communications between parallel branches denoted by lines with arrows, and conflictions between parallel branches denoted by dashed lines. Communications and conflictions between actions in different parallel branches are the causes of the unstructuredness.
The \(\mathbf{fPAT}\) in 1 can be expressed by a truly concurrent process term of the language \(\mathbf{M}_1\) with two unstructured constraints: \[(a_1\cdot((a_2\cdot a_3\cdot a_4)\between(a_5\cdot a_6\cdot a_7\cdot a_8)+(a_9\cdot a_{10})\between(a_{11}\cdot a_{12})))\between(a_{13}\cdot a_{14}\cdot a_{15}\cdot a_{16})\quad(a_3\leq^c a_6,a_{12}\sharp a_{16})\]
Definition 73 (\(\mathbf{fPAT}\)). \(\mathbf{fPAT}\), the set of finite acceptance trees over \(\mathsf{Pom}\), is the set of rooted trees whose branches are labelled by elements of \(\mathsf{Pom}\), whose nodes are labelled by subsets of \(\mathsf{Pom}^*\), and satisfies the following requirements:
R1 (Determinism): For every pomset \(U\), every node in the tree has most one successor alternative branch labelled by \(U\). So, every node in the tree is uniquely determined by a string in \(\mathsf{Pom}^*\), denoted by \(L(t)\), and if \(s\in L(t)\) we use \(t(s)\) to denote the node identified by \(s\). The set of actions labelling the successor branches of a node \(n\) is called its successor set and denoted by \(S(n)\). Note that, parallel branch is different to the alternative one, the successor parallel branches can be labelled by the same \(U\in\mathsf{Pom}\), which means \(U\) is executed several times in parallel.
R2 (Finite Branching): For every \(s\in L(t)\), \(S(L(t),s)\) is finite, where \(S(L,s)=\{U|sU\in L\}\) for \(L\subseteq\mathsf{Pom}^*\) and \(s\in\mathsf{Pom}^*\), so \(S(t(s))=S(L(t),s)\) for any tree \(t\).
R3: \(\mathscr{A}(n)\) is an \(S(n)\)-set, where \(\mathscr{A}(n)\) is the acceptance set associated with the node \(n\) and \(S(n)\) is the \(S\)-set of \(n\). These set labelling the nodes, called Acceptance sets. For \(S\subseteq\mathsf{Pom}\) and \(S\)-set \(\emptyset\neq\mathscr{A}\subseteq\mathsf{Pom}\), which satisfies:
For every \(K\in\mathscr{A}\), \(K\subseteq S\).
For every \(U\in S\), there is some \(K\in\mathscr{A}\) such that \(U\in K\).
(\(\cup\)-closed) If \(K_1,K_2\in\mathscr{A}\), then \(K_1\cup K_2\in\mathscr{A}\).
(Convex-closed) If \(K_1,K_2\in\mathscr{A}\) and \(K_1\subseteq K\subseteq K_2\), then \(K\in\mathscr{A}\).
We say \(\mathscr{A}\), which is a set of subsets, is saturated if it is an \(S\)-set for some \(S\). For \(t\in\mathbf{fPAT}\), let \(\mathsf{Act}(t)\subseteq\mathsf{Act}\) be the set of actions occurring in \(t\), and let \(\mathsf{Pom}(t)\subseteq\mathsf{Pom}\) be the set of pomsets occurring in \(t\).
Definition 74 (Partial order over \(\mathbf{fPAT}\)). A partial order \(\leq_{\mathbf{fPAT}}\) is defined over \(\mathbf{fPAT}\) as follows, for two trees \(t,t'\in\mathbf{fPAT}\), \(t\leq_{\mathbf{fPAT}}t'\), if:
\(L(t)=L(t')\).
For every \(s\in L(t')\), \(\mathscr{A}(t'(s))\subseteq\mathscr{A}(t(s))\).
Lemma 21. \(\langle \mathbf{fPAT},\leq_{\mathbf{fPAT}}\rangle\) is a partial order.
In the following, we define functions over \(\mathbf{fPAT}\) for every function symbol in \(\Sigma^1\): \(0_{\mathbf{fPAT}}\), \(1_{\mathbf{fPAT}}\), \(U_{\mathbf{fPAT}}\), \(\cdot_{\mathbf{fPAT}}\), \(+_{\mathbf{fPAT}}\), \(\oplus_{\mathbf{fPAT}}\), \(\parallel_{\mathbf{fPAT}}\), \(\gamma(a,b)_{\mathbf{fPAT}}\), \(\mid_{\mathbf{fPAT}}\), \(\between_{\mathbf{fPAT}}\), \(\partial_H(p)_{\mathbf{fPAT}}\), \(\sharp_{\mathbf{fPAT}}\), \(\Theta(p)_{\mathbf{fPAT}}\), \(\triangleleft_{\mathbf{fPAT}}\), \(\mathbin{\mathpalette\make@circled{\#}}_{\mathbf{fPAT}}\).
(1) \(0_{\mathbf{fPAT}}\).
Let \(0_{\mathbf{fPAT}}\) denote the trivial tree \(\bullet\{\emptyset\}\), which consists of only one node, labelled by the set of the empty set \(\emptyset\) with no successor branches, and rendered as \(\bullet\).
(2) \(1_{\mathbf{fPAT}}\).
Let \(1_{\mathbf{fPAT}}\) denote the trivial tree \(\bullet\{\{\}\}\), which consists of one node, labelled by the set of the empty set \(\{\}\), and rendered as \(\mathbin{\mathpalette\make@circled{\bullet}}\). Note that, \(1_{\mathbf{fPAT}}\) can have successor branches.
(3) \(U_{\mathbf{fPAT}}\).
Let \(U_{\mathbf{fPAT}}\) denote the trivial tree:
for tree= circle, fill, draw, minimum size=6pt, inner sep=0pt, l sep=20pt, s sep=30pt, /tikz/every label/.style=font=, [, circle, fill,label=right:\(\{U\}\) [,circle,double, fill, edge label=node[midway,right,font=]\(U\)] ]
Formally, the tree \(U_{\mathbf{fPAT}}\) is the tree \(t\) determined by:
\(L(t)=\{1\}\cup\{U\}\).
\(\mathscr{A}(t(1))=\{\{U\}\}\), \(\mathscr{A}(t(U))=\{\{\}\}\).
(4) \(\cdot_{\mathbf{fPAT}}\).
The function \(\cdot_{\mathbf{fPAT}}\) maps the trees
for tree= circle, draw, minimum size=6pt, inner sep=0pt, /tikz/every label/.style=font=, calign=center, parent anchor=north, child anchor=south, l sep=0pt, no edge , triangle/.style= isosceles triangle, draw, shape border rotate=90, minimum size=1.2cm, inner sep=0pt [, circle, fill [ \(t\), triangle ] ]
for tree= circle, draw, minimum size=6pt, inner sep=0pt, /tikz/every label/.style=font=, calign=center, parent anchor=north, child anchor=south, l sep=0pt, no edge , triangle/.style= isosceles triangle, draw, shape border rotate=90, minimum size=1.2cm, inner sep=0pt [, circle, fill [\(t'\), triangle] ]
to the tree
for tree= circle, draw, minimum size=6pt, inner sep=0pt, /tikz/every label/.style=font=, calign=center, parent anchor=south, child anchor=north, l sep=0pt, , triangle/.style= isosceles triangle, draw, shape border rotate=90, minimum size=1.2cm, inner sep=0pt [, circle, fill [ \(t\), triangle, no edge [, circle, fill, [ \(t'\), triangle, no edge ] ] ] ]
Formally, the tree \(t\cdot_{\mathbf{fPAT}}t'\) is the tree \(t''\) determined by:
\(L(t'')=\{1\}\cup\{ss'|s\in L(t),s'\in L(t')\}\).
\(\mathscr{A}(t''(1))=\mathscr{A}(t(1))\), \(\mathscr{A}(t''(\{\}_ss'))=\mathscr{A}(t(s'))\) where \(\{\}_s\) is the leaf of \(s\).
(5) \(+_{\mathbf{fPAT}}\).
The function \(+_{\mathbf{fPAT}}\) maps the trees
for tree= circle, draw, minimum size=6pt, inner sep=0pt, /tikz/every label/.style=font=, calign=center, parent anchor=north, child anchor=south, l sep=0pt, no edge , triangle/.style= isosceles triangle, draw, shape border rotate=90, minimum size=1.2cm, inner sep=0pt [, circle, fill [ \(t\), triangle ] ]
for tree= circle, draw, minimum size=6pt, inner sep=0pt, /tikz/every label/.style=font=, calign=center, parent anchor=north, child anchor=south, l sep=0pt, no edge , triangle/.style= isosceles triangle, draw, shape border rotate=90, minimum size=1.2cm, inner sep=0pt [, circle, fill [\(t'\), triangle] ]
to the tree
for tree= circle, draw, minimum size=6pt, inner sep=0pt, /tikz/every label/.style=font=, calign=center, parent anchor=south, child anchor=north, l sep=0pt, , left_triangle/.style= isosceles triangle, draw, shape border rotate=120, minimum size=1.2cm, inner sep=0pt, anchor=apex , right_triangle/.style= isosceles triangle, draw, shape border rotate=60, minimum size=1.2cm, inner sep=0pt, anchor=apex [, circle, fill,label=south:\(+\) [\(t\), left_triangle] [\(t'\), right_triangle] ]
Let \(\mathscr{B}\) be any finite collection of finite subsets of \(\mathsf{Pom}\) and \(A(\mathscr{B})\) be the set of actions which appear in \(\mathscr{B}\). Though in general \(\mathscr{B}\) is not an \(A(\mathscr{B})\)-set, it is always possible to extend \(\mathscr{B}\) to become an \(A(\mathscr{B})\)-set. Let \(c(\mathscr{B})\) be the least set such that:
\(\mathscr{B}\subseteq c(\mathscr{B})\).
(\(\cup\)-closed) \(X,Y\in c(\mathscr{B})\) implies \(X\cup Y\in c(\mathscr{B})\).
(Convex-closed) \(X,Y\in c(\mathscr{B})\), \(X\subseteq Z\subseteq Y\) implies \(Z\in c(\mathscr{B})\).
So, \(B\in c(\mathscr{B})\) if and only if it can be derived from the following rules:
\(B\in \mathscr{B}\) implies \(B\in c(\mathscr{B})\).
\(X,Y\in c(\mathscr{B})\) implies \(X\cup Y\in c(\mathscr{B})\).
\(X,Y\in c(\mathscr{B})\), \(X\subseteq Z\subseteq Y\) implies \(Z\in c(\mathscr{B})\).
Lemma 22. The following statements hold:
\(c(\mathscr{B})\) is an \(A(\mathscr{B})\)-set.
\(c(\mathscr{B})\) is the least saturated set containing \(\mathscr{B}\).
If \(\mathscr{B}_1\), \(\mathscr{B}_2\) are set of sets, their pointwise union is defined as: \[\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}\mathscr{B}_2=\{B_1\cup B_2|B_1\in\mathscr{B}_1,B_2\in\mathscr{B}_2\}\]
Then the operators \(c\) and \(\mathop{\mathrm{\mathcal{U}}}\) have the following properties.
c1. If \(\mathscr{B}\) is an \(S\)-set then \(c(\mathscr{B})=\mathscr{B}\).
c2. If \(\mathscr{B}\subseteq\mathscr{B}'\) then \(c(\mathscr{B})\subseteq c(\mathscr{B}')\).
c3. \(c(\mathscr{B})=c(c(\mathscr{B}))\).
c4. \(c(\mathscr{B}_1\cup c(\mathscr{B}_2\cup\mathscr{B}_3))=c(\mathscr{B}_1\cup\mathscr{B}_2\cup\mathscr{B}_3)\).
c5. \(c(\mathscr{B}_1\cup\mathscr{B}_2)=c(c(\mathscr{B}_1)\cup c(\mathscr{B}_2))\).
c6. If \(A\in c(\mathscr{B})\) then \(B\subseteq A\) for some \(B\in\mathscr{B}\).
du1. \((\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}\mathscr{B}_2)\mathop{\mathrm{\mathcal{U}}}\mathscr{B}_3=\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}(\mathscr{B}_2\mathop{\mathrm{\mathcal{U}}}\mathscr{B}_3)\).
du2. \(\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}\mathscr{B}_2=\mathscr{B}_2\mathop{\mathrm{\mathcal{U}}}\mathscr{B}_1\).
du3. If \(\mathscr{B}\) is saturated, then \(\mathscr{B}\mathop{\mathrm{\mathcal{U}}}\mathscr{B}=\mathscr{B}\).
du4. \(\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}(\mathscr{B}_2\cup \mathscr{B}_3)=(\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}\mathscr{B}_2)\cup(\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}\mathscr{B}_3)\).
c7. If \(\mathscr{B}_1,\mathscr{B}_2\) are saturated, \(\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}\mathscr{B}_2\) is saturated.
c8. \(c(\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}\mathscr{B}_2)=c(\mathscr{B}_1)\mathop{\mathrm{\mathcal{U}}}c(\mathscr{B}_2)\).
Then, formally, the tree \(t+_{\mathbf{fPAT}}t'\) is the tree \(t''\) determined by:
\(L(t'')=L(t)\cup L(t')\).
\(\mathscr{A}(t'')=\mathscr{A}(t)\mathop{\mathrm{\mathcal{U}}}\mathscr{A}(t')\).
\(\mathscr{A}(t''(s))=c(\mathscr{A}(t(s))\cup\mathscr{A}(t'(s)))\) where \(s\neq 1\), and if \(s\notin L(t)\) then \(\mathscr{A}(t(s))=\emptyset\).
(6) \(\oplus_{\mathbf{fPAT}}\).
The function \(\oplus_{\mathbf{fPAT}}\) maps the trees
for tree= circle, draw, minimum size=6pt, inner sep=0pt, /tikz/every label/.style=font=, calign=center, parent anchor=north, child anchor=south, l sep=0pt, no edge , triangle/.style= isosceles triangle, draw, shape border rotate=90, minimum size=1.2cm, inner sep=0pt [, circle, fill [ \(t\), triangle ] ]
for tree= circle, draw, minimum size=6pt, inner sep=0pt, /tikz/every label/.style=font=, calign=center, parent anchor=north, child anchor=south, l sep=0pt, no edge , triangle/.style= isosceles triangle, draw, shape border rotate=90, minimum size=1.2cm, inner sep=0pt [, circle, fill [\(t'\), triangle] ]
to the tree
for tree= circle, draw, minimum size=6pt, inner sep=0pt, /tikz/every label/.style=font=, calign=center, parent anchor=south, child anchor=north, l sep=0pt, , left_triangle/.style= isosceles triangle, draw, shape border rotate=120, minimum size=1.2cm, inner sep=0pt, anchor=apex , right_triangle/.style= isosceles triangle, draw, shape border rotate=60, minimum size=1.2cm, inner sep=0pt, anchor=apex [, circle, fill,label=south:\(\oplus\) [\(t\), left_triangle] [\(t'\), right_triangle] ]
Formally, the tree \(t\oplus_{\mathbf{fPAT}}t'\) is the tree \(t''\) determined by:
\(L(t'')=L(t)\cup L(t')\).
\(\mathscr{A}(t''(s))=c(\mathscr{A}(t(s))\cup\mathscr{A}(t'(s)))\) for every \(s\in L(t'')\), and if \(s\notin L(t)\) then \(\mathscr{A}(t(s))=\emptyset\).
(7) \(\parallel_{\mathbf{fPAT}}\), \(\gamma(a,b)_{\mathbf{fPAT}}\), \(\mid_{\mathbf{fPAT}}\), \(\between_{\mathbf{fPAT}}\) and \(\partial_H(p)_{\mathbf{fPAT}}\).
The function \(\parallel_{\mathbf{fPAT}}\) maps the trees
for tree= circle, draw, minimum size=6pt, inner sep=0pt, /tikz/every label/.style=font=, calign=center, parent anchor=north, child anchor=south, l sep=0pt, no edge , triangle/.style= isosceles triangle, draw, shape border rotate=90, minimum size=1.2cm, inner sep=0pt [, circle, fill [ \(t\), triangle ] ]
for tree= circle, draw, minimum size=6pt, inner sep=0pt, /tikz/every label/.style=font=, calign=center, parent anchor=north, child anchor=south, l sep=0pt, no edge , triangle/.style= isosceles triangle, draw, shape border rotate=90, minimum size=1.2cm, inner sep=0pt [, circle, fill [\(t'\), triangle] ]
to the tree
for tree= circle, draw, minimum size=6pt, inner sep=0pt, /tikz/every label/.style=font=, calign=center, parent anchor=south, child anchor=north, l sep=0pt, , left_triangle/.style= isosceles triangle, draw, shape border rotate=120, minimum size=1.2cm, inner sep=0pt, anchor=apex , right_triangle/.style= isosceles triangle, draw, shape border rotate=60, minimum size=1.2cm, inner sep=0pt, anchor=apex [, circle, fill,label=south:\(\parallel\) [\(t\), left_triangle] [\(t'\), right_triangle] ]
The function \(\mid_{\mathbf{fPAT}}\) maps the trees
for tree= circle, draw, minimum size=6pt, inner sep=0pt, /tikz/every label/.style=font=, calign=center, parent anchor=north, child anchor=south, l sep=0pt, no edge , triangle/.style= isosceles triangle, draw, shape border rotate=90, minimum size=1.2cm, inner sep=0pt [, circle, fill [ \(t\), triangle ] ]
for tree= circle, draw, minimum size=6pt, inner sep=0pt, /tikz/every label/.style=font=, calign=center, parent anchor=north, child anchor=south, l sep=0pt, no edge , triangle/.style= isosceles triangle, draw, shape border rotate=90, minimum size=1.2cm, inner sep=0pt [, circle, fill [\(t'\), triangle] ]
to the tree
for tree= circle, draw, minimum size=6pt, inner sep=0pt, /tikz/every label/.style=font=, calign=center, parent anchor=south, child anchor=north, l sep=0pt, , left_triangle/.style= isosceles triangle, draw, shape border rotate=120, minimum size=1.2cm, inner sep=0pt, anchor=apex , right_triangle/.style= isosceles triangle, draw, shape border rotate=60, minimum size=1.2cm, inner sep=0pt, anchor=apex [, circle, fill,label=south:\(\mid\) [\(t\), left_triangle] [\(t'\), right_triangle] ]
The function \(\between_{\mathbf{fPAT}}\) maps the trees
for tree= circle, draw, minimum size=6pt, inner sep=0pt, /tikz/every label/.style=font=, calign=center, parent anchor=north, child anchor=south, l sep=0pt, no edge , triangle/.style= isosceles triangle, draw, shape border rotate=90, minimum size=1.2cm, inner sep=0pt [, circle, fill [ \(t\), triangle ] ]
for tree= circle, draw, minimum size=6pt, inner sep=0pt, /tikz/every label/.style=font=, calign=center, parent anchor=north, child anchor=south, l sep=0pt, no edge , triangle/.style= isosceles triangle, draw, shape border rotate=90, minimum size=1.2cm, inner sep=0pt [, circle, fill [\(t'\), triangle] ]
to the tree
for tree= circle, draw, minimum size=6pt, inner sep=0pt, /tikz/every label/.style=font=, calign=center, parent anchor=south, child anchor=north, l sep=0pt, , left_triangle/.style= isosceles triangle, draw, shape border rotate=120, minimum size=1.2cm, inner sep=0pt, anchor=apex , right_triangle/.style= isosceles triangle, draw, shape border rotate=60, minimum size=1.2cm, inner sep=0pt, anchor=apex [, circle, fill,label=south:\(\between\) [\(t\), left_triangle] [\(t'\), right_triangle] ]
Firstly, we define the parallelism of sets. In this book, every element of a set is a pomset \(U\in\mathsf{Pom}\), for two such sets \(B_1,B_2\), their parallelism is defined as: \[B_1\parallel B_2=\{U_1\parallel U_2|U_1\in B_1,U_2\in B_2\}\] where \(U_1\parallel U_2\) is the parallel composition of pomsets defined in 2.2. Similarly, we can define the communication of sets and the concurrency of sets: \(B_1\mid B_2\) and \(B_1\between B_2\), respectively.
If \(\mathscr{B}_1\), \(\mathscr{B}_2\) are set of sets, their pointwise parallelism is defined as: \[\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}_{\parallel}\mathscr{B}_2=\{B_1\parallel B_2|B_1\in\mathscr{B}_1,B_2\in\mathscr{B}_2\}\]
Similarly, we can define their pointwise communication and pointwise concurrency as: \(\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}_{\mid}\mathscr{B}_2\) and \(\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}_{\between}\mathscr{B}_2\).
Then the operators \(\mathop{\mathrm{\mathcal{U}}}_{\parallel}\), \(\mathop{\mathrm{\mathcal{U}}}_{\mid}\) and \(\mathop{\mathrm{\mathcal{U}}}_{\between}\) have the following properties.
dp1. \((\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}_{\parallel} \mathscr{B}_2)\mathop{\mathrm{\mathcal{U}}}_{\parallel} \mathscr{B}_3=\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}_{\parallel}(\mathscr{B}_2\mathop{\mathrm{\mathcal{U}}}_{\parallel} \mathscr{B}_3)\).
dp2. \(\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}_{\parallel} \mathscr{B}_2=\mathscr{B}_2\mathop{\mathrm{\mathcal{U}}}_{\parallel} \mathscr{B}_1\).
dp3. \(\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}_{\parallel} (\mathscr{B}_2\cup \mathscr{B}_3)=(\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}_{\parallel} \mathscr{B}_2)\cup(\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}_{\parallel} \mathscr{B}_3)\).
dp4. If \(\mathscr{B}_1,\mathscr{B}_2\) are saturated, \(\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}_{\parallel} \mathscr{B}_2\) is saturated.
dp5. \(c(\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}_{\parallel} \mathscr{B}_2)=c(\mathscr{B}_1)\mathop{\mathrm{\mathcal{U}}}_{\parallel} c(\mathscr{B}_2)\).
dp6. \((\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}_{\mid} \mathscr{B}_2)\mathop{\mathrm{\mathcal{U}}}_{\mid} \mathscr{B}_3=\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}_{\mid}(\mathscr{B}_2\mathop{\mathrm{\mathcal{U}}}_{\mid} \mathscr{B}_3)\).
dp7. \(\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}_{\mid} \mathscr{B}_2=\mathscr{B}_2\mathop{\mathrm{\mathcal{U}}}_{\mid} \mathscr{B}_1\).
dp8. \(\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}_{\mid} (\mathscr{B}_2\cup \mathscr{B}_3)=(\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}_{\mid} \mathscr{B}_2)\cup(\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}_{\mid} \mathscr{B}_3)\).
dp9. If \(\mathscr{B}_1,\mathscr{B}_2\) are saturated, \(\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}_{\mid} \mathscr{B}_2\) is saturated.
dp10. \(c(\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}_{\mid} \mathscr{B}_2)=c(\mathscr{B}_1)\mathop{\mathrm{\mathcal{U}}}_{\mid} c(\mathscr{B}_2)\).
dp11. \((\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}_{\between} \mathscr{B}_2)\mathop{\mathrm{\mathcal{U}}}_{\between} \mathscr{B}_3=\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}_{\between}(\mathscr{B}_2\mathop{\mathrm{\mathcal{U}}}_{\between} \mathscr{B}_3)\).
dp12. \(\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}_{\between} \mathscr{B}_2=\mathscr{B}_2\mathop{\mathrm{\mathcal{U}}}_{\between} \mathscr{B}_1\).
dp13. \(\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}_{\between} (\mathscr{B}_2\cup \mathscr{B}_3)=(\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}_{\between} \mathscr{B}_2)\cup(\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}_{\between} \mathscr{B}_3)\).
dp14. If \(\mathscr{B}_1,\mathscr{B}_2\) are saturated, \(\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}_{\between} \mathscr{B}_2\) is saturated.
dp15. \(c(\mathscr{B}_1\mathop{\mathrm{\mathcal{U}}}_{\between} \mathscr{B}_2)=c(\mathscr{B}_1)\mathop{\mathrm{\mathcal{U}}}_{\between} c(\mathscr{B}_2)\).
Then, formally, the tree \(t\parallel_{\mathbf{fPAT}}t'\) is the tree \(t''\) determined by:
\(L(t'')=L(t)\parallel L(t')\).
\(\mathscr{A}(t'')=\mathscr{A}(t)\mathop{\mathrm{\mathcal{U}}}_{\parallel}\mathscr{A}(t')\).
\(\mathscr{A}(t''(s))=c(\mathscr{A}(t(s))\parallel\mathscr{A}(t'(s)))\) where \(s\neq 1\), and if \(s\notin L(t)\) then \(\mathscr{A}(t(s))=\emptyset\).
The tree \(t\mid_{\mathbf{fPAT}}t'\) is the tree \(t''\) determined by:
\(L(t'')=L(t)\mid L(t')\).
\(\mathscr{A}(t'')=\mathscr{A}(t)\mathop{\mathrm{\mathcal{U}}}_{\mid}\mathscr{A}(t')\).
\(\mathscr{A}(t''(s))=c(\mathscr{A}(t(s))\mid\mathscr{A}(t'(s)))\) where \(s\neq 1\), and if \(s\notin L(t)\) then \(\mathscr{A}(t(s))=\emptyset\).
The tree \(t\between_{\mathbf{fPAT}}t'\) is the tree \(t''\) determined by:
\(L(t'')=L(t)\between L(t')\).
\(\mathscr{A}(t'')=\mathscr{A}(t)\mathop{\mathrm{\mathcal{U}}}_{\between}\mathscr{A}(t')\).
\(\mathscr{A}(t''(s))=c(\mathscr{A}(t(s))\between\mathscr{A}(t'(s)))\) where \(s\neq 1\), and if \(s\notin L(t)\) then \(\mathscr{A}(t(s))=\emptyset\).
According to the definitions of parallel composition, communication composition and concurrent composition of pomsets in 2.2, the tree
for tree= circle, draw, minimum size=6pt, inner sep=0pt, /tikz/every label/.style=font=, calign=center, parent anchor=south, child anchor=north, l sep=0pt, , left_triangle/.style= isosceles triangle, draw, shape border rotate=120, minimum size=1.2cm, inner sep=0pt, anchor=apex , right_triangle/.style= isosceles triangle, draw, shape border rotate=60, minimum size=1.2cm, inner sep=0pt, anchor=apex [, circle, fill,label=south:\(\between\) [\(t\), left_triangle] [\(t'\), right_triangle] ]
is equivalent to the tree
for tree= circle, draw, minimum size=6pt, inner sep=0pt, /tikz/every label/.style=font=, calign=center, parent anchor=south, child anchor=north, l sep=0pt, , left_triangle/.style= isosceles triangle, draw, shape border rotate=120, minimum size=1.2cm, inner sep=0pt, anchor=apex , right_triangle/.style= isosceles triangle, draw, shape border rotate=60, minimum size=1.2cm, inner sep=0pt, anchor=apex [, circle, fill,label=south:\(+\), label=south west:\(\parallel\), label=south east:\(\mid\) [\(t\), left_triangle] [\(t'\), right_triangle] [\(t\), left_triangle] [\(t'\), right_triangle] ]
Formally the tree \(t\between_{\mathbf{fPAT}}t'\) is the tree \(t''\) determined by:
\(L(t'')=L(t)\between L(t')=(L(t)\parallel L(t'))\cup (L(t)\mid L(t'))\).
\(\mathscr{A}(t'')=\mathscr{A}(t)\mathop{\mathrm{\mathcal{U}}}_{\between}\mathscr{A}(t')=(\mathscr{A}(t)\mathop{\mathrm{\mathcal{U}}}_{\parallel}\mathscr{A}(t'))\mathop{\mathrm{\mathcal{U}}}(\mathscr{A}(t)\mathop{\mathrm{\mathcal{U}}}_{\mid}\mathscr{A}(t'))\).
\(\mathscr{A}(t''(s))=c(\mathscr{A}(t(s))\between\mathscr{A}(t'(s)))=(c(\mathscr{A}(t(s))\parallel\mathscr{A}(t'(s))))\cup (c(\mathscr{A}(t(s))\mid\mathscr{A}(t'(s))))\) where \(s\neq 1\), and if \(s\notin L(t)\) then \(\mathscr{A}(t(s))=\emptyset\).
For \(a\in\mathsf{Act}(t)\) and \(b\in\mathsf{Act}(t')\), \(a,b\) in the tree \(t\mid_{\mathbf{fPAT}}t'\) are merged into \(\gamma(a,b)\) if \(a\leq^c b\); into \(0\), otherwise.
For \(H\subseteq\mathsf{Act}(t\parallel_{\mathbf{fPAT}}t')\), \(\partial_H(t\parallel_{\mathbf{fPAT}}t')\) renames every \(a\in H\) into \(0\); and remains themselves unchanged for all \(a\notin H\) and \(a\in\mathsf{Act}(t\parallel_{\mathbf{fPAT}}t')\).
Note that, in a tree \(t\in\mathbf{fPAT}\), arbitrary \(1\)’s can be padded in the alternative branches and parallel branches, but, we leave the padding of \(1\)’s as the privilege of the modelling phase to explicitly present the existences of \(1\)’s.
(8) \(\sharp_{\mathbf{fPAT}}\), \(\Theta(p)_{\mathbf{fPAT}}\), \(\triangleleft_{\mathbf{fPAT}}\) and \(\mathbin{\mathpalette\make@circled{\#}}_{\mathbf{fPAT}}\).
For \(a\in\mathsf{Act}(t)\) and \(b\in\mathsf{Act}(t')\), there exists a confliction relation \(a\sharp b\) in the tree \(t\parallel_{\mathbf{fPAT}}t'\) (resp. \(t\mid_{\mathbf{fPAT}}t'\)), \(\Theta(t\parallel_{\mathbf{fPAT}}t')_{\mathbf{fPAT}}\) (resp. \(\Theta(t\mid_{\mathbf{fPAT}}t')_{\mathbf{fPAT}}\)) and \(\triangleleft_{\mathbf{fPAT}}\) rename \(\{s'|t(1)\xrightarrow{s}\xrightarrow{a}t(s')\}\) to \(1\)’s and remain \(t'\) unchanged, or rename \(\{s'|t'(1)\xrightarrow{s}\xrightarrow{b}t'(s')\}\) to \(1\)’s and remain \(t\) unchanged. This is reflected that the tree
for tree= circle, fill, draw, minimum size=6pt, inner sep=0pt, l sep=20pt, s sep=30pt, /tikz/every label/.style=font=, [,name=R,label=south:\(\parallel\) [,name=C1,label=south:\(\vdots\) [,name=C11, no edge [,name=C111,label=south:\(\vdots\), edge label=node[midway,sloped,below,font=]\(a\)] ] ] [,name=C2,label=south:\(\vdots\) [,name=C21,no edge [,name=C211,label=south:\(\vdots\), edge label=node[midway,sloped,above,font=]\(b\)] ] ] ] (C11) to node[midway,sloped,above,font=]\(\sharp\) (C21);
is equivalent to the tree
for tree= circle, fill, draw, minimum size=6pt, inner sep=0pt, l sep=20pt, s sep=30pt, /tikz/every label/.style=font=, [,name=R,label=south:\(+\), label=south east:\(\parallel\),label=south west:\(\parallel\) [,name=C1,label=south:\(\vdots\) [,name=C11, no edge [,name=C111,label=south:\(\vdots\), edge label=node[midway,sloped,below,font=]\(a\)] ] ] [,name=C2,label=south:\(\vdots\) [,name=C21,no edge] ] [,name=C3,label=south:\(\vdots\) [,name=C31, no edge] ] [,name=C4,label=south:\(\vdots\) [,name=C41,no edge [,name=C411,label=south:\(\vdots\), edge label=node[midway,sloped,above,font=]\(b\)] ] ] ]
For \(a\in\mathsf{Act}(t)\) and \(b\in\mathsf{Act}(t')\), there exists an internal confliction relation \(a\mathbin{\mathpalette\make@circled{\#}}b\) in the tree \(t\parallel_{\mathbf{fPAT}}t'\) (resp. \(t\mid_{\mathbf{fPAT}}t'\)), \(\Theta(t\parallel_{\mathbf{fPAT}}t')_{\mathbf{fPAT}}\) (resp. \(\Theta(t\mid_{\mathbf{fPAT}}t')_{\mathbf{fPAT}}\)) and \(\triangleleft_{\mathbf{fPAT}}\) rename \(\{s'|t(1)\xrightarrow{s}\xrightarrow{a}t(s')\}\) to \(1\)’s and remain \(t'\) unchanged, or rename \(\{s'|t'(1)\xrightarrow{s}\xrightarrow{b}t'(s')\}\) to \(1\)’s and remain \(t\) unchanged. This is reflected that the tree
for tree= circle, fill, draw, minimum size=6pt, inner sep=0pt, l sep=20pt, s sep=30pt, /tikz/every label/.style=font=, [,name=R,label=south:\(\parallel\) [,name=C1,label=south:\(\vdots\) [,name=C11, no edge [,name=C111,label=south:\(\vdots\), edge label=node[midway,sloped,below,font=]\(a\)] ] ] [,name=C2,label=south:\(\vdots\) [,name=C21,no edge [,name=C211,label=south:\(\vdots\), edge label=node[midway,sloped,above,font=]\(b\)] ] ] ] (C11) to node[midway,sloped,above,font=]\(\mathbin{\mathpalette\make@circled{\#}}\) (C21);
is equivalent to the tree
for tree= circle, fill, draw, minimum size=6pt, inner sep=0pt, l sep=20pt, s sep=30pt, /tikz/every label/.style=font=, [,name=R,label=south:\(\oplus\), label=south east:\(\parallel\),label=south west:\(\parallel\) [,name=C1,label=south:\(\vdots\) [,name=C11, no edge [,name=C111,label=south:\(\vdots\), edge label=node[midway,sloped,below,font=]\(a\)] ] ] [,name=C2,label=south:\(\vdots\) [,name=C21,no edge] ] [,name=C3,label=south:\(\vdots\) [,name=C31, no edge] ] [,name=C4,label=south:\(\vdots\) [,name=C41,no edge [,name=C411,label=south:\(\vdots\), edge label=node[midway,sloped,above,font=]\(b\)] ] ] ]
Proposition 30. \(\langle \mathbf{fPAT},\leq_{\mathbf{fPAT}},\Sigma^1_{\mathbf{fPAT}}\rangle\) is a \(\Sigma\)-po algebra.
Lemma 23. For every \(p\) in \(\mathbf{M}_1\),
\(L(p)=L(\mathbf{fPAT}\llbracket p\rrbracket)\).
For every \(s\in L(p)\), it holds that \(c(\mathscr{A}(p,s))=\mathscr{A}(\mathbf{fPAT}\llbracket p\rrbracket(s))\).
Lemma 24. If \(A(\mathscr{B})=A(\mathscr{A})\) then \(\mathscr{B}\subset\subset\mathscr{A}\) if and only if \(c(\mathscr{B})\subseteq c(\mathscr{A})\).
Theorem 31 (Full Abstraction for \(\mathbf{fPAT}\)). If \(p,q\in\mathbf{M}_1\), then \(p\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}q\) if and only if \(\mathbf{fPAT}\llbracket p\rrbracket\leq_{\mathbf{fPAT}}\mathbf{fPAT}\llbracket q\rrbracket\).
The proof system \(\mathbf{DED}(E^1)\) of inequations of \(\mathbf{M}_1\) is shown in 1.
| No. | Axiom |
|---|---|
| Continuing: Proof system \(\mathbf{DED}(E^1)\) of \(\mathbf{M}_1\) | |
| No. | Axiom |
| to be continued… | |
| \(A1\) | \(x+ y = y+ x\) |
| \(A2\) | \((x+ y)+ z = x+ (y+ z)\) |
| \(A3\) | \(x+ x = x\) |
| \(A4\) | \(x+ 0 = x\) |
| \(A5\) | \(x\oplus y = y\oplus x\) |
| \(A6\) | \((x\oplus y)\oplus z = x\oplus (y\oplus z)\) |
| \(A7\) | \(x\oplus x = x\) |
| \(A8\) | \(x\oplus y\leq x+y\) |
| \(A9\) | \(x+(y\oplus z)=(x+y)\oplus(x+z)\) |
| \(A10\) | \(x\oplus(y+z)=(x\oplus y)+(x\oplus z)\) |
| \(A11\) | \((x+y)\cdot z=x\cdot z+y\cdot z\) |
| \(A12\) | \((x\oplus y)\cdot z=x\cdot z\oplus y\cdot z\) |
| \(A13\) | \(U\cdot x+U\cdot y=U\cdot x\oplus U\cdot y\) |
| \(A14\) | \(U\cdot x\oplus U\cdot y=U\cdot(x\oplus y)\) |
| \(A15\) | \((x\cdot y)\cdot z=x\cdot(y\cdot z)\) |
| \(A16\) | \(0\cdot x =0\) |
| \(A17\) | \(x\cdot 1=x\) |
| \(A18\) | \(1\cdot x=x\) |
| \(P1\) | \(x\between y = x\parallel y + x\mid y\) |
| \(P2\) | \(a\parallel (b\cdot y) = (a\parallel b)\cdot y\) |
| \(P3\) | \((a\cdot x)\parallel b = (a\parallel b)\cdot x\) |
| \(P4\) | \((a\cdot x)\parallel (b\cdot y) = (a\parallel b)\cdot(x\between y)\) |
| \(P5\) | \((x+ y)\parallel z = (x\parallel z)+ (y\parallel z)\) |
| \(P6\) | \(x\parallel (y+ z) = (x\parallel y)+ (x\parallel z)\) |
| \(P7\) | \((x\oplus y)\parallel z = (x\parallel z)\oplus (y\parallel z)\) |
| \(P8\) | \(x\parallel (y\oplus z) = (x\parallel y)\oplus (x\parallel z)\) |
| \(P9\) | \(0\parallel x = 0\) |
| \(P10\) | \(x\parallel 0 = 0\) |
| \(P11\) | \(x\parallel 1=x\) |
| \(P12\) | \(1\parallel x=x\) |
| \(C1\) | \(a\mid b = \gamma(a,b)\) |
| \(C2\) | \(a\mid (b\cdot y) = \gamma(a,b)\cdot y\) |
| \(C3\) | \((a\cdot x)\mid b = \gamma(a,b)\cdot x\) |
| \(C4\) | \((a\cdot x)\mid (b\cdot y) = \gamma(a,b)\cdot (x\between y)\) |
| \(C5\) | \((x+ y)\mid z = (x\mid z) + (y\mid z)\) |
| \(C6\) | \(x\mid (y+ z) = (x\mid y)+ (x\mid z)\) |
| \(C7\) | \((x\oplus y)\mid z = (x\mid z) \oplus (y\mid z)\) |
| \(C8\) | \(x\mid (y\oplus z) = (x\mid y)\oplus (x\mid z)\) |
| \(C9\) | \(0\mid x = 0\) |
| \(C10\) | \(x\mid 0 = 0\) |
| \(C11\) | \(1\mid x = 0\) |
| \(C12\) | \(x\mid 1 = 0\) |
| \(CE1\) | \(\Theta(a) = a\) |
| \(CE2\) | \(\Theta(U) = U\) |
| \(CE3\) | \(\Theta(0) = 0\) |
| \(CE4\) | \(\Theta(1) = 1\) |
| \(CE5\) | \(\Theta(x+ y) = \Theta(x) + \Theta(y)\) |
| \(CE6\) | \(\Theta(x\oplus y) = \Theta(x) \oplus \Theta(y)\) |
| \(CE7\) | \(\Theta(x\cdot y)=\Theta(x)\cdot\Theta(y)\) |
| \(CE8\) | \((\exists a\in \mathsf{Act}(x),b\in\mathsf{Act(y)},a\sharp b)\quad\Theta(x\parallel y) = ((\Theta(x)\triangleleft y)\parallel y)+ ((\Theta(y)\triangleleft x)\parallel x)\) |
| \(CE9\) | \((\exists a\in \mathsf{Act}(x),b\in\mathsf{Act(y)},a\sharp b)\quad\Theta(x\mid y) = ((\Theta(x)\triangleleft y)\mid y)+ ((\Theta(y)\triangleleft x)\mid x)\) |
| \(CE10\) | \((\exists a\in \mathsf{Act}(x),b\in\mathsf{Act(y)},a\mathbin{\mathpalette\make@circled{\#}}b)\quad\Theta(x\parallel y) = ((\Theta(x)\triangleleft y)\parallel y)\oplus ((\Theta(y)\triangleleft x)\parallel x)\) |
| \(CE11\) | \((\exists a\in \mathsf{Act}(x),b\in\mathsf{Act(y)},a\mathbin{\mathpalette\make@circled{\#}}b)\quad\Theta(x\mid y) = ((\Theta(x)\triangleleft y)\mid y)\oplus ((\Theta(y)\triangleleft x)\mid x)\) |
| \(U1\) | \((a\sharp b,c\leq a)\quad c\triangleleft b = c\) |
| \(U2\) | \((a\sharp b)\quad a\triangleleft b = 1\) |
| \(U3\) | \((a\sharp b,b\leq c)\quad a\triangleleft c = 1\) |
| \(U4\) | \((a\sharp b,b\leq c)\quad c\triangleleft a = 1\) |
| \(U5\) | \((a\mathbin{\mathpalette\make@circled{\#}}b,c\leq a)\quad c\triangleleft b = c\) |
| \(U6\) | \((a\mathbin{\mathpalette\make@circled{\#}}b)\quad a\triangleleft b = 1\) |
| \(U7\) | \((a\mathbin{\mathpalette\make@circled{\#}}b,b\leq c)\quad a\triangleleft c = 1\) |
| \(U8\) | \((a\mathbin{\mathpalette\make@circled{\#}}b,b\leq c)\quad c\triangleleft a = 1\) |
| \(U9\) | \(a\triangleleft 0 = a\) |
| \(U10\) | \(0 \triangleleft a = 0\) |
| \(U11\) | \(a\triangleleft 1 = a\) |
| \(U12\) | \(1\triangleleft a = 1\) |
| \(U13\) | \((x+ y)\triangleleft z = (x\triangleleft z)+ (y\triangleleft z)\) |
| \(U14\) | \((x\oplus y)\triangleleft z = (x\triangleleft z)\oplus (y\triangleleft z)\) |
| \(U15\) | \((x\cdot y)\triangleleft y = (x\triangleleft y)\cdot(y\triangleleft y)\) |
| \(U16\) | \((x\parallel y)\triangleleft z = (x\triangleleft z)\parallel (y\triangleleft z)\) |
| \(U17\) | \((x\mid y)\triangleleft z = (x\triangleleft z)\mid (y\triangleleft z)\) |
| \(U18\) | \(x\triangleleft (y+ z) = (x\triangleleft y)\triangleleft z\) |
| \(U19\) | \(x\triangleleft (y\oplus z) = (x\triangleleft y)\triangleleft z\) |
| \(U20\) | \(x\triangleleft (y\cdot z)=(x\triangleleft y)\triangleleft z\) |
| \(U21\) | \(x\triangleleft (y\parallel z) = (x\triangleleft y)\triangleleft z\) |
| \(U22\) | \(x\triangleleft (y\mid z) = (x\triangleleft y)\triangleleft z\) |
| \(D1\) | \((a\notin H)\quad\partial_H(a) = a\) |
| \(D2\) | \((a\in H)\quad \partial_H(a) = 0\) |
| \(D3\) | \(\partial_H(0) = 0\) |
| \(D4\) | \(\partial_H(1) = 1\) |
| \(D5\) | \(\partial_H(x+ y) = \partial_H(x)+\partial_H(y)\) |
| \(D6\) | \(\partial_H(x\oplus y) = \partial_H(x)\oplus\partial_H(y)\) |
| \(D7\) | \(\partial_H(x\cdot y) = \partial_H(x)\cdot\partial_H(y)\) |
| \(D8\) | \(\partial_H(x\parallel y) = \partial_H(x)\parallel\partial_H(y)\) |
Proposition 32. \(\mathbf{fPAT}\) is in \(\mathscr{C}(E^1)\).
Lemma 25. The mapping \(i_{\mathbf{fPAT}}\) from \(\mathbf{M}_1\) to \(\mathbf{fPAT}\) is surjective.
If \(P\) is a finite set of terms \(p_1,\cdots,p_k\), let \(\sum\{p|p\in P\}\) denote the term \[p_1+p_2+\cdots+p_k\] If \(P\) is a nonempty finite set of terms \(p_1,\cdots,p_k\), let \(\mathop{ \mathchoice { \begin{tikzpicture}[baseline=(char.base), inner sep=0, outer sep=0] \draw (-0.3ex,0) circle (0.1); \node (char) at (0,0) {\displaystyle\sum}; \end{tikzpicture}} { \begin{tikzpicture}[baseline=(char.base), inner sep=0, outer sep=0] \draw (-0.3ex,0) circle (0.075); \node (char) at (0,0) {\textstyle\sum}; \end{tikzpicture}} { \begin{tikzpicture}[baseline=(char.base), inner sep=0, outer sep=0] \draw (-0.3ex,0) circle (0.075); \node (char) at (0,0) {\scriptstyle\sum}; \end{tikzpicture}} { \begin{tikzpicture}[baseline=(char.base), inner sep=0, outer sep=0] \draw (-0.3ex,0) circle (0.075); \node (char) at (0,0) {\scriptscriptstyle\sum}; \end{tikzpicture}} }\displaylimits \{p|p\in P\}\) denote the term \[p_1\oplus p_2\oplus \cdots\oplus p_k\]
Definition 75 (Normal form). The normal form is defined inductively as follows:
\(0\) is a normal form.
If \(\mathscr{A}\) is saturated set and for every \(U\) in \(A(\mathscr{A})\) there is a normal form \(n(U)\), then \(\mathop{ \mathchoice { \begin{tikzpicture}[baseline=(char.base), inner sep=0, outer sep=0] \draw (-0.3ex,0) circle (0.1); \node (char) at (0,0) {\displaystyle\sum}; \end{tikzpicture}} { \begin{tikzpicture}[baseline=(char.base), inner sep=0, outer sep=0] \draw (-0.3ex,0) circle (0.075); \node (char) at (0,0) {\textstyle\sum}; \end{tikzpicture}} { \begin{tikzpicture}[baseline=(char.base), inner sep=0, outer sep=0] \draw (-0.3ex,0) circle (0.075); \node (char) at (0,0) {\scriptstyle\sum}; \end{tikzpicture}} { \begin{tikzpicture}[baseline=(char.base), inner sep=0, outer sep=0] \draw (-0.3ex,0) circle (0.075); \node (char) at (0,0) {\scriptscriptstyle\sum}; \end{tikzpicture}} }\displaylimits \{n(A)|A\in\mathscr{A}\}\) is a normal form, where \(n(A)\) represents \(\sum\{Un(U)|U\in A\}\).
Lemma 26. If \(n,m\) are normal forms, then \(\mathbf{fPAT}\llbracket n\rrbracket\leq_{\mathbf{fPAT}}\mathbf{fPAT}\llbracket m\rrbracket\) implies \(n\leq_{E^1}m\).
Theorem 33 (Normal form theorem). For every term \(p\) in \(\mathbf{M}_1\), there exists a normal form \(nf(p)\) such that \(p=_{E^1}nf(p)\).
Theorem 34 (Completeness). For \(p,q\in\mathbf{M}_1\), \(\mathbf{fPAT}\llbracket p\rrbracket\leq_{\mathbf{fPAT}}\mathbf{fPAT}\llbracket q\rrbracket\) implies \(p\leq_{E^1}q\).
Theorem 35 (Initiality of \(\mathbf{fPAT}\)). \(\mathbf{fPAT}\) is initial in \(\mathscr{C}(E^1)\).
Definition 76. A partial order \(\leq^{\mathrm{MUST}}_{\mathbf{fPAT}}\) is defined over \(\mathbf{fPAT}\) as follows, for two trees \(t,t'\in\mathbf{fPAT}\), \(t\leq^{\mathrm{MUST}}_{\mathbf{fPAT}}t'\), if:
For every \(s\in L(t')\), \(\mathscr{A}(t'(s))\subseteq\mathscr{A}(t(s))\).
Lemma 27. Let \(\mathbf{fPAT}_{\mathbf{S}}\) denote \(\langle \mathbf{fPAT}, \leq^{\mathrm{MUST}}_{\mathbf{fPAT}},\Sigma^1_{\mathbf{fPAT}}\rangle\), \(\mathbf{fPAT}_{\mathbf{S}}\) is a \(\Sigma^1\)-po algebra.
Theorem 36 (Full Abstraction for \(\mathbf{fPAT}_{\mathbf{S}}\)). If \(p,q\in\mathbf{M}_1\), then \(p\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MUST}}q\) if and only if \(\mathbf{fPAT}\llbracket p\rrbracket\leq^{\mathrm{MUST}}_{\mathbf{fPAT}}\mathbf{fPAT}\llbracket q\rrbracket\).
By adding the following axiom \[A19\quad x\oplus y\leq x\] into the proof system \(\mathbf{DED}(E^1)\) in 1 to get the proof system \(\mathbf{DED}(E^1_{\mathbf{S}})\).
Theorem 37 (Initiality of \(\mathbf{fPAT}_{\mathbf{S}}\)). \(\mathbf{fPAT}_{\mathbf{S}}\) is initial in \(\mathscr{C}(E^1_{\mathbf{S}})\).
Definition 77. Let \(\mathbf{fPAT}_{\mathbf{W}}\) denote \(\langle D, \leq^{\mathrm{MAY}}_{\mathbf{fPAT}_{\mathbf{W}}},\Sigma^1_{\mathbf{fPAT}_{\mathbf{W}}}\rangle\), where
\(D\) is the set of deterministic trees in \(\mathbf{fPAT}\), i.e., those trees all of whose nodes \(n\) are labelled by the acceptance set \(\{\{S(n)\}\}\).
\(t\leq^{\mathrm{MAY}}_{\mathbf{fPAT}_{\mathbf{W}}}t'\), if \(L(t)\subseteq L(t')\).
The various operators are defined by
\(0_{\mathbf{fPAT}_{\mathbf{W}}}\) coincides with \(0_{\mathbf{fPAT}}\), \(1_{\mathbf{fPAT}_{\mathbf{W}}}\) coincides with \(1_{\mathbf{fPAT}}\), \(U_{\mathbf{fPAT}_{\mathbf{W}}}\) coincides with \(U_{\mathbf{fPAT}}\), \(\cdot_{\mathbf{fPAT}_{\mathbf{W}}}\) coincides with \(\cdot_{\mathbf{fPAT}}\), \(\parallel_{\mathbf{fPAT}_{\mathbf{W}}}\) coincides with \(\parallel_{\mathbf{fPAT}}\), \(\gamma(a,b)_{\mathbf{fPAT}_{\mathbf{W}}}\) coincides with \(\gamma(a,b)_{\mathbf{fPAT}}\), \(\mid_{\mathbf{fPAT}_{\mathbf{W}}}\) coincides with \(\mid_{\mathbf{fPAT}}\), \(\between_{\mathbf{fPAT}_{\mathbf{W}}}\) coincides with \(\between_{\mathbf{fPAT}}\), \(\partial_H(p)_{\mathbf{fPAT}_{\mathbf{W}}}\) coincides with \(\partial_H(p)_{\mathbf{fPAT}}\), \(\sharp_{\mathbf{fPAT}_{\mathbf{W}}}\) coincides with \(\sharp_{\mathbf{fPAT}}\), \(\Theta(p)_{\mathbf{fPAT}_{\mathbf{W}}}\) coincides with \(\Theta(p)_{\mathbf{fPAT}}\), \(\triangleleft_{\mathbf{fPAT}_{\mathbf{W}}}\) coincides with \(\triangleleft_{\mathbf{fPAT}}\), \(\mathbin{\mathpalette\make@circled{\#}}_{\mathbf{fPAT}_{\mathbf{W}}}\) coincides with \(\mathbin{\mathpalette\make@circled{\#}}_{\mathbf{fPAT}}\).
\(t+_{\mathbf{fPAT}_{\mathbf{W}}}t'\) is the tree \(t''\) determined by:
\(L(t'')=L(t)\cup L(t')\).
\(\mathscr{A}(t''(s))=c(\mathscr{A}(t(s))\mathop{\mathrm{\mathcal{U}}}\mathscr{A}(t'(s)))\), and if \(s\notin L(t)\) then \(\mathscr{A}(t(s))=\emptyset\).
\(\oplus_{\mathbf{fPAT}_{\mathbf{W}}}\) coincides with \(+_{\mathbf{fPAT}_{\mathbf{W}}}\).
Lemma 28. \(\mathbf{fPAT}_{\mathbf{W}}\) is a \(\Sigma^1\)-po algebra.
Theorem 38 (Full Abstraction for \(\mathbf{fPAT}_{\mathbf{W}}\)). If \(p,q\in\mathbf{M}_1\), then \(p\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MAY}}q\) if and only if \(\mathbf{fPAT}_{\mathbf{W}}\llbracket p\rrbracket\leq^{\mathrm{MAY}}_{\mathbf{fPAT}_{\mathbf{W}}}\mathbf{fPAT}_{\mathbf{W}}\llbracket q\rrbracket\).
By adding the following axiom \[A20\quad x\leq x\oplus y\] into the proof system \(\mathbf{DED}(E^1)\) in 1 to get the proof system \(\mathbf{DED}(E^1_{\mathbf{W}})\).
Theorem 39 (Initiality of \(\mathbf{fPAT}_{\mathbf{W}}\)). \(\mathbf{fPAT}_{\mathbf{W}}\) is initial in \(\mathscr{C}(E^1_{\mathbf{W}})\).
In this chapter, we introduce the basic processes with \(\Omega\). Firstly, we introduce the \(\Omega\) signature in 6.1, then the operational semantics, denotational semantics and axiomatic semantics of the \(\Omega\) processes are introduced in 6.2, 6.3 and 6.4, respectively. Finally, we get the results on trinity of operational semantics, denotational semantics and axiomatic semantics in 6.5.
Definition 78 (\(\Omega\) signature). The \(\Omega\) signature \(\Sigma^2\) consists of:
\(\Sigma^2\supset \Sigma^1\).
A distinguished constant \(\Omega\).
Definition 79 (Syntax of \(\Omega\) process language). The syntax of the \(\Omega\) process language is given by the following BNF grammar:
\(p::=\Omega~|~0~|~1~|~U~|~\gamma(a,b)~|~p\cdot p~|~a\sharp b~|~a\mathbin{\mathpalette\make@circled{\#}}b~|~p+p~|~p\oplus p~|~p\parallel p~|~p\mid p~|~p\between p~|~\Theta(p)~|~p\triangleleft p~|~\partial_H(p)~\)
where \(a,b\in\mathsf{Act}\), \(U\in\mathsf{Pom}\), \(p\in \mathsf{Proc}\).
In this section, we give the operational semantics of the language \(\mathbf{M}_2\). The predicate \(\surd\) represents successful termination, \(\xrightarrow{a}\surd\) represents successful termination after execution of the action \(a\in\mathsf{Act}\), \(\xrightarrow{U}\surd\) represents successful termination after execution of the action \(U\in\mathsf{Pom}\) and \(\xrightarrow{ }\surd\) represents successful termination without execution of the any action. The following are the PTSS of the language \(\mathbf{M}_2\), where \(p,q\in\mathsf{Proc}\).
The PTSS of action \(1\), \(a\in\mathsf{Act}\) and \(U\in\mathsf{Pom}\) is as follows. Note that, there is no any transition rules for \(0\) and \(\Omega\).
\[\frac{}{1\xrightarrow{ }\surd}\quad\frac{}{a\xrightarrow{a}\surd}\quad\frac{}{U\xrightarrow{U}\surd}\]
The PTSS of sequential composition is as follows.
\[\frac{p\xrightarrow{U}\surd}{p\cdot q\xrightarrow{U} q}\quad\frac{p\xrightarrow{U}p'}{p\cdot q\xrightarrow{U} p'\cdot q}\]
The PTSS of alternative composition is as follows.
\[\frac{p\xrightarrow{U}\surd}{p+ q\xrightarrow{U}\surd} \quad\frac{p\xrightarrow{U}p'}{p+ q\xrightarrow{U}p'} \quad\frac{q\xrightarrow{U}\surd}{p+ q\xrightarrow{U}\surd} \quad\frac{q\xrightarrow{U}q'}{p+ q\xrightarrow{U}q'}\]
The PTSS of concurrent composition is as follows.
\[\frac{p\xrightarrow{a}\surd\quad q\xrightarrow{b}\surd}{p\between q\xrightarrow{\langle\mskip-4mu|a,b|\mskip-4mu\rangle}\surd} \quad\frac{p\xrightarrow{a}p'\quad q\xrightarrow{b}\surd}{p\between q\xrightarrow{\langle\mskip-4mu|a,b|\mskip-4mu\rangle}p'}\] \[\frac{p\xrightarrow{a}\surd\quad q\xrightarrow{b}q'}{p\between q\xrightarrow{\langle\mskip-4mu|a,b|\mskip-4mu\rangle}q'} \quad\frac{p\xrightarrow{a}p'\quad q\xrightarrow{b}q'}{p\between q\xrightarrow{\langle\mskip-4mu|a,b|\mskip-4mu\rangle}p'\between q'}\] \[\frac{p\xrightarrow{a}\surd\quad q\xrightarrow{b}\surd}{p\between q\xrightarrow{\gamma(a,b)}\surd} \quad\frac{p\xrightarrow{a}p'\quad q\xrightarrow{b}\surd}{p\between q\xrightarrow{\gamma(a,b)}p'}\] \[\frac{p\xrightarrow{a}\surd\quad q\xrightarrow{b}q'}{p\between q\xrightarrow{\gamma(a,b)}q'} \quad\frac{p\xrightarrow{a}p'\quad q\xrightarrow{b}q'}{p\between q\xrightarrow{\gamma(a,b)}p'\between q'}\]
The PTSS of parallel composition is as follows.
\[\frac{p\xrightarrow{a}\surd\quad q\xrightarrow{b}\surd}{p\parallel q\xrightarrow{\langle\mskip-4mu|a,b|\mskip-4mu\rangle}\surd} \quad\frac{p\xrightarrow{a}p'\quad q\xrightarrow{b}\surd}{p\parallel q\xrightarrow{\langle\mskip-4mu|a,b|\mskip-4mu\rangle}p'}\] \[\frac{p\xrightarrow{a}\surd\quad q\xrightarrow{b}q'}{p\parallel q\xrightarrow{\langle\mskip-4mu|a,b|\mskip-4mu\rangle}q'} \quad\frac{p\xrightarrow{a}p'\quad q\xrightarrow{b}q'}{p\parallel q\xrightarrow{\langle\mskip-4mu|a,b|\mskip-4mu\rangle}p'\between q'}\]
The PTSS of communication merge is as follows.
\[\frac{p\xrightarrow{a}\surd\quad q\xrightarrow{b}\surd}{p\mid q\xrightarrow{\gamma(a,b)}\surd} \quad\frac{p\xrightarrow{a}p'\quad q\xrightarrow{b}\surd}{p\mid q\xrightarrow{\gamma(a,b)}p'}\] \[\frac{p\xrightarrow{a}\surd\quad q\xrightarrow{b}q'}{p\mid q\xrightarrow{\gamma(a,b)}q'} \quad\frac{p\xrightarrow{a}p'\quad q\xrightarrow{b}q'}{p\mid q\xrightarrow{\gamma(a,b)}p'\between q'}\]
The PTSS of encapsulation operator is as follows.
\[\frac{p\xrightarrow{a}\surd\quad a\notin H}{\partial_H(p)\xrightarrow{a}\surd}\quad\frac{p\xrightarrow{a}p'\quad a\notin H}{\partial_H(p)\xrightarrow{a}\partial_H(p')}\]
The PTSS of confliction, confliction eliminator and the auxiliary unless operator is as follows, where \(\leq\) is the execution order.
\[\frac{p\xrightarrow{a}\surd\quad a\sharp b}{\Theta(p)\xrightarrow{a}\surd} \quad\frac{p\xrightarrow{b}\surd\quad a\sharp b}{\Theta(p)\xrightarrow{b}\surd}\] \[\frac{p\xrightarrow{a}p'\quad a\sharp b}{\Theta(p)\xrightarrow{a}\Theta(p')} \quad\frac{p\xrightarrow{b}p'\quad a\sharp b}{\Theta(p)\xrightarrow{b}\Theta(p')}\] \[\frac{p\xrightarrow{c}\surd \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\sharp b\quad c\leq a}{p\triangleleft q\xrightarrow{c}\surd} \quad\frac{p\xrightarrow{c}p' \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\sharp b\quad c\leq a}{p\triangleleft q\xrightarrow{c}p'}\] \[\frac{p\xrightarrow{a}\surd \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\sharp b}{p\triangleleft q\xrightarrow{ }\surd} \quad\frac{p\xrightarrow{a}p' \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\sharp b}{p\triangleleft q\xrightarrow{ }p'}\] \[\frac{p\xrightarrow{a}\surd \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{c}\quad a\sharp b\quad b\leq c}{p\triangleleft q\xrightarrow{ }\surd} \quad\frac{p\xrightarrow{a}p' \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{c}\quad a\sharp b\quad b\leq c}{p\triangleleft q\xrightarrow{ }p'}\] \[\frac{p\xrightarrow{c}\surd \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\sharp b\quad a\leq c}{p\triangleleft q\xrightarrow{ }\surd} \quad\frac{p\xrightarrow{c}p' \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\sharp b\quad a\leq c}{p\triangleleft q\xrightarrow{ }p'}\]
The PTSS of internal confliction, confliction eliminator and the auxiliary unless operator is as follows.
\[\frac{p\xrightarrow{a}\surd\quad a\mathbin{\mathpalette\make@circled{\#}}b}{\Theta(p)\xrightarrow{a}\surd} \quad\frac{p\xrightarrow{b}\surd\quad a\mathbin{\mathpalette\make@circled{\#}}b}{\Theta(p)\xrightarrow{b}\surd}\] \[\frac{p\xrightarrow{a}p'\quad a\mathbin{\mathpalette\make@circled{\#}}b}{\Theta(p)\xrightarrow{a}\Theta(p')} \quad\frac{p\xrightarrow{b}p'\quad a\mathbin{\mathpalette\make@circled{\#}}b}{\Theta(p)\xrightarrow{b}\Theta(p')}\] \[\frac{p\xrightarrow{c}\surd \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\mathbin{\mathpalette\make@circled{\#}}b\quad c\leq a}{p\triangleleft q\xrightarrow{c}\surd} \quad\frac{p\xrightarrow{c}p' \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\mathbin{\mathpalette\make@circled{\#}}b\quad c\leq a}{p\triangleleft q\xrightarrow{c}p'}\] \[\frac{p\xrightarrow{a}\surd \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\mathbin{\mathpalette\make@circled{\#}}b}{p\triangleleft q\xrightarrow{ }\surd} \quad\frac{p\xrightarrow{a}p' \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\mathbin{\mathpalette\make@circled{\#}}b}{p\triangleleft q\xrightarrow{ }p'}\] \[\frac{p\xrightarrow{a}\surd \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{c}\quad a\mathbin{\mathpalette\make@circled{\#}}b\quad b\leq c}{p\triangleleft q\xrightarrow{ }\surd} \quad\frac{p\xrightarrow{a}p' \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{c}\quad a\mathbin{\mathpalette\make@circled{\#}}b\quad b\leq c}{p\triangleleft q\xrightarrow{ }p'}\] \[\frac{p\xrightarrow{c}\surd \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\mathbin{\mathpalette\make@circled{\#}}b\quad a\leq c}{p\triangleleft q\xrightarrow{ }\surd} \quad\frac{p\xrightarrow{c}p' \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\mathbin{\mathpalette\make@circled{\#}}b\quad a\leq c}{p\triangleleft q\xrightarrow{ }p'}\]
The PTSS of internal alternative composition is as follows.
\[\frac{}{1\rightarrowtail\surd}\] \[\frac{}{p\oplus q\rightarrowtail p} \quad\frac{}{p\oplus q\rightarrowtail q}\] \[\frac{p\rightarrowtail p'}{p\cdot q\rightarrowtail p'\cdot q}\] \[\frac{p\rightarrowtail p'}{p+q\rightarrowtail p'+q} \quad\frac{q\rightarrowtail q'}{p+q\rightarrowtail p+q'}\] \[\frac{p\rightarrowtail p'}{p\between q\rightarrowtail p'\between q} \quad\frac{q\rightarrowtail q'}{p\between q\rightarrowtail p\between q'} \quad\frac{p\rightarrowtail p'\quad q\rightarrowtail q'}{p\between q\rightarrowtail p'\between q'}\] \[\frac{p\rightarrowtail p'}{p\parallel q\rightarrowtail p'\parallel q} \quad\frac{q\rightarrowtail q'}{p\parallel q\rightarrowtail p\parallel q'} \quad\frac{p\rightarrowtail p'\quad q\rightarrowtail q'}{p\parallel q\rightarrowtail p'\parallel q'}\] \[\frac{p\rightarrowtail p'}{p\mid q\rightarrowtail p'\mid q} \quad\frac{q\rightarrowtail q'}{p\mid q\rightarrowtail p\mid q'} \quad\frac{p\rightarrowtail p'\quad q\rightarrowtail q'}{p\mid q\rightarrowtail p'\mid q'}\] \[\frac{p\rightarrowtail p'}{\partial_H(p)\rightarrowtail \partial_H(p')}\] \[\frac{p\rightarrowtail p'}{\Theta(p)\rightarrowtail \Theta(p')}\] \[\frac{p\rightarrowtail p'}{p\triangleleft q\rightarrowtail p'\triangleleft q} \quad\frac{q\rightarrowtail q'}{p\triangleleft q\rightarrowtail p\triangleleft q'}\]
Definition 80 (\(\mathbf{PAT}_{\mathbf{S}}\)). \(\mathbf{PAT}_{\mathbf{S}}\), the set of strong acceptance trees over \(\mathsf{Pom}\), is the set of rooted trees whose branches are labelled by elements of \(\mathsf{Pom}\), whose nodes are either open (\(\circ\)) or closed (\(\bullet\)) labelled by subsets of \(\mathscr{A}\subseteq\mathsf{Pom}^*\), and satisfies the following requirements:
R1 (Determinism): For every pomset \(U\), every node in the tree has most one successor alternative branch labelled by \(U\).
R2 (Finite Branching): For every closed node \(n\), \(S(n)\) is finite.
R3: For every closed node \(n\), \(\mathscr{A}(n)\) is an \(S(n)\)-set.
R4: If \(n\) is open then it is a leaf.
For a tree \(t\in\mathbf{PAT}_{\mathbf{S}}\), let \(CL(t)\subseteq L(t)\) determine closed nodes, which is prefix-closed and may be empty. For any tree \(t\in\mathbf{PAT}_{\mathbf{S}}\) and \(s\in\mathsf{Pom}^*\), we write \(t\downarrow s\) if \(s'\in L(t)\) then \(s'\in CL(t)\) for every prefix \(s'\) of \(s\).
Definition 81 (Partial order over \(\mathbf{PAT}_{\mathbf{S}}\)). A partial order \(\leq_{\mathbf{PAT}_{\mathbf{S}}}\) is defined over \(\mathbf{PAT}_{\mathbf{S}}\) as follows, for two trees \(t,t'\in\mathbf{PAT}_{\mathbf{S}}\), \(t\leq_{\mathbf{PAT}_{\mathbf{S}}}t'\), if for every \(s\in\mathsf{Pom}^*\), \(t\downarrow s\) implies:
\(t'\downarrow s\).
For every \(s\in CL(t')\), \(\mathscr{A}(t'(s))\subseteq\mathscr{A}(t(s))\).
Lemma 29. \(\langle \mathbf{PAT}_{\mathbf{S}},\leq_{\mathbf{PAT}_{\mathbf{S}}}\rangle\) is an algebraic cpo.
In the following, we define functions over \(\mathbf{PAT}_{\mathbf{S}}\) for every function symbol in \(\Sigma^2\): \(0_{\mathbf{PAT}_{\mathbf{S}}}\), \(1_{\mathbf{PAT}_{\mathbf{S}}}\), \(U_{\mathbf{PAT}_{\mathbf{S}}}\), \(\cdot_{\mathbf{PAT}_{\mathbf{S}}}\), \(+_{\mathbf{PAT}_{\mathbf{S}}}\), \(\oplus_{\mathbf{PAT}_{\mathbf{S}}}\), \(\parallel_{\mathbf{PAT}_{\mathbf{S}}}\), \(\gamma(a,b)_{\mathbf{PAT}_{\mathbf{S}}}\), \(\mid_{\mathbf{PAT}_{\mathbf{S}}}\), \(\between_{\mathbf{PAT}_{\mathbf{S}}}\), \(\partial_H(p)_{\mathbf{PAT}_{\mathbf{S}}}\), \(\sharp_{\mathbf{PAT}_{\mathbf{S}}}\), \(\Theta(p)_{\mathbf{PAT}_{\mathbf{S}}}\), \(\triangleleft_{\mathbf{PAT}_{\mathbf{S}}}\), \(\mathbin{\mathpalette\make@circled{\#}}_{\mathbf{PAT}_{\mathbf{S}}}\). They are continuous operations on the algebra cpo \(\mathbf{PAT}_{\mathbf{S}}\) and mild extensions of those in \(\mathbf{fPAT}\).
(1) \(\Omega_{\mathbf{PAT}_{\mathbf{S}}}\).
Let \(\Omega_{\mathbf{PAT}_{\mathbf{S}}}\) denote the trivial tree \(\circ\), which consists of only one node, with no successor branches, and rendered as \(\circ\).
(2) \(0_{\mathbf{PAT}_{\mathbf{S}}}\).
Let \(0_{\mathbf{PAT}_{\mathbf{S}}}\) denote the trivial tree \(\bullet\{\emptyset\}\), which consists of only one node, labelled by the set of the empty set \(\emptyset\) with no successor branches, and rendered as \(\bullet\).
(3) \(1_{\mathbf{PAT}_{\mathbf{S}}}\).
Let \(1_{\mathbf{PAT}_{\mathbf{S}}}\) denote the trivial tree \(\bullet\{\{\}\}\), which consists of one node, labelled by the set of the empty set \(\{\}\), and rendered as \(\mathbin{\mathpalette\make@circled{\bullet}}\). Note that, \(1_{\mathbf{PAT}_{\mathbf{S}}}\) can have successor branches.
(4) \(U_{\mathbf{PAT}_{\mathbf{S}}}\).
Formally, the tree \(U_{\mathbf{PAT}_{\mathbf{S}}}\) is the tree \(t\) determined by:
\(L(t)=\{1\}\cup\{U\}\).
\(\mathscr{A}(t(1))=\{\{U\}\}\), \(\mathscr{A}(t(U))=\{\{\}\}\).
(5) \(\cdot_{\mathbf{PAT}_{\mathbf{S}}}\).
Formally, the tree \(t\cdot_{\mathbf{PAT}_{\mathbf{S}}}t'\) is the tree \(t''\) determined by:
\(L(t'')=\{1\}\cup\{ss'|s\in L(t),s'\in L(t')\}\).
\(\mathscr{A}(t''(1))=\mathscr{A}(t(1))\), \(\mathscr{A}(t''(\{\}_ss'))=\mathscr{A}(t(s'))\) where \(\{\}_s\) is the closed leaf of \(s\).
(6) \(+_{\mathbf{PAT}_{\mathbf{S}}}\).
Formally, the tree \(t+_{\mathbf{PAT}_{\mathbf{S}}}t'\) is the tree \(t''\) determined by:
\(CL(t'')=\{s|s\in L(t)\cup L(t'),for every prefix s' of s if s'\in L(t) then s'\in CL(t),\linebreak and for every prefix s' of s if s'\in L(t') then s'\in CL(t')\}\).
\(L(t'')=\{s|s\in L(t)\cup L(t'), s=s'U implies s'\in CL(t'')\}\).
\(\mathscr{A}(t''(1))=c(\mathscr{A}(t(1))\mathop{\mathrm{\mathcal{U}}}\mathscr{A}(t'(1)))\), \(\mathscr{A}(t''(s))=c(\mathscr{A}(t(s))\cup\mathscr{A}(t'(s)))\) for every \(s\in CL(t'')\), and if \(s\notin CL(t)\) then \(\mathscr{A}(t(s))=\emptyset\).
(7) \(\oplus_{\mathbf{PAT}_{\mathbf{S}}}\).
Formally, the tree \(t\oplus_{\mathbf{PAT}_{\mathbf{S}}}t'\) is the tree \(t''\) determined by:
\(CL(t'')=\{s|s\in L(t)\cup L(t'),for every prefix s' of s if s'\in L(t) then s'\in CL(t),\linebreak and for every prefix s' of s if s'\in L(t') then s'\in CL(t')\}\).
\(L(t'')=\{s|s\in L(t)\cup L(t'), s=s'U implies s'\in CL(t'')\}\).
\(\mathscr{A}(t''(s))=c(\mathscr{A}(t(s))\cup\mathscr{A}(t'(s)))\) for every \(s\in CL(t'')\), and if \(s\notin CL(t)\) then \(\mathscr{A}(t(s))=\emptyset\).
(8) \(\parallel_{\mathbf{PAT}_{\mathbf{S}}}\), \(\gamma(a,b)_{\mathbf{PAT}_{\mathbf{S}}}\), \(\mid_{\mathbf{PAT}_{\mathbf{S}}}\), \(\between_{\mathbf{PAT}_{\mathbf{S}}}\) and \(\partial_H(p)_{\mathbf{PAT}_{\mathbf{S}}}\).
Then, formally, the tree \(t\parallel_{\mathbf{PAT}_{\mathbf{S}}}t'\) is the tree \(t''\) determined by:
\(CL(t'')=\{s|s\in L(t)\parallel L(t'),for every prefix s' of s if s'\in L(t) then s'\in CL(t),\linebreak and for every prefix s' of s if s'\in L(t') then s'\in CL(t')\}\).
\(L(t'')=\{s|s\in L(t)\parallel L(t'), s=s'U implies s'\in CL(t'')\}\).
\(\mathscr{A}(t''(1))=c(\mathscr{A}(t(1))\mathop{\mathrm{\mathcal{U}}}_{\parallel}\mathscr{A}(t'(1)))\), \(\mathscr{A}(t''(s))=c(\mathscr{A}(t(s))\parallel\mathscr{A}(t'(s)))\) for every \(s\in CL(t'')\), and if \(s\notin CL(t)\) then \(\mathscr{A}(t(s))=\emptyset\).
The tree \(t\mid_{\mathbf{PAT}_{\mathbf{S}}}t'\) is the tree \(t''\) determined by:
\(CL(t'')=\{s|s\in L(t)\mid L(t'),for every prefix s' of s if s'\in L(t) then s'\in CL(t),\linebreak and for every prefix s' of s if s'\in L(t') then s'\in CL(t')\}\).
\(L(t'')=\{s|s\in L(t)\mid L(t'), s=s'U implies s'\in CL(t'')\}\).
\(\mathscr{A}(t''(1))=c(\mathscr{A}(t(1))\mathop{\mathrm{\mathcal{U}}}_{\mid}\mathscr{A}(t'(1)))\), \(\mathscr{A}(t''(s))=c(\mathscr{A}(t(s))\mid\mathscr{A}(t'(s)))\) for every \(s\in CL(t'')\), and if \(s\notin CL(t)\) then \(\mathscr{A}(t(s))=\emptyset\).
Formally the tree \(t\between_{\mathbf{PAT}_{\mathbf{S}}}t'\) is the tree \(t''\) determined by:
\(CL(t'')=(CL(t)\parallel CL(t'))\cup (CL(t)\mid CL(t'))\).
\(L(t'')=(L(t)\parallel L(t'))\cup (L(t)\mid L(t'))\).
\(\mathscr{A}(t''(1))=c(\mathscr{A}(t(1))\mathop{\mathrm{\mathcal{U}}}_{\parallel}\mathscr{A}(t'(1)))\cup c(\mathscr{A}(t(1))\mathop{\mathrm{\mathcal{U}}}_{\mid}\mathscr{A}(t'(1)))\), \(\mathscr{A}(t''(s))=c(\mathscr{A}(t(s))\parallel\mathscr{A}(t'(s)))\cup c(\mathscr{A}(t(s))\mid\mathscr{A}(t'(s)))\) for every \(s\in CL(t'')\), and if \(s\notin CL(t)\) then \(\mathscr{A}(t(s))=\emptyset\).
For \(a\in\mathsf{Act}(t)\) and \(b\in\mathsf{Act}(t')\), \(a,b\) in the tree \(t\mid_{\mathbf{PAT}_{\mathbf{S}}}t'\) are merged into \(\gamma(a,b)\) if \(a\leq^c b\); into \(0\), otherwise.
For \(H\subseteq\mathsf{Act}(t\parallel_{\mathbf{PAT}_{\mathbf{S}}}t')\), \(\partial_H(t\parallel_{\mathbf{PAT}_{\mathbf{S}}}t')\) renames every \(a\in H\) into \(0\); and remains themselves unchanged for all \(a\notin H\) and \(a\in\mathsf{Act}(t\parallel_{\mathbf{PAT}_{\mathbf{S}}}t')\).
(9) \(\sharp_{\mathbf{PAT}_{\mathbf{S}}}\), \(\Theta(p)_{\mathbf{PAT}_{\mathbf{S}}}\), \(\triangleleft_{\mathbf{PAT}_{\mathbf{S}}}\) and \(\mathbin{\mathpalette\make@circled{\#}}_{\mathbf{PAT}_{\mathbf{S}}}\).
For \(a\in\mathsf{Act}(t)\) and \(b\in\mathsf{Act}(t')\), there exists a confliction relation \(a\sharp b\) in the tree \(t\parallel_{\mathbf{PAT}_{\mathbf{S}}}t'\) (resp. \(t\mid_{\mathbf{PAT}_{\mathbf{S}}}t'\)), \(\Theta(t\parallel_{\mathbf{PAT}_{\mathbf{S}}}t')_{\mathbf{PAT}_{\mathbf{S}}}\) (resp. \(\Theta(t\mid_{\mathbf{PAT}_{\mathbf{S}}}t')_{\mathbf{PAT}_{\mathbf{S}}}\)) and \(\triangleleft_{\mathbf{PAT}_{\mathbf{S}}}\) rename \(\{s'|t(1)\xrightarrow{s}\xrightarrow{a}t(s')\}\) to \(1\)’s and remain the open nodes unchanged, and remain \(t'\) unchanged, or rename \(\{s'|t'(1)\xrightarrow{s}\xrightarrow{b}t'(s')\}\) to \(1\)’s and remain the open nodes unchanged, and remain \(t\) unchanged.
For \(a\in\mathsf{Act}(t)\) and \(b\in\mathsf{Act}(t')\), there exists an internal confliction relation \(a\mathbin{\mathpalette\make@circled{\#}}b\) in the tree \(t\parallel_{\mathbf{PAT}_{\mathbf{S}}}t'\) (resp. \(t\mid_{\mathbf{PAT}_{\mathbf{S}}}t'\)), \(\Theta(t\parallel_{\mathbf{PAT}_{\mathbf{S}}}t')_{\mathbf{PAT}_{\mathbf{S}}}\) (resp. \(\Theta(t\mid_{\mathbf{PAT}_{\mathbf{S}}}t')_{\mathbf{PAT}_{\mathbf{S}}}\)) and \(\triangleleft_{\mathbf{PAT}_{\mathbf{S}}}\) rename \(\{s'|t(1)\xrightarrow{s}\xrightarrow{a}t(s')\}\) to \(1\)’s and remain the open nodes unchanged, and remain \(t'\) unchanged, or rename \(\{s'|t'(1)\xrightarrow{s}\xrightarrow{b}t'(s')\}\) to \(1\)’s and remain the open nodes unchanged, and remain \(t\) unchanged.
Proposition 40. \(\langle \mathbf{PAT}_{\mathbf{S}},\leq_{\mathbf{PAT}_{\mathbf{S}}},\Sigma^2_{\mathbf{PAT}_{\mathbf{S}}}\rangle\) is a \(\Sigma^2\)-domain.
Theorem 41 (Full Abstraction for \(\mathbf{PAT}_\mathbf{S}\)). If \(p,q\in\mathbf{M}_2\), then \(p\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MUST}}q\) if and only if \(\mathbf{PAT}_{\mathbf{S}}\llbracket p\rrbracket\leq_{\mathbf{PAT}_{\mathbf{S}}}\mathbf{PAT}_{\mathbf{S}}\llbracket q\rrbracket\).
The proof system \(\mathbf{\Omega DED}(E^2_{\mathbf{S}})\) contains the inequations denoted \(E^2_{\mathbf{S}}\), which include \(E^1_{\mathbf{S}}\) in 5.5 and the inequations in 2. Note that, since the inequation \(\Omega\leq x\) is inherited from any proof system containing \(\Omega\) \(\mathbf{\Omega DED}\), the inequation \(\Omega2\) is redundant.
| No. | Axiom |
|---|---|
| Continuing: Proof system \(\mathbf{\Omega DED}(E^2_{\mathbf{S}})\) of \(\mathbf{M}_2\) | |
| No. | Axiom |
| to be continued… | |
| \(\Omega1\) | \(x+ \Omega \leq \Omega\) |
| \(\Omega2\) | \(x\oplus \Omega \leq \Omega\) |
| \(\Omega3\) | \(\Omega\cdot x \leq \Omega\) |
| \(\Omega4\) | \(x\between \Omega \leq \Omega\) |
| \(\Omega5\) | \(x\parallel \Omega \leq \Omega\) |
| \(\Omega6\) | \(x\mid \Omega \leq \Omega\) |
| \(\Omega7\) | \(\partial_H(\Omega) \leq \Omega\) |
| \(\Omega8\) | \(\Theta(\Omega) \leq \Omega\) |
| \(\Omega9\) | \(\Omega\triangleleft x \leq \Omega\) |
| \(\Omega10\) | \(x\triangleleft \Omega \leq \Omega\) |
Lemma 30. \(\mathbf{PAT}_{\mathbf{S}}\) is finitary.
Proposition 42. \(\mathbf{PAT}_{\mathbf{S}}\) is in \(\mathscr{CC}(E^2_{\mathbf{S}})\).
Lemma 31. The mapping \(i_{\mathbf{PAT}_{\mathbf{S}}}\) from \(\mathbf{M}_2\) to \(\mathbf{PAT}_{\mathbf{S}}\) is surjective.
Lemma 32. \(\mathbf{\Omega DED}(E^2_{\mathbf{S}})\) is sound with respect to \(\leq_{\mathbf{PAT}_{\mathbf{S}}}\), restricted to \(T_{\Sigma^2}\).
Definition 82 (\(\Omega\)-normal form). The \(\Omega\)-normal form is defined inductively as follows:
\(0\) and \(\Omega\) are \(\Omega\)-normal forms.
If \(\mathscr{A}\) is saturated set and for every \(U\) in \(A(\mathscr{A})\) there is an \(\Omega\)-normal form \(n(U)\), then \(\mathop{ \mathchoice { \begin{tikzpicture}[baseline=(char.base), inner sep=0, outer sep=0] \draw (-0.3ex,0) circle (0.1); \node (char) at (0,0) {\displaystyle\sum}; \end{tikzpicture}} { \begin{tikzpicture}[baseline=(char.base), inner sep=0, outer sep=0] \draw (-0.3ex,0) circle (0.075); \node (char) at (0,0) {\textstyle\sum}; \end{tikzpicture}} { \begin{tikzpicture}[baseline=(char.base), inner sep=0, outer sep=0] \draw (-0.3ex,0) circle (0.075); \node (char) at (0,0) {\scriptstyle\sum}; \end{tikzpicture}} { \begin{tikzpicture}[baseline=(char.base), inner sep=0, outer sep=0] \draw (-0.3ex,0) circle (0.075); \node (char) at (0,0) {\scriptscriptstyle\sum}; \end{tikzpicture}} }\displaylimits \{n(A)|A\in\mathscr{A}\}\) is an \(\Omega\)-normal form, where \(n(A)\) represents \(\sum\{Un(U)|U\in A\}\).
Theorem 43 (Normal form theorem). For every term \(p\) in \(\mathbf{M}_2\), there exists an \(\Omega\)-normal form \(nf(p)\) such that \(p=_{E^2_{\mathbf{S}}}nf(p)\).
Theorem 44 (Completeness). For \(p,q\in\mathbf{M}_2\), \(\mathbf{PAT}_{\mathbf{S}}\llbracket p\rrbracket\leq_{\mathbf{PAT}_{\mathbf{S}}}\mathbf{PAT}_{\mathbf{S}}\llbracket q\rrbracket\) implies \(p\leq_{E^2_{\mathbf{S}}}q\).
Theorem 45 (Initiality of \(\mathbf{PAT}_{\mathbf{S}}\)). \(\mathbf{PAT}_{\mathbf{S}}\) is initial in \(\mathscr{CC}(E^2_{\mathbf{S}})\).
Definition 83 (\(\mathbf{PAT}\)). \(\mathbf{PAT}\), the set of acceptance trees over \(\mathsf{Pom}\), is the set of rooted trees whose branches are labelled by elements of \(\mathsf{Pom}\), whose nodes are either open (\(\circ\)) or closed (\(\bullet\)) labelled by subsets of \(\mathscr{A}\subseteq\mathsf{Pom}^*\), and satisfies the following requirements:
R1 (Determinism): For every pomset \(U\), every node in the tree has most one successor alternative branch labelled by \(U\).
R2 (Finite Branching): For every closed node \(n\), \(S(n)\) is finite.
R3: For every closed node \(n\), \(\mathscr{A}(n)\) is an \(S(n)\)-set.
R4: If \(n\) is open then every descendant of \(n\) is also open.
Definition 84. A partial order \(\leq_{\mathbf{PAT}}\) is defined over \(\mathbf{PAT}\) as follows, for two trees \(t,t'\in\mathbf{PAT}\), \(t\leq_{\mathbf{PAT}}t'\), if:
\(L(t)\subseteq L(t')\).
For every \(s\in \mathsf{Pom}^*\), \(t\downarrow s\) implies:
\(t'\downarrow s\).
if \(s\in CL(t')\) then \(\mathscr{A}(t'(s))\subseteq\mathscr{A}(t(s))\).
Lemma 33. \(\langle \mathbf{PAT}, \leq_{\mathbf{PAT}}\rangle\) is an algebraic cpo.
The proof system \(\mathbf{\Omega DED}(E^2)\) contains the inequations denoted \(E^2\), which include \(E^1\) in 5.4 and the inequations in 2.
Lemma 34. \(\mathbf{PAT}\) is finitary.
Proposition 46. \(\mathbf{PAT}\) is in \(\mathscr{CC}(E^2)\).
Lemma 35. The mapping \(i_{\mathbf{PAT}}\) from \(\mathbf{M}_2\) to \(\mathbf{PAT}\) is surjective.
Lemma 36. \(\mathbf{\Omega DED}(E^2)\) is sound with respect to \(\leq_{\mathbf{PAT}}\), restricted to \(T_{\Sigma^2}\).
Theorem 47 (Normal form theorem). For every term \(p\) in \(\mathbf{M}_2\), there exists an \(\Omega\)-normal form \(nf(p)\) such that \(p=_{E^2}nf(p)\).
Theorem 48 (Completeness). For \(p,q\in\mathbf{M}_2\), \(\mathbf{PAT}\llbracket p\rrbracket\leq_{\mathbf{PAT}}\mathbf{PAT}\llbracket q\rrbracket\) implies \(p\leq_{E^2}q\).
Theorem 49 (Initiality of \(\mathbf{PAT}\)). \(\mathbf{PAT}\) is initial in \(\mathscr{CC}(E^2)\).
Definition 85 (\(\mathbf{PAT}_{\mathbf{W}}\)). \(\mathbf{PAT}_{\mathbf{W}}\), the set of weak acceptance trees over \(\mathsf{Pom}\), is the set of rooted trees whose branches are labelled by elements of \(\mathsf{Pom}\), whose nodes are either open (\(\circ\)) or closed (\(\bullet\)) labelled by subsets of \(\mathscr{A}\subseteq\mathsf{Pom}^*\), and satisfies the following requirements:
R1 (Determinism): For every pomset \(U\), every node in the tree has most one successor alternative branch labelled by \(U\).
R2 (Finite Branching): For every closed node \(n\), \(S(n)\) is finite.
R3: For every closed node \(n\), \(\mathscr{A}(n)\) is an \(S(n)\)-set.
R4: Every node is open.
Definition 86. A partial order \(\leq_{\mathbf{PAT}_{\mathbf{W}}}\) is defined over \(\mathbf{PAT}_{\mathbf{W}}\) as follows, for two trees \(t,t'\in\mathbf{PAT}\), \(t\leq_{\mathbf{PAT}_{\mathbf{W}}}t'\), if:
\(L(t)\subseteq L(t')\).
Lemma 37. \(\langle \mathbf{PAT}_{\mathbf{W}}, \leq_{\mathbf{PAT}_{\mathbf{W}}}\rangle\) is an algebraic cpo.
The proof system \(\mathbf{\Omega DED}(E^2_{\mathbf{W}})\) contains the inequations denoted \(E^2_{\mathbf{W}}\), which include \(E^1_{\mathbf{W}}\) in 5.5 and the inequations in 2.
Lemma 38. \(\mathbf{PAT}_{\mathbf{W}}\) is finitary.
Proposition 50. \(\mathbf{PAT}_{\mathbf{W}}\) is in \(\mathscr{CC}(E^2_{\mathbf{W}})\).
Lemma 39. The mapping \(i_{\mathbf{PAT}_{\mathbf{W}}}\) from \(\mathbf{M}_2\) to \(\mathbf{PAT}_{\mathbf{W}}\) is surjective.
Lemma 40. \(\mathbf{\Omega DED}(E^2_{\mathbf{W}})\) is sound with respect to \(\leq_{\mathbf{PAT}_{\mathbf{W}}}\), restricted to \(T_{\Sigma^2}\).
Theorem 51 (Normal form theorem). For every term \(p\) in \(\mathbf{M}_2\), there exists an \(\Omega\)-normal form \(nf(p)\) such that \(p=_{E^2_{\mathbf{W}}}nf(p)\).
Theorem 52 (Completeness). For \(p,q\in\mathbf{M}_2\), \(\mathbf{PAT}_{\mathbf{W}}\llbracket p\rrbracket\leq_{\mathbf{PAT}_{\mathbf{W}}}\mathbf{PAT}_{\mathbf{W}}\llbracket q\rrbracket\) implies \(p\leq_{E^2_{\mathbf{W}}}q\).
Theorem 53 (Initiality of \(\mathbf{PAT}_{\mathbf{W}}\)). \(\mathbf{PAT}_{\mathbf{W}}\) is initial in \(\mathscr{CC}(E^2_{\mathbf{W}})\).
In this chapter, we introduce the basic processes with recursion. Firstly, we introduce the recursive signature in 7.1, then the operational semantics and axiomatic semantics of the recursive processes are introduced in 7.2 and 7.3, respectively. Finally, we get the results on trinity of operational semantics, denotational semantics and axiomatic semantics in 7.4.
Definition 87 (Recursive signature). The recursive signature \(\Sigma^3\) consists of:
\(\Sigma^3\supset \Sigma^2\).
A set of recursive variables \(X\) ranged over \(x,y,z,\cdots\).
Definition 88 (Syntax of recursive process language). The syntax of the recursive process language is given by the following BNF grammar:
\(p::=\Omega~|~0~|~1~|~U~|~\gamma(a,b)~|~p\cdot p~|~a\sharp b~|~a\mathbin{\mathpalette\make@circled{\#}}b~|~x~|~p+p~|~p\oplus p~|~p\parallel p~|~p\mid p~|~p\between p~|~\Theta(p)~|~p\triangleleft p~|~\partial_H(p)~|~rec~x.p\)
where \(a,b\in\mathsf{Act}\), \(U\in\mathsf{Pom}\), \(p\in \mathsf{Proc}\), \(x\) is recursive variable and \(rec~x.p\) stands for the process defined by the recursive equation \(x=p\). We assume that \(rec~x.\) has the lowest precedence of all the operators in \(\Sigma^3\).
The set of recursive terms over \(\Sigma^3\) is denoted \(REC_{\Sigma^3}(X)\), sometimes we only write \(REC_{\Sigma}(X)\). We write \(FREC_{\Sigma}(X)\) to denote the subset of terms in \(REC_{\Sigma}(X)\) without occurrences of \(rec~x.\). We use \(FV(t)\) to denote the set of variables which occur free in term \(t\) and \(BV(t)\) to denote the set of variables which occur bound in \(t\). We use \(REC_{\Sigma}\) to denote the set of closed terms and \(FREC_{\Sigma}\) to denote the set of finite closed terms.
A substitution \(\sigma\) will mean a mapping from \(X\) to \(REC_{\Sigma}(X)\), i.e., \(\sigma[x\rightarrow t]\) is a substitution which maps \(x\) to \(t\), and \(I\) denotes the identity substitution which maps every variable \(x\) to itself. We write \(t\sigma\) to denote the result of applying \(\sigma\) to \(t\). If \(x\) is a variable, \(t\) a term, \(\sigma\) a substitution, let \(new~xt\sigma\) denote the least variable \(y\) in the enumeration of \(X\) such that for every \(z\in FV(t)\) which is different from \(x,y\notin FV(\sigma(z))\).
Definition 89 (Substitution). For \(t\in REC_{\Sigma}(X)\) and \(\sigma\) a substitution, \(t\sigma\) is defined inductively:
\(x\sigma=\sigma(x)\).
\(f(t_1,\cdots,t_{ar(f)})\sigma=f(t_1\sigma,\cdots,t_{ar(f)}\sigma)\).
\(rec~x.t\sigma=rec~y.(t\sigma[x\rightarrow y])\), where \(y=new~xt\sigma\).
Lemma 41 (Syntactic substitution). For every \(t\in REC_{\Sigma}(X)\), and \(\sigma\) and \(\sigma'\) substitutions, \((t\sigma)\sigma'=t(\sigma'\circ\sigma)\).
Definition 90 (\(\alpha\)-equality). The \(\alpha\)-equivalence \(=_{\alpha}\) is defined as the least \(\Sigma\)-congruence over \(REC_{\Sigma}(X)\) satisfying:
\(t[y/x]=_{\alpha}t'\) and \(y\notin FV(t)\) implies \(rec~x.t=_{\alpha}rec~y.t'\).
\(t=_{\alpha}t'\) implies \(rec~x.t=_{\alpha}rec~ x.t'\).
The meaning in a \(\Sigma\)-domain of a term is taken to be the limit of the meaning of its finite approximations. These approximations are defined by progressively expanding out recursive subterms as follows.
Definition 91 (Finite principal approximations). For each \(n\geq 0\) and \(t\in REC_{\Sigma}(X)\), the finite principal approximations \(t^n\) of \(t\) is defined inductively by:
\(t^0=\Omega\).
\(x^{n+1}=x\);
\(f(\underline{t})^{n+1}=f(\underline{t}^{n+1})\);
\((rec~x.t)^{n+1}=t^{n+1}[(rec~x.t)^{n}/x]\).
Let \(\mathrm{App}(t)=\{t^{n}|n\geq 0\}\), these approximations are related via the syntactic preorder \(\preceq\).
Lemma 42. \(n\leq m\) implies \(t^{n}\preceq t^{m}\).
Corollary 7. For every \(t\in REC_{\Sigma}(X)\), \(\mathrm{App}(t)\) is directed with respect to \(\preceq\).
Let \(A\) be a \(\Sigma\)-domain and \(\sigma_A\) an \(A\)-assignment, which is a mapping from each variable \(x\in X\) to an element \(\sigma_A(x)\) of \(A\). Let \(ENV_{A}\) denote the collection of \(A\)-assignments. Sometimes, we only write \(\sigma\) for \(\sigma_A\) and \(ENV\) for \(ENV_A\). \(ENV_A\) can be ordered pointwise via: \(\sigma\leq\sigma'\) if for every \(x\in X\), \(\sigma(x)\leq_A\sigma'(x)\). If \(A\) is a domain, \(ENV_A\) under this ordering is a domain. For \(Y\subseteq X\), we write \(\sigma_A=_{Y}\sigma'_{A}\) if \(\sigma_A(y)=_{A}\sigma'_{A}(y)\) for every \(y\in Y\) and \(\sigma_A\leq_{Y}\sigma'_{A}\) if \(\sigma_A(y)\leq_{A}\sigma'_{A}(y)\) for every \(y\in Y\).
Let \(A\llbracket \rrbracket:T_{\Sigma}(X)\rightarrow(ENV_{A}\rightarrow A)\) which is a function be defined by:
\(A\llbracket x\rrbracket\sigma=\sigma(x)\).
\(A\llbracket f(\underline{t})\rrbracket\sigma=f_{A}(A\llbracket \underline{t}\rrbracket\sigma)\).
Proposition 54. The following statements hold:
\(\sigma:T_{\Sigma}(X)\rightarrow A\) is a \(\Sigma\)-homomorphism.
If \(\varphi:T_{\Sigma}(X)\rightarrow A\) is a \(\Sigma\)-homomorphism satisfying \(\varphi(x)=\sigma(x)\) then \(\varphi\) coincides with \(\sigma\).
If \(\sigma,\sigma'\) are \(A\)-assignments such that \(\sigma=_{FV(t)}\sigma'\) then \(\sigma(t)=\sigma'(t)\).
Let \(A\llbracket \rrbracket:REC_{\Sigma}(X)\rightarrow(ENV_{A}\rightarrow A)\) which is well-defined be extended by:
\(A\llbracket x\rrbracket\sigma=\sigma(x)\).
\(A\llbracket f(\underline{t})\rrbracket\sigma=f_{A}(A\llbracket \underline{t}\rrbracket\sigma)\).
\(A\llbracket rec~x.t\rrbracket\sigma=Y\lambda a.A\llbracket t\rrbracket\sigma[a/x]\), where \(a\in A\), \(Y\) is the least fixpoint operator.
Lemma 43. Let \(t\in REC_{\Sigma}(X)\) and \(\sigma,\sigma'\) be \(A\)-assignments, if \(\sigma\leq_{FV(t)}\sigma'\) then \(A\llbracket t\rrbracket\sigma\leq_{A}A\llbracket t\rrbracket\sigma'\).
Proposition 55. \(A\llbracket t\sigma\rrbracket\sigma_{A}=A\llbracket t\rrbracket(\sigma_{A}\circ\sigma)\).
Corollary 8. If \(y\notin FV(t)\), \(A\llbracket rec~x.t\rrbracket=A\llbracket rec~y.t[y/x]\rrbracket\).
Corollary 9. \(t=_{\alpha}t'\) implies \(A\llbracket t\rrbracket=A\llbracket t'\rrbracket\).
Corollary 10. \(A\llbracket rec~x.t\rrbracket=A\llbracket t[rec~x.t/x]\rrbracket\).
Lemma 44. For every \(n\geq 0\), \(A\llbracket t^{n}\rrbracket\leq A\llbracket t\rrbracket\).
Theorem 56 (Finite Approximations). For every \(t\in REC_{\Sigma}(X)\), \(A\llbracket t\rrbracket=\bigvee A\llbracket \mathrm{App}(t)\rrbracket\).
Proposition 57. Let \(\varphi:REC_{\Sigma}(X)\rightarrow A\) be a \(\Sigma\)-homomorphism satisfying:
It is an extension of \(A\)-assignment \(\sigma\), i.e., \(\varphi(x)=\sigma(x)\).
For every \(t\in REC_{\Sigma}(X)\), \(\varphi(t)=\bigvee_{A}\varphi(\mathrm{App}(t))\).
then \(\varphi=\sigma\).
A function \(\varphi:REC_{\Sigma}(X)\rightarrow[ENV_{A}\rightarrow A]\) is reasonable if:
\(\varphi(rec~x.t)=\varphi(t[rec~x.t/x])\).
\(\varphi(t[u/x])\sigma=\varphi(t)\sigma[\varphi(u)\sigma/x]\).
Proposition 58. If \(\varphi:REC_{\Sigma}(X)\rightarrow[ENV_{A}\rightarrow A]\) is a reasonable \(\Sigma\)-homomorphism then \(A\llbracket t\rrbracket\leq\varphi(t)\) for every \(t\in REC_{\Sigma}(X)\).
In this section, we give the operational semantics of the language \(\mathbf{M}_3\). The predicate \(\surd\) represents successful termination, \(\xrightarrow{a}\surd\) represents successful termination after execution of the action \(a\in\mathsf{Act}\), \(\xrightarrow{U}\surd\) represents successful termination after execution of the action \(U\in\mathsf{Pom}\) and \(\xrightarrow{ }\surd\) represents successful termination without execution of the any action. The divergence predicate \(p\uparrow\) represents that \(p\) is divergent, i.e., \(p\) has an infinite internal computation, \[p\rightarrowtail p_0\rightarrowtail p_1\rightarrowtail\cdots\rightarrowtail p_k\rightarrowtail\cdots\] While the convergence predicate \(p\downarrow\) represents that \(p\) is not divergent \(p\nuparrow\), i.e., convergent, \(p\) has no infinite internal computation. The following are the PTSS of the language \(\mathbf{M}_3\), where \(p,q\in\mathsf{Proc}\).
The PTSS of \(\Omega\) is as follows.
\[\frac{}{\Omega\uparrow}\] \[\frac{}{\Omega\rightarrowtail\Omega}\]
The PTSS of action \(1\), \(a\in\mathsf{Act}\) and \(U\in\mathsf{Pom}\) is as follows. Note that, there is no any transition rules for \(0\).
\[\frac{}{0\downarrow}\quad\frac{}{1\downarrow}\quad \frac{}{a\downarrow} \quad\frac{}{U\downarrow}\] \[\frac{}{1\xrightarrow{ }\surd}\quad\frac{}{a\xrightarrow{a}\surd}\quad\frac{}{U\xrightarrow{U}\surd}\]
The PTSS of sequential composition is as follows.
\[\frac{p\downarrow\quad q\downarrow}{p\cdot q\downarrow}\] \[\frac{p\xrightarrow{U}\surd}{p\cdot q\xrightarrow{U} q}\quad\frac{p\xrightarrow{U}p'}{p\cdot q\xrightarrow{U} p'\cdot q}\]
The PTSS of alternative composition is as follows.
\[\frac{q\downarrow\quad q\downarrow}{p+q\downarrow}\] \[\frac{p\xrightarrow{U}\surd}{p+ q\xrightarrow{U}\surd} \quad\frac{p\xrightarrow{U}p'}{p+ q\xrightarrow{U}p'} \quad\frac{q\xrightarrow{U}\surd}{p+ q\xrightarrow{U}\surd} \quad\frac{q\xrightarrow{U}q'}{p+ q\xrightarrow{U}q'}\]
The PTSS of concurrent composition is as follows.
\[\frac{p\downarrow\quad q\downarrow}{p\between q\downarrow}\] \[\frac{p\xrightarrow{a}\surd\quad q\xrightarrow{b}\surd}{p\between q\xrightarrow{\langle\mskip-4mu|a,b|\mskip-4mu\rangle}\surd} \quad\frac{p\xrightarrow{a}p'\quad q\xrightarrow{b}\surd}{p\between q\xrightarrow{\langle\mskip-4mu|a,b|\mskip-4mu\rangle}p'}\] \[\frac{p\xrightarrow{a}\surd\quad q\xrightarrow{b}q'}{p\between q\xrightarrow{\langle\mskip-4mu|a,b|\mskip-4mu\rangle}q'} \quad\frac{p\xrightarrow{a}p'\quad q\xrightarrow{b}q'}{p\between q\xrightarrow{\langle\mskip-4mu|a,b|\mskip-4mu\rangle}p'\between q'}\] \[\frac{p\xrightarrow{a}\surd\quad q\xrightarrow{b}\surd}{p\between q\xrightarrow{\gamma(a,b)}\surd} \quad\frac{p\xrightarrow{a}p'\quad q\xrightarrow{b}\surd}{p\between q\xrightarrow{\gamma(a,b)}p'}\] \[\frac{p\xrightarrow{a}\surd\quad q\xrightarrow{b}q'}{p\between q\xrightarrow{\gamma(a,b)}q'} \quad\frac{p\xrightarrow{a}p'\quad q\xrightarrow{b}q'}{p\between q\xrightarrow{\gamma(a,b)}p'\between q'}\]
The PTSS of parallel composition is as follows.
\[\frac{p\downarrow\quad q\downarrow}{p\parallel q\downarrow}\] \[\frac{p\xrightarrow{a}\surd\quad q\xrightarrow{b}\surd}{p\parallel q\xrightarrow{\langle\mskip-4mu|a,b|\mskip-4mu\rangle}\surd} \quad\frac{p\xrightarrow{a}p'\quad q\xrightarrow{b}\surd}{p\parallel q\xrightarrow{\langle\mskip-4mu|a,b|\mskip-4mu\rangle}p'}\] \[\frac{p\xrightarrow{a}\surd\quad q\xrightarrow{b}q'}{p\parallel q\xrightarrow{\langle\mskip-4mu|a,b|\mskip-4mu\rangle}q'} \quad\frac{p\xrightarrow{a}p'\quad q\xrightarrow{b}q'}{p\parallel q\xrightarrow{\langle\mskip-4mu|a,b|\mskip-4mu\rangle}p'\between q'}\]
The PTSS of communication merge is as follows.
\[\frac{p\downarrow\quad q\downarrow}{p\mid q\downarrow}\] \[\frac{p\xrightarrow{a}\surd\quad q\xrightarrow{b}\surd}{p\mid q\xrightarrow{\gamma(a,b)}\surd} \quad\frac{p\xrightarrow{a}p'\quad q\xrightarrow{b}\surd}{p\mid q\xrightarrow{\gamma(a,b)}p'}\] \[\frac{p\xrightarrow{a}\surd\quad q\xrightarrow{b}q'}{p\mid q\xrightarrow{\gamma(a,b)}q'} \quad\frac{p\xrightarrow{a}p'\quad q\xrightarrow{b}q'}{p\mid q\xrightarrow{\gamma(a,b)}p'\between q'}\]
The PTSS of encapsulation operator is as follows.
\[\frac{p\downarrow}{\partial_H(p)\downarrow}\] \[\frac{p\xrightarrow{a}\surd\quad a\notin H}{\partial_H(p)\xrightarrow{a}\surd}\quad\frac{p\xrightarrow{a}p'\quad a\notin H}{\partial_H(p)\xrightarrow{a}\partial_H(p')}\]
The PTSS of confliction, confliction eliminator and the auxiliary unless operator is as follows, where \(\leq\) is the execution order.
\[\frac{p\downarrow}{\Theta(p)\downarrow}\quad\frac{p\downarrow\quad q\downarrow}{p\triangleleft q\downarrow}\] \[\frac{p\xrightarrow{a}\surd\quad a\sharp b}{\Theta(p)\xrightarrow{a}\surd} \quad\frac{p\xrightarrow{b}\surd\quad a\sharp b}{\Theta(p)\xrightarrow{b}\surd}\] \[\frac{p\xrightarrow{a}p'\quad a\sharp b}{\Theta(p)\xrightarrow{a}\Theta(p')} \quad\frac{p\xrightarrow{b}p'\quad a\sharp b}{\Theta(p)\xrightarrow{b}\Theta(p')}\] \[\frac{p\xrightarrow{c}\surd \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\sharp b\quad c\leq a}{p\triangleleft q\xrightarrow{c}\surd} \quad\frac{p\xrightarrow{c}p' \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\sharp b\quad c\leq a}{p\triangleleft q\xrightarrow{c}p'}\] \[\frac{p\xrightarrow{a}\surd \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\sharp b}{p\triangleleft q\xrightarrow{ }\surd} \quad\frac{p\xrightarrow{a}p' \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\sharp b}{p\triangleleft q\xrightarrow{ }p'}\] \[\frac{p\xrightarrow{a}\surd \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{c}\quad a\sharp b\quad b\leq c}{p\triangleleft q\xrightarrow{ }\surd} \quad\frac{p\xrightarrow{a}p' \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{c}\quad a\sharp b\quad b\leq c}{p\triangleleft q\xrightarrow{ }p'}\] \[\frac{p\xrightarrow{c}\surd \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\sharp b\quad a\leq c}{p\triangleleft q\xrightarrow{ }\surd} \quad\frac{p\xrightarrow{c}p' \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\sharp b\quad a\leq c}{p\triangleleft q\xrightarrow{ }p'}\]
The PTSS of internal confliction, confliction eliminator and the auxiliary unless operator is as follows.
\[\frac{p\downarrow}{\Theta(p)\downarrow}\quad\frac{p\downarrow\quad q\downarrow}{p\triangleleft q\downarrow}\] \[\frac{p\xrightarrow{a}\surd\quad a\mathbin{\mathpalette\make@circled{\#}}b}{\Theta(p)\xrightarrow{a}\surd} \quad\frac{p\xrightarrow{b}\surd\quad a\mathbin{\mathpalette\make@circled{\#}}b}{\Theta(p)\xrightarrow{b}\surd}\] \[\frac{p\xrightarrow{a}p'\quad a\mathbin{\mathpalette\make@circled{\#}}b}{\Theta(p)\xrightarrow{a}\Theta(p')} \quad\frac{p\xrightarrow{b}p'\quad a\mathbin{\mathpalette\make@circled{\#}}b}{\Theta(p)\xrightarrow{b}\Theta(p')}\] \[\frac{p\xrightarrow{c}\surd \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\mathbin{\mathpalette\make@circled{\#}}b\quad c\leq a}{p\triangleleft q\xrightarrow{c}\surd} \quad\frac{p\xrightarrow{c}p' \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\mathbin{\mathpalette\make@circled{\#}}b\quad c\leq a}{p\triangleleft q\xrightarrow{c}p'}\] \[\frac{p\xrightarrow{a}\surd \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\mathbin{\mathpalette\make@circled{\#}}b}{p\triangleleft q\xrightarrow{ }\surd} \quad\frac{p\xrightarrow{a}p' \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\mathbin{\mathpalette\make@circled{\#}}b}{p\triangleleft q\xrightarrow{ }p'}\] \[\frac{p\xrightarrow{a}\surd \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{c}\quad a\mathbin{\mathpalette\make@circled{\#}}b\quad b\leq c}{p\triangleleft q\xrightarrow{ }\surd} \quad\frac{p\xrightarrow{a}p' \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{c}\quad a\mathbin{\mathpalette\make@circled{\#}}b\quad b\leq c}{p\triangleleft q\xrightarrow{ }p'}\] \[\frac{p\xrightarrow{c}\surd \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\mathbin{\mathpalette\make@circled{\#}}b\quad a\leq c}{p\triangleleft q\xrightarrow{ }\surd} \quad\frac{p\xrightarrow{c}p' \quad q \ext@arrow 0055{ \slashedarrowfill@\relbar\relbar/\rightarrow}{}{b}\quad a\mathbin{\mathpalette\make@circled{\#}}b\quad a\leq c}{p\triangleleft q\xrightarrow{ }p'}\]
The PTSS of internal alternative composition is as follows.
\[\frac{p\downarrow\quad q\downarrow}{p\oplus q\downarrow}\] \[\frac{}{1\rightarrowtail\surd}\] \[\frac{}{p\oplus q\rightarrowtail p} \quad\frac{}{p\oplus q\rightarrowtail q}\] \[\frac{p\rightarrowtail p'}{p\cdot q\rightarrowtail p'\cdot q}\] \[\frac{p\rightarrowtail p'}{p+q\rightarrowtail p'+q} \quad\frac{q\rightarrowtail q'}{p+q\rightarrowtail p+q'}\] \[\frac{p\rightarrowtail p'}{p\between q\rightarrowtail p'\between q} \quad\frac{q\rightarrowtail q'}{p\between q\rightarrowtail p\between q'} \quad\frac{p\rightarrowtail p'\quad q\rightarrowtail q'}{p\between q\rightarrowtail p'\between q'}\] \[\frac{p\rightarrowtail p'}{p\parallel q\rightarrowtail p'\parallel q} \quad\frac{q\rightarrowtail q'}{p\parallel q\rightarrowtail p\parallel q'} \quad\frac{p\rightarrowtail p'\quad q\rightarrowtail q'}{p\parallel q\rightarrowtail p'\parallel q'}\] \[\frac{p\rightarrowtail p'}{p\mid q\rightarrowtail p'\mid q} \quad\frac{q\rightarrowtail q'}{p\mid q\rightarrowtail p\mid q'} \quad\frac{p\rightarrowtail p'\quad q\rightarrowtail q'}{p\mid q\rightarrowtail p'\mid q'}\] \[\frac{p\rightarrowtail p'}{\partial_H(p)\rightarrowtail \partial_H(p')}\] \[\frac{p\rightarrowtail p'}{\Theta(p)\rightarrowtail \Theta(p')}\] \[\frac{p\rightarrowtail p'}{p\triangleleft q\rightarrowtail p'\triangleleft q} \quad\frac{q\rightarrowtail q'}{p\triangleleft q\rightarrowtail p\triangleleft q'}\]
The PTSS of recursion is as follows.
\[\frac{t[rec~x.t/x]\downarrow}{rec~x.t\downarrow}\] \[\frac{}{rec~x.t\rightarrowtail t[rec~x.t/x]}\]
The divergence predicate and the convergence predicate can be relativized to sequences of pomsets by:
\(p\downarrow 1\) if \(p\downarrow\).
\(p\downarrow Us\) if \(p\downarrow\) and \(p\xRightarrow{U}p'\) implies \(p'\downarrow s\).
While \(p\uparrow s\) if \(p\ndownarrow s\).
Definition 92. For \(p,q\in\mathbf{M}_3\), let
\(p\ll_{\mathrm{MAY}}q\) if \(L(p)\subseteq L(q)\).
\(p\ll_{\mathrm{MUST}}q\) if \(p\downarrow s\) implies
\(q\downarrow s\);
\(\mathscr{A}(q,s)\subset\subset\mathscr{A}(p,s)\).
\(p\ll q\) if both \(p\ll_{\mathrm{MAY}}q\) and \(p\ll_{\mathrm{MUST}}q\).
Theorem 59 (Alternative characterization for \(\mathbf{M}_3\)). For \(p,q\in\mathbf{M}_3\),
\(p\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MAY}}q\) if and only if \(p\ll_{\mathrm{MAY}}q\).
\(p\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MUST}}q\) if and only if \(p\ll_{\mathrm{MUST}}q\).
\(p\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}q\) if and only if \(p\ll q\).
Definition 93 (Proof system \(\mathbf{rDED}(E)\)). A system of inequational deductions by whose inequations in \(E\) can be used to derive inequations, denoted \(\mathbf{rDED}(E)\). It contains the following eight rules, where \(t,t'\in REC_{\Sigma}(X)\), \(f\in\Sigma\) and \(\sigma\) is a substitution:
Reflexivity: \[\frac{}{t\leq t}\]
Transitivity: \[\frac{t\leq t',t'\leq t''}{t\leq t''}\]
Substitution: \[a)\quad\frac{t_1\leq t_1',\cdots,t_{ar(f)}\leq t_{ar(f)}'}{f(t_1,\cdots,t_{ar(f)})\leq f(t_1',\cdots,t_{ar(f)}')}\] \[b)\quad\frac{t\leq t'}{rec~x.t\leq rec~x.t'}\]
Instantiation: \[\frac{t\leq t'}{t\sigma\leq t'\sigma}\]
Inequations: for every \(\langle t,t'\rangle\in E\), \[\frac{}{t\leq t'}\]
Equations: \[\frac{t\leq t',t'\leq t}{t=t'},~~\frac{t=t'}{t\leq t',t'\leq t},~~\frac{t=t'}{t'=t}\]
\(\Omega\)-rule: \[\Omega\leq x\]
\(REC\): \[\frac{}{rec~x.t=t[rec~x.t/x]}\]
The following is the definition of \(\omega\)-Induction. The proof system \(\mathbf{rDED}(E)\)+\(\omega\)-Induction is denoted \(\mathbf{\omega DED}(E)\).
\[\omega-Induction\quad \frac{for every d\in\mathrm{App}(t),d\leq t'}{t\leq t'}\]
We use \(t\leq_{E}t'\), \(t\leq_{Er}t'\) and \(t\leq_{E\omega}t'\) to mean that \(t\leq t'\) is derivable in the appropriate proof system. And we use \(\vdash_{r}\) and \(\vdash_{\omega}\) for \(\vdash_{\mathbf{rDED}(\emptyset)}\) and \(\vdash_{\mathbf{\omega DED}(\emptyset)}\) respectively.
Lemma 45. If \(A\in\mathscr{CC}(E)\) then every rule in \(\mathbf{\omega DED}(E)\) is sound with respect to \(A\).
Corollary 11. For every \(t,t'\in REC_{\Sigma}(X)\), if \(\vdash_{\mathbf{\omega DED}(E)}t\leq t'\) then \(A\llbracket t\rrbracket\leq A\llbracket t'\rrbracket\) for every interpretation in \(A\) in \(\mathscr{CC}(E)\).
Lemma 46. For every \(n\geq 0\), \(\vdash_{r}t^{n}\leq t\).
Theorem 60. For \(d\in FREC_{\Sigma}\) and \(q\in REC_{\Sigma}\), if \(CI_{E}\llbracket d\rrbracket\leq CI_{E}\llbracket q\rrbracket\), then \(\vdash_{\mathbf{rDED}(E)}d\leq q\).
Theorem 61. The following statements hold:
\(\mathbf{\omega DED}(E)\) is sound with respect to \(\leq_{CI_{E}}\) over \(REC_{\Sigma}(X)\).
\(\mathbf{\omega DED}(E)\) is complete with respect to \(\leq_{CI_{E}}\) over \(REC_{\Sigma}\).
Lemma 47. The following statements hold:
\(t=_{\alpha}u\) implies \(t=u\) is a theorem in \(\mathbf{\omega DED}(E)\).
If \(\sigma(x)\leq\sigma'(x)\) is a theorem in \(\mathbf{rDED}(E)\) for every \(x\), then \(t\sigma\leq t\sigma'\) is also a theorem.
The following is the definition of Recursion Induction (RI).
\[RI\quad \frac{t[u/x]\leq u}{rec~x.t\leq u}\]
Let \(\underline{z}=\langle z_1,\cdots,z_k\rangle\) be \(k\) distinct variables and \(\underline{u}=\langle u_1,\cdots,u_k\rangle\) be \(k\) terms in \(REC_{\Sigma}(X)\) with the property that if \(z_i\in FV(u_j)\) then \(i=j\), i.e., \(\underline{u}\) is called noninterfering with respect to \(\underline{z}\). And we use \(rec~\underline{z}.\underline{u}\) to denote the sequence \(\langle rec~z_1.u_1,\cdots,rec~z_k.u_k\rangle\).
The following is the definition of Scott Induction (SI).
SI: Suppose \(\underline{u}\) is noninterfering with respect to \(\underline{z}\) which is a sequence of distinct variables, If:
\(\vdash t[\underline{\Omega}/\underline{z}]\leq t'[\underline{\Omega}/\underline{z}]\).
\(t\leq t'\vdash t[\underline{u}/\underline{z}]\leq t'[\underline{u}\leq\underline{z}]\).
then,
\(\vdash t[rec~\underline{z}.\underline{u}/\underline{z}]\leq t'[rec~\underline{z}.\underline{u}/\underline{z}]\).
Let \(\mathbf{PS}\) and \(\mathbf{PS}'\) be two proof systems, we say that \(\mathbf{PS}\) is at least as powerful as \(\mathbf{PS}'\), written \(\mathbf{PS}'\leq\mathbf{PS}\), if for every \(t,t'\in REC_{\Sigma}(X)\),
\(\vdash_{\mathbf{PS}'}t\leq t'\) implies \(\vdash_{\mathbf{PS}}t\leq t'\).
Proposition 62. \[\mathbf{rDED}(E)\leq \mathbf{rDED}(E)+RI\leq\mathbf{rDED}(E)+SI\leq \mathbf{rDED}(E)+\omega-Induction\]
The following is the definition called Unique Fixpoint Induction (UFI).
\[UFI\quad \frac{t[u/x]=u}{rec~x.t=u}\]
UFI is unsound in general because it assumes every recursive equation always has a unique fixpoint. The guarded recursion has a unique fixpoint. In the guarded recursive equation \(x=t\), every occurrence of \(x\) in \(t\) is with a prefix \(U\cdot\).
Definition 94. The head normal form (hnf) is defined inductively as follows:
\(0\) is an hnf.
If \(\mathscr{A}\) is saturated set, any term of the form \(\mathop{ \mathchoice { \begin{tikzpicture}[baseline=(char.base), inner sep=0, outer sep=0] \draw (-0.3ex,0) circle (0.1); \node (char) at (0,0) {\displaystyle\sum}; \end{tikzpicture}} { \begin{tikzpicture}[baseline=(char.base), inner sep=0, outer sep=0] \draw (-0.3ex,0) circle (0.075); \node (char) at (0,0) {\textstyle\sum}; \end{tikzpicture}} { \begin{tikzpicture}[baseline=(char.base), inner sep=0, outer sep=0] \draw (-0.3ex,0) circle (0.075); \node (char) at (0,0) {\scriptstyle\sum}; \end{tikzpicture}} { \begin{tikzpicture}[baseline=(char.base), inner sep=0, outer sep=0] \draw (-0.3ex,0) circle (0.075); \node (char) at (0,0) {\scriptscriptstyle\sum}; \end{tikzpicture}} }\displaylimits \{\sum Up(U)|U\in A,A\in\mathscr{A}\}\) is an hnf.
Theorem 63 (Head normal form theorem). Every convergent term has an hnf, i.e., \(p\downarrow\) implies \(\vdash_{\mathbf{rDED}(E^1)}t=h\), where \(h\) is an hnf.
Definition 95. The \(\Omega\) normal form (\(\Omega\)-nf) is defined inductively as follows:
\(0\) and \(\Omega\) are \(\Omega\)-nf’s.
If \(\mathscr{A}\) is saturated set, and \(d(U)\) is an \(\Omega\)-nf for every \(U\in S(\mathscr{A})\) then \(\mathop{ \mathchoice { \begin{tikzpicture}[baseline=(char.base), inner sep=0, outer sep=0] \draw (-0.3ex,0) circle (0.1); \node (char) at (0,0) {\displaystyle\sum}; \end{tikzpicture}} { \begin{tikzpicture}[baseline=(char.base), inner sep=0, outer sep=0] \draw (-0.3ex,0) circle (0.075); \node (char) at (0,0) {\textstyle\sum}; \end{tikzpicture}} { \begin{tikzpicture}[baseline=(char.base), inner sep=0, outer sep=0] \draw (-0.3ex,0) circle (0.075); \node (char) at (0,0) {\scriptstyle\sum}; \end{tikzpicture}} { \begin{tikzpicture}[baseline=(char.base), inner sep=0, outer sep=0] \draw (-0.3ex,0) circle (0.075); \node (char) at (0,0) {\scriptscriptstyle\sum}; \end{tikzpicture}} }\displaylimits \{d(A)|A\in\mathscr{A}\}\) is also an \(\Omega\)-nf.
Corollary 12. The following statements hold:
If \(d\in FREC_{\Sigma^3}\) and \(d\uparrow\), then \(d=_{E^2_{\mathbf{S}}}\Omega\).
Every term in \(FREC_{\Sigma^3}\) has an \(\Omega\)-nf, i.e., for every \(d\in FREC_{\Sigma^3}\) there exists and \(\Omega\)-nf \(n\) such that \(d=_{E^2_{\mathbf{S}}}n\).
Proposition 64. \(\mathbf{\Omega DED}(E^2_{\mathbf{S}})\) is sound and complete with respect to \(\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MUST}}\) over \(FREC_{\Sigma^3}\).
Lemma 48. If \(e\) is a finite experiment and \(p~\mathsf{must}~e\) then \(d~\mathsf{must}~e\) for some \(d\in\mathrm{App}(p)\).
Lemma 49. For \(d\in FREC_{\Sigma^3}\) and \(p\in\mathbf{M}_3\), if \(d\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MUST}}p\) then \(d\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MUST}}d'\) for some \(d'\in\mathrm{App}(p)\).
Proposition 65. \(\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MUST}}\) is algebraic over \(\mathbf{M}_3\).
Proposition 66. \(\leq_{E^2_{\mathbf{S}}\omega}\) is algebraic over \(\mathbf{M}_3\), where \(t\leq_{E^2_{\mathbf{S}}\omega}t'\) denotes \(\vdash_{\mathbf{\omega DED}(E^2_{\mathbf{S}})}t\leq t'\) for some \(t,t'\in\mathbf{M}_3\).
Theorem 67 (Full Abstraction). The interpretation \(\mathbf{PAT}_{\mathbf{S}}\) is fully abstract with respect to \(\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MUST}}\) over \(\mathbf{M}_3\).
Theorem 68 (Soundness and Completeness). The proof system \(\mathbf{\omega DED}(E^2_{\mathbf{S}})\) is sound and complete with respect to \(\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MUST}}\) over \(REC_{\Sigma^3}\).
Theorem 69 (Full Abstraction). The interpretation \(\mathbf{PAT}\) is fully abstract with respect to \(\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}\) over \(\mathbf{M}_3\).
Theorem 70 (Soundness and Completeness). The proof system \(\mathbf{\omega DED}(E^2)\) is sound and complete with respect to \(\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}\) over \(REC_{\Sigma^3}\).
Theorem 71 (Full Abstraction). The interpretation \(\mathbf{PAT}_{\mathbf{W}}\) is fully abstract with respect to \(\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MAY}}\) over \(\mathbf{M}_3\).
Theorem 72 (Soundness and Completeness). The proof system \(\mathbf{\omega DED}(E^2_{\mathbf{W}})\) is sound and complete with respect to \(\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MAY}}\) over \(REC_{\Sigma^3}\).
In this chapter, we introduce abstraction. Firstly, we introduce the whole signature of this book in 8.1, then the operational semantics, axiomatic semantics and denotational semantics of the processes are introduced in 8.2, 8.3 and 8.4, respectively. Finally, we get the results on trinity of operational semantics, denotational semantics and axiomatic semantics in 8.5.
Definition 96 (Whole signature). The whole signature \(\Sigma^4\) consists of:
\(\Sigma^4\supset \Sigma^3\).
The unary operator \(\mathrm{Abs}_I\) as the abstraction, i.e., for process \(p\), the process \(\mathrm{Abs}_I(p)\) renames all actions of \(p\) in the set \(I\) to \(1\).
Definition 97 (Syntax of process language). The syntax of the process language is given by the following BNF grammar:
\(p::=\Omega~|~0~|~1~|~U~|~\gamma(a,b)~|~p\cdot p~|~a\sharp b~|~a\mathbin{\mathpalette\make@circled{\#}}b~|~x~|~p+p~|~p\oplus p~|~p\parallel p~|~p\mid p~|~p\between p~|~\Theta(p)~|~p\triangleleft p~|~\partial_H(p)~|~rec~x.p~|~\mathrm{Abs}_I(p)\)
where \(a,b\in\mathsf{Act}\), \(U\in\mathsf{Pom}\), \(p\in \mathsf{Proc}\), \(x\) is recursive variable and \(rec~x.p\) stands for the process defined by the recursive equation \(x=p\).
The PTSSs of \(0\), \(1\), \(\Omega\), \(U\), \(\cdot\), \(+\), \(\sharp\), \(\oplus\), \(\mathbin{\mathpalette\make@circled{\#}}\), \(\parallel\), \(\mid\), \(\between\), \(\Theta\), \(\triangleleft\) and \(rec~x.p\) are same as the ones in 7.2. The PTSS of \(\mathrm{Abs}_I\) is as follows.
\[\frac{p\downarrow}{\mathrm{Abs}_I(p)\downarrow}\] \[\frac{p\rightarrowtail\surd}{\mathrm{Abs}_I(p)\rightarrowtail\surd}\quad\frac{p\rightarrowtail p'}{\mathrm{Abs}_I(p)\rightarrowtail \mathrm{Abs}_I(p')}\] \[\frac{p\xrightarrow{a}\surd\quad a\notin I}{\mathrm{Abs}_I(p)\xrightarrow{a}\surd}\quad\frac{p\xrightarrow{a}p'\quad a\notin I}{\mathrm{Abs}_I(p)\xrightarrow{a} \mathrm{Abs}_I(p')}\]
We continue to use the preorders \(\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MUST}}\), \(\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MAY}}\), \(\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}\) and \(\ll_{\mathrm{MUST}}\), \(\ll_{\mathrm{MAY}}\), \(\ll\), and we can get the alternative characterization theorem for \(\mathbf{M}_4\).
Theorem 73 (Alternative characterization for \(\mathbf{M}_4\)). For \(p,q\in\mathbf{M}_4\),
\(p\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MAY}}q\) if and only if \(p\ll_{\mathrm{MAY}}q\).
\(p\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MUST}}q\) if and only if \(p\ll_{\mathrm{MUST}}q\).
\(p\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}q\) if and only if \(p\ll q\).
Corollary 13. The preorders \(\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MUST}}\), \(\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MAY}}\), \(\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}\) are preserved by all the operators of \(\mathbf{M}_4\).
Let \(\Sigma\) be an arbitrary signature containing \(\Sigma^1\), then \(REC_{\Sigma}\) contains \(\mathbf{M}_3\), which is given an operational semantics by extending that of \(\mathbf{M}_3\). We continue to use the preorders \(\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MUST}}\), \(\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MAY}}\), \(\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}\) and \(\ll_{\mathrm{MUST}}\), \(\ll_{\mathrm{MAY}}\), \(\ll\), and we can get the alternative characterization theorem like \(\mathbf{M}_4\) in 8.2. And \(E^2_{\mathbf{S}}\) is augmented to a new set of inequations \(E\), in the following way, the extended proof system \(\mathbf{\omega DED}(E)\) is sound and complete, i.e., by eliminating all occurrences of function symbols in \(\Sigma\) which are not in \(\Sigma^1\).
Definition 98. The \(\Sigma^1\)-head term is defined inductively as follows:
\(0\) is a head term.
If \(f\in \Sigma^1\) and \(p\) are head terms then \(f(p)\) is also a head term.
Definition 99 (Reductivity). Let \(E\) be a set of inequations over \(\Sigma\) containing \(E^2_{\mathbf{S}}\). We say \(E\) is reductive if it satisfies:
For every \(d\in FREC_{\Sigma}\) there exists a \(d'\in FREC_{\Sigma^1}\) such that \(d=_{E}d'\).
For every \(p\in REC_{\Sigma}\), \(p\downarrow\) implies \(p=_{Er}q\) for some head term \(q\).
Such an \(E\) is called normal.
Theorem 74 (Reduction theorem). If \(E\) is reductive and \(\mathbf{\Omega DED}(E)\) is sound with respect to \(\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MUST}}\) over \(REC_{\Sigma}\) then \(\mathbf{\omega DED}(E)\) is both sound and complete with respect to \(\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MUST}}\) over \(REC_{\Sigma}\).
Now, let us apply the reduction theorem to \(\mathbf{M}_4\).
The proof system \(\mathbf{\omega DED}(E^4_{\mathbf{S}})\) contains the inequations denoted \(E^4_{\mathbf{S}}\), which include \(E^2_{\mathbf{S}}\) in 6.4 and the inequations in 3.
| No. | Axiom |
|---|---|
| Continuing: Inequations of \(\mathrm{Abs}_I\) | |
| No. | Axiom |
| to be continued… | |
| \(ABS1\) | \(\mathrm{Abs}_I(0)=0\) |
| \(ABS2\) | \(\mathrm{Abs}_I(1)=1\) |
| \(ABS3\) | \(\mathrm{Abs}_I(a)=1\quad a\in I\) |
| \(ABS4\) | \(\mathrm{Abs}_I(a)=a\quad a\notin I\) |
| \(ABS5\) | \(\mathrm{Abs}_I(x\cdot y)=\mathrm{Abs}_I(x)\cdot\mathrm{Abs}_I(y)\) |
| \(ABS6\) | \(\mathrm{Abs}_I(x+y)=\mathrm{Abs}_I(x)+\mathrm{Abs}_I(y)\) |
| \(ABS7\) | \(\mathrm{Abs}_I(x\oplus y)=\mathrm{Abs}_I(x)\oplus\mathrm{Abs}_I(y)\) |
| \(ABS8\) | \(\mathrm{Abs}_I(x\parallel y)=\mathrm{Abs}_I(x)\parallel\mathrm{Abs}_I(y)\) |
| \(ABS9\) | \(\mathrm{Abs}_I(\mathrm{Abs}_I(x))=\mathrm{Abs}_I(x)\) |
| \(ABS10\) | \(\mathrm{Abs}_{I_1}(\mathrm{Abs}_{I_2}(x))=\mathrm{Abs}_{I_2}(\mathrm{Abs}_{I_1}(x))\) |
| \(\Omega11\) | \(\mathrm{Abs}_I(\Omega) \leq \Omega\) |
Lemma 50. \(\mathbf{\Omega DED}(E^4_{\mathbf{S}})\) is sound with respect to \(\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MUST}}\) over \(REC_{\Sigma^4}\).
Theorem 75 (Soundness and Completeness). The proof system \(\mathbf{\omega DED}(E^4_{\mathbf{S}})\) is sound and complete with respect to \(\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MUST}}\) over \(REC_{\Sigma^4}\).
Proposition 76. If \(E\) is normal then \(CI_{E}\) is fully abstract with respect to \(\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MUST}}\) over \(REC_{\Sigma}\).
Let \(\langle \mathbf{PAT}_{\mathbf{S}},\leq_{\mathbf{PAT}_{\mathbf{S}}},\Sigma^4\rangle\) be a domain, we need to show for each \(f\in\Sigma^4\) there is a continuous function \(f_{\Sigma^4}\) over \(\mathbf{PAT}_{\mathbf{S}}\). Such a domain is called an extension of \(\mathbf{PAT}_{\mathbf{S}}\) if for every \(f\in \Sigma^1\), \(f_{\Sigma^4}\) coincides with \(f_{\mathbf{PAT}_{\mathbf{S}}}\) defined in 6.
Theorem 77. If \(E\) is normal then there is a unique extension of \(\mathbf{PAT}_{\mathbf{S}}\), up to isomorphism, which is fully abstract with respect to \(\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MUST}}\) over \(REC_{\Sigma}\).
Corollary 14. If \(A\) is any extension of \(\mathbf{PAT}_{\mathbf{S}}\) in \(\mathscr{CC}(E)\), where \(E\) is normal, then it is fully abstract with respect to \(\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MUST}}\) over \(REC_{\Sigma}\).
So, we only consider the new function symbols in \(\Sigma^4\), i.e., \(\mathrm{Abs}_I\).
\(\mathrm{Abs}_I(1)=1\)
\(\mathrm{Abs}_I(\langle\mskip-4mu|a,s|\mskip-4mu\rangle)=\begin{cases} \mathrm{Abs}_I(s), & a\in I;\\ \langle\mskip-4mu|a,\mathrm{Abs}_I(s)|\mskip-4mu\rangle, & otherwise. \end{cases}\)
\(\mathrm{Abs}_I(as)=\begin{cases} \mathrm{Abs}_I(s), & a\in I;\\ a\mathrm{Abs}_I(s), & otherwise. \end{cases}\)
Let \(\mathrm{Abs}_I(L)=\{\mathrm{Abs}_I(s)|s\in L\}\), \(\mathrm{Abs}_I(U)=U\setminus I\) for \(U\in\mathsf{Pom}\), \(\mathrm{Abs}_I(A)=A\setminus I\) for \(A\subseteq\mathsf{Act}\), and \(\mathrm{Abs}_I(\mathscr{A})=\{\mathrm{Abs}_I(A)|A\in\mathscr{A}\}\) for \(\mathscr{A}\) a collection of such sets \(A\).
Then the tree \(\mathrm{Abs}_I(t)\) is defined as:
\(L(\mathrm{Abs}_I(t))=\mathrm{Abs}_I(L(t))\).
\(CL(\mathrm{Abs}_I(t))=\mathrm{Abs}_I(CL(t))\).
\(\mathscr{A}(\mathrm{Abs}_I(t)(s))=\mathrm{Abs}_I(\mathscr{A}(t(s)))\).
Lemma 51. The function \(\mathrm{Abs}_I\in [\mathbf{PAT}_{\mathbf{S}}\rightarrow\mathbf{PAT}_{\mathbf{S}}]\).
Theorem 78 (Full Abstraction). The interpretation \(\mathbf{PAT}_{\mathbf{S}}\) is fully abstract with respect to \(\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MUST}}\) over \(\mathbf{M}_4\).
The proof system \(\mathbf{\omega DED}(E^4)\) contains the inequations denoted \(E^4\), which include \(E^2\) in 6.5 and the inequations in 3.
Theorem 79 (Full Abstraction). The interpretation \(\mathbf{PAT}\) is fully abstract with respect to \(\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}\) over \(\mathbf{M}_4\).
Theorem 80 (Soundness and Completeness). The proof system \(\mathbf{\omega DED}(E^4)\) is sound and complete with respect to \(\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}\) over \(REC_{\Sigma^4}\).
The proof system \(\mathbf{\omega DED}(E^4_{\mathbf{W}})\) contains the inequations denoted \(E^4_{\mathbf{W}}\), which include \(E^2_{\mathbf{W}}\) in 6.5 and the inequations in 3.
Theorem 81 (Full Abstraction). The interpretation \(\mathbf{PAT}_{\mathbf{W}}\) is fully abstract with respect to \(\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MAY}}\) over \(\mathbf{M}_4\).
Theorem 82 (Soundness and Completeness). The proof system \(\mathbf{\omega DED}(E^4_{\mathbf{W}})\) is sound and complete with respect to \(\mathrel{\ooalign{\raise 0.13ex\sqsubset\cr\hidewidth\raise-0.6ex\scalebox{0.9}{\sim}\hidewidth\cr}}_{\mathrm{MAY}}\) over \(REC_{\Sigma^4}\).