A functional language for describing reversible logic

Publikation: Bidrag til bog/antologi/rapportKonferencebidrag i proceedingsForskningfagfællebedømt

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.
OriginalsprogEngelsk
TitelProceedings of the 2012 Forum on Specification and Design Languages
RedaktørerAdam Morawiec, Jinnie Hinderscheit
Antal sider8
ForlagIEEE
Publikationsdato2012
Sider135-142
ISBN (Trykt)978-1-4673-1240-0
ISBN (Elektronisk)978-2-9530504-5-5
StatusUdgivet - 2012
Begivenhed2012 Forum on specification & Design Languages - Vienna, Østrig
Varighed: 18 sep. 201220 sep. 2012

Konference

Konference2012 Forum on specification & Design Languages
LandØstrig
ByVienna
Periode18/09/201220/09/2012

ID: 40367802