Symbolic Semantics

\[\newcommand\ve[1]{\tilde{#1}} \newcommand\sort[1]{\mathsf{Sort}(#1)} \newcommand\entails\vdash \newcommand\chEq{\stackrel{\cdot}{\leftrightarrow}} \newcommand\frameEq\simeq \newcommand\compose\otimes \newcommand\Unit{\mathbf{1}}\]

Requirements on psi-calculus parameters

Channel properties

\[\begin{split}\text{Channel Symmetry}\; & \Psi\entails M \chEq N \implies \Psi\entails N\chEq M \\ \text{Channel Transitivity}\; & \Psi\entails M \chEq N \land \Psi\entails N \chEq L \implies \Psi\entails M\chEq L\end{split}\]

Assertion properties

\[\begin{split}\text{Composition} & \Psi\frameEq\Psi' \implies \Psi\compose\Psi'' \frameEq \Psi'\compose\Psi'' \\ \text{Identity} & \Psi\compose\Unit \frameEq \Psi \\ \text{Associativity} & (\Psi\compose\Psi')\compose\Psi'' \frameEq \Psi\compose(\Psi'\compose\Psi'') \\ \text{Commutativity} & \Psi\compose\Psi' \frameEq \Psi'\compose\Psi\end{split}\]

Entailement properties

\[\text{Wakening}\; \Psi\entails\varphi \implies \Psi\compose\Psi'\entails\varphi\]

Name are terms

\[\mathcal{N} \subseteq \mathbf{T}\]

Broadcast requirements

\[\Psi\entails M \stackrel{\cdot}{\prec} K \implies n(K) \subseteq n(M)\]\[\Psi\entails K \stackrel{\cdot}{\succ} M \implies n(K) \subseteq n(M)\]

Sorted Substitution Requirements

Substitution \([\ve{a} := \ve{N}]\) is well formed if

\[\sort{a_i}\prec\sort{N_i}\]

substitution must land in the same datatype it started with.

requirements, \(T \in \mathbf{T, A, C}\)

\[T[\ve{a} := \ve{N}] = ((\ve{a}\,\ve{b})\cdot T)[\ve{b} := \ve{N}]\]

alpha-renaming of substituted variables, and

\[\sort{M\sigma} \leq \sort{M}\]

Extra requirements of bisimulation algorithm on substitution

\[X[x := x] = X\]\[x[x := M] = M\]\[X[x := M] = X \text{ whenever } x\# X\]\[X[x := L][y := M] = X[y := M][x := L] \text{ whenever } x\# y, M \text{ and } y\# L\]

where \(x\), \(y\) are names, \(X\), \(M\), \(L\) are terms.

References