Pipe-calculus: Difference between revisions

Line 150: Line 150:


<math>
<math>
\def\show{\mathsf{show}~}
\def\match{\mathsf{match}~}
\def\seq{\mathrel{;}}
\def\seq{\mathrel{;}}
\def\succeed{\textbf{0}}
\def\alt{\mid}
\def\fail{\textbf{fail}}
\def\pipe{\rhd}
\def\pipe{\rhd}
\def\sync{\mathsf{sync}~}
\def\null{\textbf{0}}
\def\fail{\textbf{fail}}
\def\pass{\textbf{pass}}
\def\pass{\textbf{pass}}
\def\pto{\mathrel{\to\mkern-18mu\vcenter{\hbox{$\scriptscriptstyle|$}\mkern11mu}}}
\def\pto{\mathrel{\to\mkern-18mu\vcenter{\hbox{$\scriptscriptstyle|$}\mkern11mu}}}
\def\nto{\to}
\def\nto{\to}
\def\eq{ = ~}
\def\rule{ ::= ~}
</math>
</math>
Sequential composition is associative. <math>\null</math> is its neutral element.
Sequential composition is associative. <math>\succeed</math> is its neutral element.


<math>
<math>
\begin{align}
\begin{align}
s \seq (t \seq u) = & ~(s \seq t) \seq u  \\
s \seq (t \seq u) = & ~(s \seq t) \seq u  \\
s \seq \null = & ~\null \seq s = ~s \\
s \seq \succeed = & ~\succeed \seq s = ~s \\
\end{align}
\end{align}
</math>
</math>
Line 172: Line 176:
<math>
<math>
\begin{align}
\begin{align}
s \mid t = & ~t \mid s \\
s \alt t = & ~t \alt s \\
s \mid (t \mid u) = & ~(s \mid t) \mid u  \\
s \alt (t \alt u) = & ~(s \alt t) \alt u  \\
s \mid s = & ~s \\
s \alt s = & ~s \\
s \mid \fail = & ~s \\
s \alt \fail = & ~s \\
\end{align}
\end{align}
</math>
</math>
Line 183: Line 187:
<math>
<math>
\begin{align}
\begin{align}
(s \mid t) \seq u = & ~s \seq u \mid t \seq u  
(s \alt t) \seq u = & ~s \seq u \alt t \seq u  
\end{align}
\end{align}
</math>
</math>
283

edits