We study various operations for partitioning, projecting and merging streams of data. These operations are motivated by their use in dataflow programming and the stream processing languages. We use the framework of \emph{stream calculus} and \emph{stream circuits} for defining and proving properties of such operations using behavioural differential equations and coinduction proof principles. We study the invariance of certain well patterned classes of streams, namely rational and algebraic streams, under splitting and merging. Finally we show that stream circuits extended with gates for dyadic split and merge are expressive enough to realise some non-rational algebraic streams, thereby going beyond ordinary stream circuits.

C. Bolduc , J. Desharnais , B. Ktari
Lecture Notes in Computer Science
Mending the Unending: Machine Assisted Reasoning with Infinite Objects
International Conference on Mathematics of Program Construction
Computer Security

Niqui, M, & Rutten, J.J.M.M. (2010). Sampling, Splitting and Merging in Coinductive Stream Calculus. In C Bolduc, J Desharnais, & B Ktari (Eds.), Proceedings of International Conference on Mathematics of Program Construction 2010 (10) (pp. 310–330). Springer.