Reversible effects as inverse arrows

05/22/2018
by   Chris Heunen, et al.
0

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.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
05/20/2021

Join inverse rig categories for reversible functional programming, and beyond

Reversible computing is a computational paradigm in which computations a...
research
07/26/2021

Quantum Information Effects

We study the two dual quantum information effects to manipulate the amou...
research
06/13/2022

The ℵ-Calculus: A declarative model of reversible programming

A novel model of reversible computing, the ℵ-calculus, is introduced. It...
research
09/13/2021

Categorical Semantics of Reversible Pattern-Matching

This paper is concerned with categorical structures for reversible compu...
research
10/15/2019

Reversible cyclic codes over F_q + u F_q

Let q be a power of a prime p. In this paper, we study reversible cyclic...
research
11/08/2018

Embracing the Laws of Physics: Three Reversible Models of Computation

Our main models of computation (the Turing Machine and the RAM) make fun...
research
08/04/2021

Acyclic and Cyclic Reversing Computations in Petri Nets

Reversible computations constitute an unconventional form of computing w...

Please sign up or login with your details

Forgot password? Click here to reset