A Procedure for Splitting Processes and its Application to Coordination
Sung-Shik T. Q. Jongmans, Dave Clarke, Jos\'e Proen\c{c}a

TL;DR
This paper introduces a process splitting procedure in process algebra that separates processes along specific actions, enabling formal verification and performance improvements in coordination languages like Reo.
Contribution
It presents a novel splitting procedure with a proven theorem, applied to Reo, to enhance connector performance and facilitate formal analysis.
Findings
The splitting procedure preserves process semantics under parallel composition.
Applied to Reo, it formally verifies the soundness of connector boundary splitting.
Splitting can lead to significant performance improvements in Reo connectors.
Abstract
We present a procedure for splitting processes in a process algebra with multi-actions (a subset of the specification language mCRL2). This splitting procedure cuts a process into two processes along a set of actions A: roughly, one of these processes contains no actions from A, while the other process contains only actions from A. We state and prove a theorem asserting that the parallel composition of these two processes equals the original process under appropriate synchronization. We apply our splitting procedure to the process algebraic semantics of the coordination language Reo: using this procedure and its related theorem, we formally establish the soundness of splitting Reo connectors along the boundaries of their (a)synchronous regions in implementations of Reo. Such splitting can significantly improve the performance of connectors.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
