From Partial to Monadic: Combinatory Algebra with Effects
By: Liron Cohen , Ariel Grunfeld , Dominik Kirst and more
Potential Business Impact:
Computers can now do more complex tasks.
Partial Combinatory Algebras (PCAs) provide a foundational model of the untyped $\lambda$-calculus and serve as the basis for many notions of computability, such as realizability theory. However, PCAs support a very limited notion of computation by only incorporating non-termination as a computational effect. To provide a framework that better internalizes a wide range of computational effects, this paper puts forward the notion of Monadic Combinatory Algebras (MCAs). MCAs generalize the notion of PCAs by structuring the combinatory algebra over an underlying computational effect, embodied by a monad. We show that MCAs can support various side effects through the underlying monad, such as non-determinism, stateful computation and continuations. We further obtain a categorical characterization of MCAs within Freyd Categories, following a similar connection for PCAs. Moreover, we explore the application of MCAs in realizability theory, presenting constructions of effectful realizability triposes and assemblies derived through evidenced frames, thereby generalizing traditional PCA-based realizability semantics. The monadic generalization of the foundational notion of PCAs provides a comprehensive and powerful framework for internally reasoning about effectful computations, paving the path to a more encompassing study of computation and its relationship with realizability models and programming languages.
Similar Papers
Universal Algebra and Effectful Computation
Programming Languages
Makes computer code with side effects easier to understand.
Monadic type-and-effect soundness
Programming Languages
Makes computer code safer and more predictable.
A Coalgebraic Model of Quantum Bisimulation
Logic in Computer Science
Makes quantum computers work together safely.