Reversible Effects as Inverse Arrows

Research output: Contribution to journalConference articleResearchpeer-review


  • Chris Heunen
  • Robin Kaarsgaard
  • Martti Karvonen
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.
Original languageEnglish
JournalElectronic Notes in Theoretical Computer Science
Pages (from-to)179-199
Publication statusPublished - 1 Dec 2018
Event34th Conference on the Mathematical Foundations of Programming Semantics - Dalhousie University, Halifax, Canada
Duration: 6 Jun 20189 Jun 2018
Conference number: 34


Conference34th Conference on the Mathematical Foundations of Programming Semantics
LocationDalhousie University
Internet address

    Research areas

  • Arrow, Inverse Category, Involutive Monoid, Reversible Effect

Number of downloads are based on statistics from Google Scholar and

No data available

ID: 211215598