The Logic of Reversible Computing: Theory and Practice

Publikation: Bog/antologi/afhandling/rapportPh.d.-afhandlingForskning

Standard

The Logic of Reversible Computing : Theory and Practice. / Kaarsgaard, Robin.

Department of Computer Science, Faculty of Science, University of Copenhagen, 2017.

Publikation: Bog/antologi/afhandling/rapportPh.d.-afhandlingForskning

Harvard

Kaarsgaard, R 2017, The Logic of Reversible Computing: Theory and Practice. Department of Computer Science, Faculty of Science, University of Copenhagen. <https://soeg.kb.dk/permalink/45KBDK_KGL/1pioq0f/alma99122355092605763>

APA

Kaarsgaard, R. (2017). The Logic of Reversible Computing: Theory and Practice. Department of Computer Science, Faculty of Science, University of Copenhagen. https://soeg.kb.dk/permalink/45KBDK_KGL/1pioq0f/alma99122355092605763

Vancouver

Kaarsgaard R. The Logic of Reversible Computing: Theory and Practice. Department of Computer Science, Faculty of Science, University of Copenhagen, 2017.

Author

Kaarsgaard, Robin. / The Logic of Reversible Computing : Theory and Practice. Department of Computer Science, Faculty of Science, University of Copenhagen, 2017.

Bibtex

@phdthesis{34dd786af4664dc488096b0f9ae47b55,
title = "The Logic of Reversible Computing: Theory and Practice",
abstract = "Reversible computing is the study of models of computation that exhibit both forward andbackward determinism. While reversible computing initially gained interest through itspotential to reduce the energy consumption of computing machinery, via a result fromphysics now known as Landauer{\textquoteright}s principle, a number of other applications in computerscience have since been proposed, from syntax descriptions to model-based testing, debugging,and even robotics.In spite of its numerous current (and potential future) applications, the establishedfoundations for computation and programming, such as Turing machines, -calculi, andvarious categorical models, are largely ill equipped to handle reversible computing, as theseoften tacitly rely on irreversible operations to function. To set reversible computing ona foundation as solid as the one for conventional computing requires both a significantadaptation of existing techniques and the development of new ones.In this thesis, we investigate reversible computing from a perspective of logic, broadlyconstrued. To complement the operational point of view from which reversible computingis often studied, we offer a denotational account of reversibility in computation based onrecent work in category theory. We propose two new techniques, founded in formal logic,for reasoning about reversible logic circuits. Further, we account for the behaviour of fixedpoints in certain proposed categorical models of reversible computing, and connect theseresults to the behaviour of recursive functions and data types in established reversible programminglanguages. In an application and extension of some of these results, we proposea uniform categorical foundation for a large class of reversible imperative programminglanguages known as structured reversible flowchart languages. We investigate the role of reversibleeffects in reversible functional programming, and show that a wide palette of thesemay be modelled as arrows (in the sense of Hughes) satisfying certain additional equations.Finally, we propose a brief vision for the future of the reversible functional programminglanguage Rfun.",
author = "Robin Kaarsgaard",
year = "2017",
language = "English",
publisher = "Department of Computer Science, Faculty of Science, University of Copenhagen",

}

RIS

TY - BOOK

T1 - The Logic of Reversible Computing

T2 - Theory and Practice

AU - Kaarsgaard, Robin

PY - 2017

Y1 - 2017

N2 - Reversible computing is the study of models of computation that exhibit both forward andbackward determinism. While reversible computing initially gained interest through itspotential to reduce the energy consumption of computing machinery, via a result fromphysics now known as Landauer’s principle, a number of other applications in computerscience have since been proposed, from syntax descriptions to model-based testing, debugging,and even robotics.In spite of its numerous current (and potential future) applications, the establishedfoundations for computation and programming, such as Turing machines, -calculi, andvarious categorical models, are largely ill equipped to handle reversible computing, as theseoften tacitly rely on irreversible operations to function. To set reversible computing ona foundation as solid as the one for conventional computing requires both a significantadaptation of existing techniques and the development of new ones.In this thesis, we investigate reversible computing from a perspective of logic, broadlyconstrued. To complement the operational point of view from which reversible computingis often studied, we offer a denotational account of reversibility in computation based onrecent work in category theory. We propose two new techniques, founded in formal logic,for reasoning about reversible logic circuits. Further, we account for the behaviour of fixedpoints in certain proposed categorical models of reversible computing, and connect theseresults to the behaviour of recursive functions and data types in established reversible programminglanguages. In an application and extension of some of these results, we proposea uniform categorical foundation for a large class of reversible imperative programminglanguages known as structured reversible flowchart languages. We investigate the role of reversibleeffects in reversible functional programming, and show that a wide palette of thesemay be modelled as arrows (in the sense of Hughes) satisfying certain additional equations.Finally, we propose a brief vision for the future of the reversible functional programminglanguage Rfun.

AB - Reversible computing is the study of models of computation that exhibit both forward andbackward determinism. While reversible computing initially gained interest through itspotential to reduce the energy consumption of computing machinery, via a result fromphysics now known as Landauer’s principle, a number of other applications in computerscience have since been proposed, from syntax descriptions to model-based testing, debugging,and even robotics.In spite of its numerous current (and potential future) applications, the establishedfoundations for computation and programming, such as Turing machines, -calculi, andvarious categorical models, are largely ill equipped to handle reversible computing, as theseoften tacitly rely on irreversible operations to function. To set reversible computing ona foundation as solid as the one for conventional computing requires both a significantadaptation of existing techniques and the development of new ones.In this thesis, we investigate reversible computing from a perspective of logic, broadlyconstrued. To complement the operational point of view from which reversible computingis often studied, we offer a denotational account of reversibility in computation based onrecent work in category theory. We propose two new techniques, founded in formal logic,for reasoning about reversible logic circuits. Further, we account for the behaviour of fixedpoints in certain proposed categorical models of reversible computing, and connect theseresults to the behaviour of recursive functions and data types in established reversible programminglanguages. In an application and extension of some of these results, we proposea uniform categorical foundation for a large class of reversible imperative programminglanguages known as structured reversible flowchart languages. We investigate the role of reversibleeffects in reversible functional programming, and show that a wide palette of thesemay be modelled as arrows (in the sense of Hughes) satisfying certain additional equations.Finally, we propose a brief vision for the future of the reversible functional programminglanguage Rfun.

UR - https://soeg.kb.dk/permalink/45KBDK_KGL/1pioq0f/alma99122355092605763

M3 - Ph.D. thesis

BT - The Logic of Reversible Computing

PB - Department of Computer Science, Faculty of Science, University of Copenhagen

ER -

ID: 200383025