如果量子门是可逆的,它们怎么可能执行不可逆的经典“与”或“或”运算?


16

量子门据说是单一的和可逆的。但是,经典的门可能是不可逆的,就像逻辑与门和逻辑或门一样。那么,如何使用量子门为不可逆的经典AND和OR门建模呢?

Answers:


17

假设我们有一个函数,它将n位映射到m位(其中m < n)。fnmm<n

f:{0,1}n→{0,1}m

我们当然可以设计一个经典电路来执行此操作。我们称它为。它接受n位作为输入。假设它将X作为输入,并输出f (X )。CfnXf(X)

现在,我们想使用量子电路做同样的事情。我们称它为,它以|为输入。X ⟩输出| f (X )⟩。现在请记住,由于量子力学是线性的,因此输入的量子位当然可以与所有n位字符串叠加。因此,输入可以是在一些状态Σ X ∈ { 0 ,1 } Ñ α X | X ⟩。由线性输出将是Σ X ∈ { 0 ,Uf|X⟩|f(X)⟩n∑X∈{0,1}nαX|X⟩。∑X∈{0,1}nαX|f(X)⟩

量子力学的发展是统一的。而且因为它是单一的,所以是可逆的。这基本上意味着,如果你申请一个量子门上的输入状态| X ⟩并得到一个输出状态ü | X ⟩,您可以随时申请逆门ü †找回状态| X ⟩。U|x⟩U|x⟩U†|x⟩

enter image description here

请注意,在上图中,请注意,每一步的输入线数(即6条)与输出线数完全相同。这是因为操作的统一性。与此相比,像经典的操作逻辑与其中给出了一个单比特输出0。不能重构初始比特0和1从输出,因为即使0 ∧ 0和1 ∧ 0会映射到相同的输出0。但是,请考虑经典的NOT门。如果输入为0,则输出1,而如果输入为0∧10010∧01∧0001它输出 0。由于此映射是一对一的,因此可以轻松地将其实现为可逆单一门,即Pauli-X门。但是,要实现经典的“或”门或经典的“或”门,我们需要多加考虑。10

考虑一下CSWAP门。这是显示该方案的示意图:

enter image description here

在SWAP门中,取决于控制位,我们另外两个可能会或可能不会被交换。注意,有三条输入线和三条输出线。因此,可以将其建模为单一量子门。现在,如果:如果x = 0,则输出为0,而如果x = 1,则输出y。z=0x=00x=1y

enter image description here

如果您发现,如果,我们输出ˉ X ∧ Ÿ而如果X = 1,我们是输出X ∧ ÿ。因此,我们可以成功地产生输出X ∧ Ÿ这是我们想要的,虽然我们结束了一些“垃圾”输出ˉ X ∧ Ÿ和X。一个有趣的事实是CSWAP门的反面是CSWAP门本身(检查!)。x=0x¯∧yx=1x∧yx∧yx¯∧yx

就这样!请记住,所有经典门都可以使用“ 与非”门构建,“ 与非”门当然可以构建为“与”门和“非”门。我们使用可逆量子门对经典的非门和经典的与门进行了有效建模。为了安全起见,我们还可以将qauntum CNOT门添加到我们的列表中,因为使用CNOT可以复制位。

因此,基本信息是使用量子CSWAP,CNOT和NOT门,我们可以复制任何经典门。顺便说一句,有一个巧妙的技巧可以消除使用量子门时产生的“垃圾”位,但这是另一回事了。

PS:除去“垃圾”位非常重要,否则它们会导致计算错误!

参考文献和图片来源:加州大学伯克利分校在edX上提供的量子力学和量子计算MOOC。


1
即使没有通过NAND门绕行,您也可以使用辅助系统使任何门成为一体,对吗?
— M. Stern,

@ M.Stern是的,这里已经讨论过了。:)
— Sanchayan Dutta
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.