INTRODUCTION
Reversible computing [1] [2] [3] [4] [5] [6] is useful both in low-power classical computing and in quantum computing. According to the Landauer theorem, the only way to make classical digital computing lossless, is by taking care that at each stage of the computation, no information is lost. Indeed, each bit of information that is thrown away, causes the generation of a small amount of heat (with magnitude kT log(2), where is the Boltzmann constant and the temperature of the computer hardware).