Reversible Complexity Classes

Time to place reversibility on the master map of computer science — the zoo of complexity classes. We know reversible machines compute everything computable; the open ledger is the resource bill. The trade-off theorems suggested a gloomy folk rule: reversibility taxes you somewhere — pay in space (the history) or pay in time (the recomputation), but pay. This lesson delivers the two headline results, and the second is a genuine shock: for space, the tax turns out to be exactly zero.

Reversible classes, defined

The definitions are the obvious ones. \mathrm{RevTIME}(f) is the class of problems decided by a reversible Turing machine within O(f(n)) steps; \mathrm{RevSPACE}(f) the class decided by a reversible machine touching O(f(n)) tape cells. The interesting question is how these compare with their unrestricted cousins \mathrm{TIME}(f) and \mathrm{DSPACE}(f). One direction is free: every reversible machine is a machine, so \mathrm{RevTIME}(f) \subseteq \mathrm{TIME}(f) and \mathrm{RevSPACE}(f) \subseteq \mathrm{DSPACE}(f). All the drama is in the reverse inclusions.

For time, Bennett's trade-off already answers within a whisker: \mathrm{TIME}(T) \subseteq \mathrm{RevTIME}(T^{1+\varepsilon}) for every \varepsilon > 0. In particular the polynomial world is safe — a polynomial raised to the power 1+\varepsilon is still a polynomial, so reversible P equals P. Whether the slight blow-up can be removed entirely — is \mathrm{RevTIME}(T) = \mathrm{TIME}(T)? — is open, and the pebbling lower bounds make "no" the safe bet.

The shock: reversible space costs nothing

For space, the folk rule predicted a tax of at least a \log T factor — that is what every pebbling strategy pays. In 2000, Lange, McKenzie and Tapp proved the folk rule dead wrong:

How can a simulation possibly avoid the history? By changing the game. A space-S machine has finitely many configurations — at most exponentially many in S. Its step map draws a configuration graph on them, and the run from the start configuration is a path through a component of that graph that funnels into the accepting configuration. The LMT machine never journals this path. Instead it treats the component as territory to be explored: the predecessor relation organises the configurations reachable backwards from the accept configuration into a spanning tree, and a walk that goes "first child, then next sibling, else back to the parent" — an Euler tour, the same trick that lets you trace a maze with your hand on one wall — visits the whole tree deterministically in both directions. Each traversal step is computable from the current configuration alone (simulate neighbours to find your place in the sibling order), so the walk needs no memory beyond the current configuration itself. And a walk that is deterministic forwards and backwards is precisely a reversible computation.

The picture

The figure shows a toy configuration tree rooted at the accepting configuration. First the forward step map, with its information-destroying funnels; then the Euler tour that replaces it — one thread winding around the whole tree, entering and leaving every configuration exactly once in each direction. The thread has in-degree one everywhere, which is reversibility incarnate — and it stores nothing, which is why the space bill is zero. The cost is stark in the picture too: the tour visits every edge twice, and the tree can hold exponentially many configurations, so the walk can take exponential time to find the start configuration and certify acceptance.

The scoreboard

Putting the module's results side by side — this is the state of the art, and the open wound, in three lines:

ResourceResultPrice
Time\mathrm{TIME}(T) \subseteq \mathrm{RevTIME}(T^{1+\varepsilon}) (Bennett 1989)space O(S\log T)
Space\mathrm{RevSPACE}(S) = \mathrm{DSPACE}(S) (LMT 2000)time possibly exponential
Both at onceopen — believed impossible in generalpebbling lower bounds say no strategy of that kind can

Each headline theorem protects one resource by sacrificing the other. Whether some yet-unimagined simulation could preserve time and space simultaneously is the standing open problem of the field; within the pebble-game framework the answer is provably no, so a positive answer would need an idea as fresh as LMT's tour was.

It is dangerously easy to summarise this lesson as "Bennett handled time, LMT handled space — reversibility is essentially free." Look again at the price column. Bennett's near-perfect time comes bundled with a space blow-up to S \log T; LMT's perfect space comes bundled with potentially exponential time. They are two different simulations at opposite corners of the trade-off square, and you cannot run both at once on the same computation. The honest summary: each resource can be protected separately, and protecting both simultaneously is believed impossible. Classes built from a single resource bound (\mathrm{P}, \mathrm{PSPACE}) absorb reversibility without flinching; it is the simultaneous time–space behaviour where reversibility genuinely bites.

The Euler tour's reversibility is worth savouring, because no step of it is stored anywhere. Put your hand on one wall of a maze and walk without ever lifting it: at every junction, the rule "take the next passage clockwise from the one you came in by" determines your move — and, crucially, the rule read backwards ("take the next passage anticlockwise") is equally deterministic. The walk is a bijection on (configuration, direction-of-travel) pairs. That is the whole reversibility proof, in a maze. The LMT machine's genius is doing this on a tree it can never see whole: at each moment it re-derives its local position — who is my parent? am I my parent's last child? — by simulating single steps of the original machine, spending time lavishly to avoid writing down so much as one breadcrumb.