  In quantum computing the decoherence time of the qubits determines the
computation time available and this time is very limited when using current
hardware. In this paper we minimize the execution time (the depth) for a class
of circuits referred to as linear reversible circuits, which has many
applications in quantum computing (e.g., stabilizer circuits, CNOT+T circuits,
etc.). We propose a practical formulation of a divide and conquer algorithm
that produces quantum circuits that are twice as shallow as those produced by
existing algorithms. We improve the theoretical upper bound of the depth in the
worst case for some range of qubits. We also propose greedy algorithms based on
cost minimization to find more optimal circuits for small or simple operators.
Overall, we manage to consistently reduce the total depth of a class of
reversible functions, with up to 92% savings in an ancilla-free case and up to
99% when ancillary qubits are available.
