Time/space trade-offs for reversible computation
SIAM Journal on Computing
Böhm and Jacopini's reduction of flow charts
Communications of the ACM
Flow diagrams, turing machines and languages with only two formation rules
Communications of the ACM
Introduction to Mathematical Theory of Computation
Introduction to Mathematical Theory of Computation
An Introduction to Online and Offline Partial Evaluation using a Simple Flowchart Language
Partial Evaluation - Practice and Theory, DIKU 1998 International Summer School
Program Construction, International Summer Schoo
Reversibility for efficient computing
Reversibility for efficient computing
Reversible computing: from mathematical group theory to electronical circuit experiment
Proceedings of the 2nd conference on Computing frontiers
Structured programming
A reversible programming language and its invertible self-interpreter
Proceedings of the 2007 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Communications of the ACM - ACM's plan to go online first
Principles of a reversible programming language
Proceedings of the 5th conference on Computing frontiers
Logical reversibility of computation
IBM Journal of Research and Development
A universal reversible turing machine
MCU'07 Proceedings of the 5th international conference on Machines, computations, and universality
Reversible machine code and its abstract processor architecture
CSR'07 Proceedings of the Second international conference on Computer Science: theory and applications
Bidirectional Transformations: A Cross-Discipline Perspective
ICMT '09 Proceedings of the 2nd International Conference on Theory and Practice of Model Transformations
Partial evaluation of the reversible language janus
Proceedings of the 20th ACM SIGPLAN workshop on Partial evaluation and program manipulation
What do reversible programs compute?
FOSSACS'11/ETAPS'11 Proceedings of the 14th international conference on Foundations of software science and computational structures: part of the joint European conferences on theory and practice of software
Clean translation of an imperative reversible programming language
CC'11/ETAPS'11 Proceedings of the 20th international conference on Compiler construction: part of the joint European conferences on theory and practice of software
Dagstuhl seminar on bidirectional transformations (BX)
ACM SIGMOD Record
A simple and efficient universal reversible turing machine
LATA'11 Proceedings of the 5th international conference on Language and automata theory and applications
Reversible multi-head finite automata characterize reversible logarithmic space
LATA'12 Proceedings of the 6th international conference on Language and Automata Theory and Applications
Partial evaluation of janus part 2: assertions and procedures
PSI'11 Proceedings of the 8th international conference on Perspectives of System Informatics
Journal of Computer and System Sciences
Reversible representation and manipulation of constructor terms in the heap
RC'13 Proceedings of the 5th international conference on Reversible Computation
RC'13 Proceedings of the 5th international conference on Reversible Computation
Hi-index | 0.00 |
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 injectivizationof 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.