The Spooky Pebble Game
Pebble games are commonly used to study space-time trade-offs in computation. We present a pebble game that explores this trade-off in quantum simulation of arbitrary classical circuits on non-classical inputs. Many quantum algorithms, such as Shor's algorithm and Grover's search, include subroutines that require simulation of classical functions on inputs in superposition. The current state of the art uses generic reversible simulation through Bennett's pebble game and universal reversible gate sets such as the Toffoli. Using measurement-based uncomputation, we replace many of the ancilla qubits used by existing constructions with classical control bits, which are cheaper. Our pebble game forms a natural framework for reasoning about measurement-based uncomputation, and we prove tight bounds on the time complexity of all algorithms that use our pebble game. For any ϵ∈ (0,1), we present an algorithm that can simulate irreversible classical computation that uses 𝒯 time and 𝒮 space in O(1/ϵ𝒯^1+ϵ/𝒮^ϵ) time with O(1/ϵ𝒮) qubits. With access to more qubits we present algorithms that run in O(1/ϵ𝒯) time with O(𝒮^1-ϵ𝒯^ϵ) qubits. Both of these results show an improvement over Bennett's construction, which requires O(𝒯^1+ϵ/𝒮^ϵ) time when using O(ϵ2^1/ϵ𝒮 (1+log𝒯/𝒮)) qubits. Additionally the results in our paper combine with Barrington's theorem to provide a general method to efficiently compute any log-depth circuit on quantum inputs using a constant number of ancilla qubits. We also explore a connection between the optimal structure of our pebbling algorithms and backtracking from dynamic programming.
READ FULL TEXT