🤖 AI Summary
This work addresses the absence of a causal stream semantics in symmetric monoidal categories equipped with a monad. We introduce *monoidal streams*, a novel categorical structure providing a unified semantic framework for process theories based on such categories. Methodologically, we (i) give the first coinductive definition of monoidal streams; (ii) generalize classical Cartesian stream semantics to arbitrary symmetric monoidal categories with a monad; and (iii) construct a category of monoidal streams endowed with a feedback operator, augmented by a coinductive string diagram calculus for formal reasoning about feedback systems. Our principal contributions are: (i) establishing a rigorous categorical semantics for stochastic dataflow languages; (ii) unifying purely functional and probabilistic processes within a single compositional model; and (iii) enabling graphical, verifiable reasoning about feedback systems—including signal flow graphs—via the introduced string diagrammatic syntax and its coinductive semantics.
📝 Abstract
We introduce monoidal streams. Monoidal streams are a generalization of causal stream functions, which can be defined in cartesian monoidal categories, to arbitrary symmetric monoidal categories. In the same way that streams provide semantics to dataflow programming with pure functions, monoidal streams provide semantics to dataflow programming with theories of processes represented by a symmetric monoidal category. Monoidal streams also form a feedback monoidal category. In the same way that we can use a coinductive stream calculus to reason about signal flow graphs, we can use coinductive string diagrams to reason about feedback monoidal categories. As an example, we study syntax for a stochastic dataflow language, with semantics in stochastic monoidal streams.