Abstract
We review combinational results to enumerate and classify reversible functions and investigate the application to circuit complexity. In particularly, we consider the effect of negating and permuting input and output variables and the effect of applying linear and affine transformations to inputs and outputs. We apply the results to reversible circuits and prove that minimum circuit realizations of functions in the same equivalence class differ at most in a linear number of gates in presence of negation and permutation and at most in a quadratic number of gates in presence of linear and affine transformations.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Andrews, G.E.: The Theory of Partitions. Cambridge University Press, Cambridge (1984)
Ashenhurst, R.L.: The application of counting techniques. In: Proceedings of the ACM National Meeting, pp. 293–305 (1952)
Beth, T., Rötteler, M.: Quantum algorithms: applicable algebra and quantum physics. In: Springer Tracts in Modern Physics, vol. 173, pp. 96–150 (2001)
De Bruijn, N.G.: Generalization of Pólya’s fundamental theorem in enumerative combinational analysis. Konikl. Nederl. Akademie Van Wetenschappen A 52(2), 59–69 (1959)
Draper, T.G.: Nonlinear complexity of Boolean permutations. Ph.D. thesis, University of Maryland (2009)
Golubitsky, O., Maslov, D.: A study of optimal 4-bit reversible toffoli circuits and their synthesis. IEEE Trans. Comput. 61(9), 1341–1353 (2012)
Harrison, M.A.: Combinational problems in Boolean algebras and applications to the theory of switching. Ph.D. thesis, University of Michigan (1963)
Harrison, M.A.: The number of classes of invertible Boolean functions. J. ACM 10(1), 25–28 (1963)
Harrison, M.A.: The number of equivalence classes of Boolean functions under groups containing negation. IEEE Trans. Electron. Comput. 12, 559–561 (1963)
Harrison, M.A.: The number of transitivity sets of Boolean functions. J. Soc. Appl. Ind. Math. 11, 806–828 (1963)
Harrison, M.A.: On the classification of Boolean functions by the general linear and affine groups. J. Soc. Appl. Ind. Math. 12, 285–299 (1964)
Lorens, C.S.: Invertible Boolean functions. Technical report 21, Space-General Corporation, El Monte, California, Research Memorandum (1962)
Lorens, C.S.: Invertible Boolean functions. IEEE Trans. Electron. Comput. 13, 529–541 (1964)
Pólya, G.: Kombinatorische Anzahlbestimmungen für Gruppen, Graphen und Chemische Verbindungen. Acta Math. 68, 145–253 (1937)
Primenko, É.A.: Equivalence classes of invertible Boolean functions. Cybernetics 20(6), 771–776 (1984)
Slepian, D.: On the number of symmetry types of Boolean functions of \(n\) variables. Can. J. Math. 5, 185–193 (1953)
Soeken, M., Thomsen, M.K.: White dots do matter: rewriting reversible logic circuits. In: International Conference on Reversible Computation, pp. 196–208 (2013)
Toffoli, T.: Reversible computing. In: de Bakker, J.W., van Leeuwen, J. (eds.) ICALP 1980. LNCS, vol. 85, pp. 632–644. Springer, Heidelberg (1980)
Vatan, F., Williams, C.: Optimal quantum circuits for general two-qubit gates. Phys. Rev. A 69, 032315-1–032315-5 (2004)
Acknowledgments
This research was supported by H2020-ERC-2014-ADG 669354 CyberCare and by the European COST Action IC 1405 ‘Reversible Computation’.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2016 Springer International Publishing Switzerland
About this paper
Cite this paper
Soeken, M., Abdessaied, N., De Micheli, G. (2016). Enumeration of Reversible Functions and Its Application to Circuit Complexity. In: Devitt, S., Lanese, I. (eds) Reversible Computation. RC 2016. Lecture Notes in Computer Science(), vol 9720. Springer, Cham. https://doi.org/10.1007/978-3-319-40578-0_19
Download citation
DOI: https://doi.org/10.1007/978-3-319-40578-0_19
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-40577-3
Online ISBN: 978-3-319-40578-0
eBook Packages: Computer ScienceComputer Science (R0)