What Computing is all About
Combinators for bidirectional tree transformations: A linguistic approach to the view-update problem
ACM Transactions on Programming Languages and Systems (TOPLAS) - Special issue on POPL 2005
Reversible computing and cellular automata—A survey
Theoretical Computer Science
Principles of a reversible programming language
Proceedings of the 5th conference on Computing frontiers
Reversible Flowchart Languages and the Structured Reversible Program Theorem
ICALP '08 Proceedings of the 35th international colloquium on Automata, Languages and Programming, Part II
Irreversibility and heat generation in the computing process
IBM Journal of Research and Development
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
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
LATA'10 Proceedings of the 4th international conference on Language and Automata Theory and Applications
Reversible machine code and its abstract processor architecture
CSR'07 Proceedings of the Second international conference on Computer Science: theory and applications
Time complexity of tape reduction for reversible turing machines
RC'11 Proceedings of the Third international conference on Reversible Computation
A reversible processor architecture and its reversible logic design
RC'11 Proceedings of the Third international conference on Reversible Computation
Reversible multi-head finite automata characterize reversible logarithmic space
LATA'12 Proceedings of the 6th international conference on Language and Automata Theory and Applications
RC'13 Proceedings of the 5th international conference on Reversible Computation
Hi-index | 0.00 |
We construct a universal reversible Turing machine (URTM) from first principles. We take a strict approach to the semantics of reversible Turing machines (RTMs), under which they can compute exactly all injective, computable functions, but not non-injective ones. The natural notion of universality for RTMs is RTM-universality, where programs are considered part of both input and output of a URTM. The machine described here is the first URTM which does not depend on reversibilizing any existing universal machine. The interpretive overhead of the URTM is limited to a (program dependent) constant factor slowdown, with no other complexity-wise cost wrt time and space. The URTM is also able to function as an inverse interpreter for RTMs at no asymptotic cost, simply by reversing the string representing the interpreted machine.