Abstract
A reversible Turing machine (RTM) is a standard model of reversible computing that reflects physical reversibility. So far, to describe an RTM the quadruple formulation and the quintuple formulation have been used. In this paper, we propose the program form as a new formulation for RTMs. There, an RTM is described by a sequence of only five kinds of instructions. It is shown that any RTM in the quintuple form is converted to an RTM in the program form, and vice versa. We also show each instruction is implemented by a particular reversible logic element with memory called a rotary element (RE) very simply. Hence, a circuit that simulates a given RTM is easily and systematically constructed out of REs.
Similar content being viewed by others
References
Angluin, D.: Inference of reversible languages. J. ACM 29, 741–765 (1982). https://doi.org/10.1145/322326.322334
Bennett, C.H.: Logical reversibility of computation. IBM J. Res. Dev. 17, 525–532 (1973). https://doi.org/10.1147/rd.176.0525
Fredkin, E., Toffoli, T.: Conservative logic. Int. J. Theor. Phys. 21, 219–253 (1982). https://doi.org/10.1007/BF01857727
Holzer, M., Kutrib, M.: Reversible nondeterministic finite automata. In: Phillips, I., Rahaman, H. (eds.) Proc. RC 2017. LNCS 10301, pp. 35–51 (1968). https://doi.org/10.1007/978-3-319-59936-6_3
Kutrib, M.: Aspects of reversibility for classical automata. In: Calude, C.S., et al. (eds.) Computing with New Resources. LNCS 8808, pp. 83–98 (2014). https://doi.org/10.1007/978-3-319-13350-8_7
Kutrib, M., Malcher, A.: Reversible pushdown automata. J. Comput. Syst. Sci. 78, 1814–1827 (2012). https://doi.org/10.1016/j.jcss.2011.12.004
Kutrib, M., Malcher, A.: One-way reversible multi-head finite automata. Theor. Comput. Sci. 682, 149–164 (2017)
Lecerf, Y.: Machines de Turing réversibles – récursive insolubilité en \(n\in { N}\) de l’équation \(u = \theta ^nu\), où \(\theta \) est un isomorphisme de codes. Comptes Rendus Hebdomadaires des Séances de L’académie des Sciences 257, 2597–2600 (1963)
Lee, C.Y.: Synthesis of a cellular computer. In: Tau, J.T. (ed.) Applied Automata Theory, pp. 217–235. Academic Press, New York (1968)
Margolus, N.: Physics-like model of computation. Physica D 10, 81–95 (1984). https://doi.org/10.1016/0167-2789(84)90252-5
Morita, K.: A simple reversible logic element and cellular automata for reversible computing. In: Margenstern, M., Rogozhin, Y. (eds.) Proc. MCU 2001. LNCS 2055, pp. 102–113 (2001). https://doi.org/10.1007/3-540-45132-3_6
Morita, K.: A deterministic two-way multi-head finite automaton can be converted into a reversible one with the same number of heads. In: Glück, R., Yokoyama, T. (eds.) Proc. RC 2012. LNCS 7581, pp. 29–43 (2013). https://doi.org/10.1007/978-3-642-36315-3_3
Morita, K.: Constructing reversible Turing machines by reversible logic element with memory. In: Adamatzky, A. (ed.) Automata, Universality, Computation, pp. 127–138. Springer (2015). https://doi.org/10.1007/978-3-319-09039-9_6. Slides with figures of computer simulation: Hiroshima University Institutional Repository, http://ir.lib.hiroshima-u.ac.jp/00029224
Morita, K.: Theory of Reversible Computing. Springer, Tokyo (2017). https://doi.org/10.1007/978-4-431-56606-9
Morita, K., Ogiro, T., Alhazov, A., Tanizawa, T.: Non-degenerate 2-state reversible logic elements with three or more symbols are all universal. J. Mult. Valued Log. Soft Comput. 18, 37–54 (2012)
Morita, K., Shirasaki, A., Gono, Y.: A 1-tape 2-symbol reversible Turing machine. Trans. IEICE Jpn. E–72, 223–228 (1989)
Morita, K., Suyama, R.: Compact realization of reversible Turing machines by 2-state reversible logic elements. In: Ibarra, O.H., Kari, L., Kopecki, S. (eds.) Proc. UCNC 2014. LNCS 8553, pp. 280–292 (2014). https://doi.org/10.1007/978-3-319-08123-6_23
Morita, K., Yamaguchi, Y.: A universal reversible Turing machine. In: Durand-Lose, J.O., Margenstern, M. (eds.) Proc. MCU 2007. LNCS 4664, pp. 90–98 (2007). https://doi.org/10.1007/978-3-540-74593-8_8
Neary, T., Woods, D., Murphy, N., Glaschick, R.: Wang’s B machines are efficiently universal, as is Hasenjaeger’s small universal electromechanical toy. J. Complex. 30, 634–646 (2014). https://doi.org/10.1016/j.jco.2014.02.003
Pin, J.E.: On reversible automata. In: Simon, I. (ed.) Proc. LATIN ’92. LNCS 583, pp. 401–416 (1992). https://doi.org/10.1007/BFb0023844
Rogozhin, Y.: Universal computations. In: Matematicheskie Voposy Kibernetiki, No. 8, Moscow, pp. 147–190 (1999) (in Russian)
Toffoli, T.: Computation and construction universality of reversible cellular automata. J. Comput. Syst. Sci. 15, 213–231 (1977). https://doi.org/10.1016/S0022-0000(77)80007-X
Toffoli, T.: Reversible computing. In: de Bakker, J.W., van Leeuwen, J. (eds.) Automata, Languages and Programming. LNCS 85, pp. 632–644 (1980). https://doi.org/10.1007/3-540-10003-2_104
Trevorrow, A., Rokicki, T., Hutton, T., et al.: Golly: an open source, cross-platform application for exploring Conway’s Game of Life and other cellular automata. http://golly.sourceforge.net/ (2005). Accessed 2 Oct 2020
Wang, H.: A variant to Turing’s theory of computing machines. J. ACM 4, 63–92 (1957). https://doi.org/10.1145/320856.320867
Acknowledgements
The author expresses his thanks to the reviewers for their valuable comments.
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Electronic supplementary material
Below is the link to the electronic supplementary material.
Supplementary material 1 (mp4 21090 KB)
Rights and permissions
About this article
Cite this article
Morita, K. An instruction set for reversible Turing machines. Acta Informatica 58, 377–396 (2021). https://doi.org/10.1007/s00236-020-00388-1
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00236-020-00388-1