Pipe-calculus: Difference between revisions

No edit summary
Line 89: Line 89:
** ''positive literal prefixing'' <math>a^+ \dot s</math> is a process that signals an atom <math>a</math> on its output before proceeding as <math>s</math>.
** ''positive literal prefixing'' <math>a^+ \dot s</math> is a process that signals an atom <math>a</math> on its output before proceeding as <math>s</math>.
* ''sequence'' <math>s \seq t</math> is a composite process that executes <math>s</math> before proceeding as <math>t</math> unless <math>s</math> fails. In that case the composite process also fails.
* ''sequence'' <math>s \seq t</math> is a composite process that executes <math>s</math> before proceeding as <math>t</math> unless <math>s</math> fails. In that case the composite process also fails.
* ''alternatives'' <math>s \alt t</math> is a branching process where one branch executes <math>s</math> while the other branch concurrently executes <math>t</math>. If one of the branches fail, the composite process is replaced by the other branch.
* ''choice'' <math>s \alt t</math> is a forking process where one fork executes <math>s</math> while the other fork concurrently executes <math>t</math>. If one of the forks fail, the composite process is replaced by the other fork.
* ''pipeline'' <math>s \pipe t</math> is a composite process that enforces unidirectional data flow. Input of the composite process is forwarded to the input of <math>s</math>, output of <math>s</math> is connected to the input of <math>t</math> and output of <math>t</math> is forwarded to the output of the composite process.
* ''pipeline'' <math>s \pipe t</math> is a composite process that enforces unidirectional data flow. Input of the composite process is forwarded to the input of <math>s</math>, output of <math>s</math> is connected to the input of <math>t</math> and output of <math>t</math> is forwarded to the output of the composite process.
* <math>\mathsf{succeed}</math> is a process that successfully terminated.
* <math>\mathsf{succeed}</math> is a process that successfully terminated.
* <math>\mathsf{fail}</math> is a process that failed.
* <math>\mathsf{fail}</math> is a process that failed.
* <math>\mathsf{pass}</math> is a passive process that endlessly copies its input to its output.


=== Alternative composition ===
=== Alternative composition ===
283

edits