Abstract
Reversible logic is a computational model where all gates are logically reversible and combined in circuits such that no values are lost or duplicated. This paper presents a novel functional language that is designed to describe only reversible logic circuits. The language 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. Termination of recursion is restricted by size-change termination; it must be guaranteed that all recursive calls will be to a strictly smaller circuit size. Reversibility of descriptions is guaranteed with a type system based on linear types. The language is applied to three examples of reversible computations (ALU, linear cosine transformation, and binary adder).
The paper also outlines a design flow that ensures garbage- free translation to reversible logic circuits. The flow relies on a reversible combinator language as an intermediate language.
The paper also outlines a design flow that ensures garbage- free translation to reversible logic circuits. The flow relies on a reversible combinator language as an intermediate language.
| Original language | English |
|---|---|
| Title of host publication | Proceedings of the 2012 Forum on Specification and Design Languages |
| Editors | Adam Morawiec, Jinnie Hinderscheit |
| Number of pages | 8 |
| Publisher | IEEE |
| Publication date | 2012 |
| Pages | 135-142 |
| ISBN (Print) | 978-1-4673-1240-0 |
| ISBN (Electronic) | 978-2-9530504-5-5 |
| Publication status | Published - 2012 |
| Event | 2012 Forum on specification & Design Languages - Vienna, Austria Duration: 18 Sept 2012 → 20 Sept 2012 |
Conference
| Conference | 2012 Forum on specification & Design Languages |
|---|---|
| Country/Territory | Austria |
| City | Vienna |
| Period | 18/09/2012 → 20/09/2012 |
Cite this
- APA
- Standard
- Harvard
- Vancouver
- Author
- BIBTEX
- RIS