Who invented reversible computing?
The credit should be shared. [Landauer ’61] was the first to describe what we call the Landauer embedding, which is the naive technique for transforming irreversible computations into equivalent reversible ones, but he thought his machines could not reversibly get rid of their undo trails. [Lecerf ’63] first described reversible Turing machines in formal detail, and invented Lecerf reversal technique to uncompute histories, but he was unaware of the thermodynamic applications, and his machines did not save their outputs, so were not very useful. [Bennett ’73] reinvented Lecerf reversal and added the Bennett trick of copying the output before uncomputing the undo trail, thereby proving for the first time that reversible computations could avoid entropy generation. Fredkin [Fredkin & Toffoli ’78] reinvented reversible computing in the form of conservative logic circuits, and proved they were universal. Toffoli [Toffoli ’80] invented the Toffoli gate (also called the controlled-controlled