A digital combinational logic circuit is reversible if it maps each input pattern to a unique output pattern. Such circuits are of interest in quantum computing, optical computing, nanotechnology and low-power CMOS design. Synthesis approaches are not well developed for reversible circuits even for small numbers of inputs and outputs. In this paper, a transformation based algorithm for the synthesis of such a reversible circuit in terms of n ? n Toffoli gates is presented. Initially, a circuit is constructed by a single pass through the specification with minimal lookahead and no back-tracking. Reduction rules are then applied by simple template matching. The method produces near-optimal results for 3-input circuits and also produces very good results for larger problems. Categories and Subject Descriptors
D. Michael Miller, Dmitri Maslov, Gerhard W. Dueck