# Design of Reversible Computing Systems Logic , Languages , and Circuits

@inproceedings{Care2012DesignOR, title={Design of Reversible Computing Systems Logic , Languages , and Circuits}, author={Michael Kirkedal Car{\o}e}, year={2012} }

Reversible computing spans computational models that are both forward and backward deterministic. These models have applications in program inversion and bidirectional computing, and are also interesting as a study of theoretical properties. The motivation for reversible computing comes, however, often from the fact that these models are information preserving. Landauer’s principle links information theory and thermodynamics; all information has some physical representation, so a loss of…

## Figures from this paper

## One Citation

Design and Implementation of a Reversible Object-Oriented Programming Language

- Computer ScienceArXiv
- 2017

The first reversible object-oriented programming language, ROOPL, is introduced, with support for user-defined data types, class inheritance and subtype-polymorphism, and the results indicate that core language features for object- oriented programming carries over to the field of reversible computing in some capacity.

## References

SHOWING 1-10 OF 185 REFERENCES

What Do Reversible Programs Compute?

- Computer ScienceFoSSaCS
- 2011

This work provides a novel semantics-based approach to such a theory of reversible computing, using reversible Turing machines (RTMs) as the underlying computation model, and proposes r-Turing completeness as the 'gold standard' for computability in reversible computation models.

Reversibility for efficient computing

- Computer Science
- 1999

This thesis gives the first analysis demonstrating that in a realistic model of computation that accounts for thermodynamic issues, as well as other physical constraints, the judicious use of reversible computing can strictly increase asymptotic computational efficiency, as machine sizes increase.

Reversible computing and cellular automata - A survey

- Computer ScienceTheor. Comput. Sci.
- 2008

This survey/tutorial paper discusses how computation can be carried out in a reversible system, how a universal reversible computer can be constructed by reversible logic elements, and how such logic elements are related to reversible physical phenomena.

Logical reversibility of computation

- Computer Science
- 1973

This result makes plausible the existence of thermodynamically reversible computers which could perform useful computations at useful speed while dissipating considerably less than kT of energy per logical step.

A functional language for describing reversible logic

- Computer ScienceProceeding of the 2012 Forum on Specification and Design Languages
- 2012

A novel functional language that is designed to describe only reversible logic circuits is presented, which includes high-level constructs such as conditionals and a let-in statement that can be used to locally change wires that are otherwise considered to be constant.

Conservative logic

- 1982

Conservative logic is a comprehensive model of computation which explicitly reflects a number of fundamental principles of physics, such as the reversibility of the dynamical laws and the…

An Injective Language for Reversible Computation

- Computer ScienceMPC
- 2004

This paper presents a point-free functional language, with a relational semantics, in which the programmer is allowed to define injective functions only and non-injective functions can be transformed into a program returning a history.

Reversible computer engineering and architecture

- Computer Science
- 1999

The primary contributions of this thesis are the discoveries about how to design and build reversible switching circuits, including memory and control structures, and notational inventions that ease reversible system design, and the architectural innovations brought about by the development of the Pendulum reversible processor.

Principles of a reversible programming language

- Computer ScienceCF '08
- 2008

The clean simulation of reversible Turing machines as a criterion for computing strength of reversible languages is suggested and demonstrated, and the results indicate that the reversible programming paradigm has fundamental properties that are relevant to many different areas of computer science.

Isomorphic Interpreters from Logically Reversible Abstract Machines

- Computer ScienceRC
- 2012

This paper presents a systematic technique for developing a large and expressive class of reversible recursive programs, that of logically reversible small-step abstract machines, and develops several simple interpreters over numbers and addition, move on to tree traversals, and finish with a meta-circular interpreter for the reversible language.