Reversible effects as inverse arrows
Chris Heunen, Robin Kaarsgaard, and Martti Karvonen

TL;DR
This paper introduces a novel framework for modeling reversible effects in computing by adapting arrow-based structures, enabling the representation of side-effects in reversible and quantum computing contexts.
Contribution
It extends Hughes' arrows to dagger and inverse arrows, capturing reversible effects like serialization and mutable store computations within a formal categorical semantics.
Findings
Models reversible effects using dagger and inverse arrows
Provides semantics for reversible programming with side-effects
Supports design of reversible functional programs
Abstract
Reversible computing models settings in which all processes can be reversed. Applications include low-power computing, quantum computing, and robotics. It is unclear how to represent side-effects in this setting, because conventional methods need not respect reversibility. We model reversible effects by adapting Hughes' arrows to dagger arrows and inverse arrows. This captures several fundamental reversible effects, including serialization and mutable store computations. Whereas arrows are monoids in the category of profunctors, dagger arrows are involutive monoids in the category of profunctors, and inverse arrows satisfy certain additional properties. These semantics inform the design of functional reversible programs supporting side-effects.
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.
