Reversible flowchart languages and the structured reversible program theorem

Research output: Chapter in Book/Report/Conference proceedingArticle in proceedingsResearchpeer-review

Many irreversible computation models have reversible counterparts, but these are poorly understood at present. We introduce reversible flowcharts with an assertion operator and show that any reversible flowchart can be simulated by a structured reversible flowchart using only three control flow operators. Reversible flowcharts are r- Turing-complete, meaning that they can simuluate reversible Turing machines without garbage data. We also demonstrate the injectivization of classical flowcharts into reversible flowcharts. The reversible flowchart computation model provides a theoretical justification for low-level machine code for reversible microprocessors as well as high-level block-structured reversible languages. We give examples for both such languages and illustrate them with a lossless encoder for permutations given by Dijkstra.
Original languageEnglish
Title of host publicationAutomata, Languages and Programming : 35th International colloquium, ICALP 2008, Reykjavik, Iceland, July 7-11, 2008, Proceedings. Part II
EditorsL. Aceto, I. Damgaard, L. A. Goldberg, M. M. Halldorsson, A. Ingolfsdottir, I. Walukiewicz
PublisherSpringer
Publication date2008
Pages258-270
DOIs
Publication statusPublished - 2008
EventInternational Colloquium on Automata, Languages and Programming 2008 - Reykjavik, Iceland
Duration: 7 Jul 200811 Jul 2008
Conference number: 35

Conference

ConferenceInternational Colloquium on Automata, Languages and Programming 2008
Nummer35
LandIceland
ByReykjavik
Periode07/07/200811/07/2008
SeriesLecture notes in computer science
Number5126
ISSN0302-9743

ID: 6363159