An algorithm for reversible logic synthesis is proposed. The task is, for a given $n$-bit substitution map $P_n: \{0,1\}^n \rightarrow \{0,1\}^n$, to find a sequence of reversible logic gates that implements the map. The gate library adopted in this work consists of multiple-controlled Toffoli gates denoted by $C^m\!X$, where $m$ is the number of control bits that ranges from 0 to $n-1$. Controlled gates with large $m \,\,(>2)$ are then further decomposed into $C^0\!X$, $C^1\!X$, and $C^2\!X$ gates. A primary concern in designing the algorithm is to reduce the use of $C^2\!X$ gate (also known as Toffoli gate) which is known to be universal. The main idea is to view an $n$-bit substitution map as a rank-$2n$ tensor and to transform it such that the resulting map can be written as a tensor product of a rank-($2n-2$) tensor and the $2\times 2$ identity matrix. Let $\mathcal{P}_n$ be a set of all $n$-bit substitution maps. What we try to find is a size reduction map $\mathcal{A}_{\rm red}: \mathcal{P}_n \rightarrow \{P_n: P_n = P_{n-1} \otimes I_2\}$. %, where $I_m$ is the $m\times m$ identity matrix. One can see that the output $P_{n-1} \otimes I_2$ acts nontrivially on $n-1$ bits only, meaning that the map to be synthesized becomes $P_{n-1}$. The size reduction process is iteratively applied until it reaches tensor product of only $2 \times 2$ matrices.
翻译:用于可变逻辑合成的算法。 任务在于, 对于给定的 $2 的 $- bit 替代地图 $P_n : $0, 1\n\\rightrow $0, 1 ⁇ n\rightar $0, 1 ⁇ n美元, 寻找执行地图的可变逻辑门序列。 这项工作中采用的门库由多控的 Toffoli 门组成, 由$C%\ m\! X$注解的 Toffoli 显示为 $0 到 $1 美元不等的控制位数。 以大 $\,\\\\\\\\\\\\\\\\ > $控制的门会进一步变换成$C$0, C$1\n\n! X$2\\\\ x$。 设计算法时的主要关切是减少$C\\\\\\\\\\\\\! $( 又称为 Toffoli Gate) 门) 的用量, $=_\\\\\\\\\\ ma_ tal_ tal_ tal_ ma_ test_ test_ test_ test_ test_ test_ tal_ tal_ tal_ tal_ =2_ =_ list_ 美元。 =xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx。 美元。 美元。 =xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx