6 research outputs found
Reversible Effects as Inverse Arrows
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.Comment: 15 pages; corrected Example 3.
Reversible Computation: Extending Horizons of Computing
This open access State-of-the-Art Survey presents the main recent scientific outcomes in the area of reversible computation, focusing on those that have emerged during COST Action IC1405 "Reversible Computation - Extending Horizons of Computing", a European research network that operated from May 2015 to April 2019. Reversible computation is a new paradigm that extends the traditional forwards-only mode of computation with the ability to execute in reverse, so that computation can run backwards as easily and naturally as forwards. It aims to deliver novel computing devices and software, and to enhance existing systems by equipping them with reversibility. There are many potential applications of reversible computation, including languages and software tools for reliable and recovery-oriented distributed systems and revolutionary reversible logic gates and circuits, but they can only be realized and have lasting effect if conceptual and firm theoretical foundations are established first
Reversible Computation: Extending Horizons of Computing
This open access State-of-the-Art Survey presents the main recent scientific outcomes in the area of reversible computation, focusing on those that have emerged during COST Action IC1405 "Reversible Computation - Extending Horizons of Computing", a European research network that operated from May 2015 to April 2019. Reversible computation is a new paradigm that extends the traditional forwards-only mode of computation with the ability to execute in reverse, so that computation can run backwards as easily and naturally as forwards. It aims to deliver novel computing devices and software, and to enhance existing systems by equipping them with reversibility. There are many potential applications of reversible computation, including languages and software tools for reliable and recovery-oriented distributed systems and revolutionary reversible logic gates and circuits, but they can only be realized and have lasting effect if conceptual and firm theoretical foundations are established first
Way of the dagger
A dagger category is a category equipped with a functorial way of reversing morphisms,
i.e. a contravariant involutive identity-on-objects endofunctor. Dagger categories
with additional structure have been studied under different names in categorical
quantum mechanics, algebraic field theory and homological algebra, amongst others.
In this thesis we study the dagger in its own right and show how basic category theory
adapts to dagger categories.
We develop a notion of a dagger limit that we show is suitable in the following
ways: it subsumes special cases known from the literature; dagger limits are unique
up to unitary isomorphism; a wide class of dagger limits can be built from a small
selection of them; dagger limits of a fixed shape can be phrased as dagger adjoints to
a diagonal functor; dagger limits can be built from ordinary limits in the presence of
polar decomposition; dagger limits commute with dagger colimits in many cases.
Using cofree dagger categories, the theory of dagger limits can be leveraged to
provide an enrichment-free understanding of limit-colimit coincidences in ordinary
category theory. We formalize the concept of an ambilimit, and show that it captures
known cases. As a special case, we show how to define biproducts up to isomorphism
in an arbitrary category without assuming any enrichment. Moreover, the limit-colimit
coincidence from domain theory can be generalized to the unenriched setting and we
show that, under suitable assumptions, a wide class of endofunctors has canonical fixed
points.
The theory of monads on dagger categories works best when all structure respects
the dagger: the monad and adjunctions should preserve the dagger, and the monad and
its algebras should satisfy the so-called Frobenius law. Then any monad resolves as an
adjunction, with extremal solutions given by the categories of Kleisli and Frobenius-
Eilenberg-Moore algebras, which again have a dagger.
We use dagger categories to study reversible computing. Specifically, 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