一种量子乘法器的设计方法与流程

文档序号:11519277阅读:1296来源:国知局
一种量子乘法器的设计方法与流程

本发明属于量子计算领域,具体涉及一种量子乘法器的设计方法。



背景技术:

量子计算的概念最早由ibm的科学家r.landauer及c.bennett于20世纪70年代提出。80年代初期,阿岗国家实验室的p.benioff首先提出二能阶的量子系统可以用来仿真数字计算;稍后费因曼也对这个问题产生兴趣而着手研究,并在1981年于麻省理工学院举行的一场演讲中勾勒出以量子现象实现计算的愿景。1982年,费曼提出量子计算机的计算速度远超过经典计算机。20世纪90年代,“shor量子因子分解算法”和“grover量子搜索算法”证明了量子计算机的计算能力。因此越来越多的研究人员开始探索量子计算机上的各种应用,相关的交叉学科也不断涌现,例如量子人工智能、量子机器学习和量子图像处理等。由于量子算法具有指数级加速相应经典算法的能力,被认为是解决当前物理系统计算能力瓶颈的有效手段之一。

量子乘法器是以更基本的量子加法器为基础,它广泛应用于量子图像处理中的滤波、边缘检测和频率控制等领域,是一种应用广泛的量子算法。现目前,研究者主要研究基于量子细胞自动机的乘法器的硬件实现。现有的关于量子乘法器的算法设计与研究几乎没有。因此,寻找量子乘法器的设计及实现方法具有重要的意义。



技术实现要素:

有鉴于此,本发明的目的是提供一种量子乘法器的设计方法。

本发明的目的是通过以下技术方案来实现的,一种量子乘法器的设计方法,包括以下步骤:

步骤1:利用量子门设计一位量子全加器,并将n个一位的量子全加器叠加在一起设计n位量子全加器,实现两个n位二进制数的加和;

步骤2:利用两个控制非门设计置零电路,并使用置零电路设计量子右移算子;

步骤3:对二进制数乘法步骤进行改进,按照改进后的二进制乘法步骤使用前述的量子全加器和量子右移算子设计量子乘法器。

进一步,改进后的二进制乘法步骤为:首先把部分积置零;如果乘数的低位是1,加上被乘数,然后把和右移一位;如果乘数高一位的数是0,加上0000,然后把和右移一位,如此循环,直到得出结果。

进一步,所述置零电路包括两个受控非门,输入量子比特|a>和输入量子比特|0>经过第一个受控非门输入状态转换为经过第二个受控非门后的输出状态为

由于采用了上述技术方案,本发明具有如下的优点:

1.成功填补了量子乘法器在算法设计上的空白,设计了高效的量子乘法器。

2.充分考虑了每个二进制数存储在一个量子态中,对每个二进制数进行整体操作时更节省资源的特点,提供了一个合理的二进制数乘法步骤。

附图说明

为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步的详细描述,其中:

图1为本发明方法的技术路线图;

图2(a)为一位量子全加器具体线路,2(b)为一位量子全加器的简化图;

图3为通用量子门;(a)为notgate,(b)为hadamardgate,(c)为cnotgate,(d)为toffoligate;

图4(a)为n位量子全加器具体线路图,4(b)为n位量子全加器的简化图;

图5(a)为现有乘法步骤,5(b)为改进算法的步骤;

图6为置零线路;

图7(a)为量子右移操作线路图,7(b)为右移算符的简化图,7(c)为右移两位的线路图;

图8(a)为量子乘法器具体线路图,8(b)为量子乘法器简化线路图。

具体实施方式

以下将结合附图,对本发明的优选实施例进行详细的描述;应当理解,优选实施例仅为了说明本发明,而不是为了限制本发明的保护范围。

图1为本发明方法的技术路线,以下部分也是对此技术路线中的各个内容进行的详细描述。

(1)设计量子全加器

图2(a)展示了一位量子全加器的具体构造线路图,其中用到了通用量子门中的两个控制非门如图3(c)所示,两个toffoli门如图3(d)所示,图2(b)为一位量子全加器的简化图。由n个一位的量子全加器分别作用到两个n位二进制数对应的位上,构成一个n位的量子全加器,可实现两个n位数的加和。图4(a)为n位量子全加器具体线路图,图4(b)展示了n位量子全加器的简化图,图中省略了辅助量子比特。以下为量子全加器实现两数相加的过程。

设|a>=|anan-1…a2a1〉和|b〉=|bnbn-1…b2b1>为两个n位二进制数,图3的输入量子态为两个待处理二进制数和初始状态为0的n位辅助量子比特,即输入量子态为其中辅助量子比特与表示|b>的量子比特一起用来存储两数相加之后的和。经过量子全加器的运算,输出量子态则为设量子全加器运算用符号qadd来表示,则两个数相加的过程可以表示为:

(2)改进二进制乘法步骤

一般来说对于整数相乘,乘法可以用加法代替,但是太浪费计算和存储资源。在量子计算机中,二进制数存储在一个量子态中,对其进行整体操作更节省资源,根据此需求可对乘法步骤进行改进。

例如要计算两个二进制数的乘积:1011×1101,图5(a)为二进制乘法的实现步骤。此乘法运算具有明显的特点,每次部分积要加的数是被乘数要么乘于1,要么乘于0,结果是被乘数本身或零,即每一小步中,部分积或者需要加上被乘数,或者不加,受乘数中的每一位的控制。图5(b)展示了改进后的算法步骤,首先把部分积置零(置零线路如图6所示),然后乘数的低位是1,所以要加上被乘数1011,然后把和右移一位;乘数高一位的数是0,就加上0000,然后把和右移一位,如此循环,直到得出结果。虽然是一个简单的转换,却节省了很多计算步骤。例如,对于一个n位二进制数乘于一个m位二进制数,本来需要计算2m次的加法,改进后只需要m次加法和m-1次的右移操作。关于加法的计算可以用步骤一中介绍的量子加法器。这里需要设计一个量子右移线路以解决乘法的运算。

(3)设计量子右移算子

在经典的数字电路中,需要沿着每条线从头到尾来分析整个电路实现的功能,对于每条线,都可以简单地对其实现扇出以及扇入操作。因为电路中的每条线确确实实代表着实际物品中的电线,和实际的电线一样起着传递信息的作用,一条导线就可以把一个位置上的电位传递到任何地方,反而比特的概念在电路图里倒是没有体现的那么清楚。而在量子计算的过程中,也是按照每条线来分析其功能,不同的是,每一条线都确确实实地代表一个或几个量子比特的状态转化过程,而且没有扇出和扇入操作。这是因为量子比特用更微小的物理现象表示,每条线代表的是一个相应的微观状态,例如电子的自旋方向,原子核的自旋方向等。这些状态不能简单地通过介质传递。因为量子不可克隆原理,不可能完全地对任意量子态进行复制,也就无法对任意量子态实现完全的扇出,而扇入在这里是荒谬的,因为两个量子态并不能合并。

例如图7,两个输入量子比特为|a>和|0>,其中|a>为任意的单量子比特态。可以把输入状态写作|a,0>,表示两个量子比特耦合在一起的系统,图中利用了之前介绍的受控非门,其实现异或操作,经过第一个受控非门输入状态转换为经过第二个受控非门后的输出状态为可以看出,这个简单的电路实现了量子比特|a>和|0>的交换,可以把它叫做置零线路。或者说实现了把|a>复制到量子比特|0>上,若把此操作应用到多位的二进制数,即可实现多位二进制数的复制操作,只不过需要n位的辅助量子比特。

假设需要右移操作的二进制数是cn-1cn-2…c1c0,一个量子右移操作线路需要n位的量子比特来表示这个数,需要一个辅助的量子比特,辅助量子比特的初始状态一般都为|0>,如7(a)所示。首先交换|c0>和辅助量子比特|0>,然后依次交换相邻的两个量子比特,从最终输出可以看到实现了右移操作。每次右移一共需要n次交换,共需2n个受控非门。同样为了使用方面图7(b)为右移算符的简化图。

如果需要实现很多位的右移,那么可以把整个右移算法重复使用多次,或者可以设计更简单的右移电路,例如图7(c)为右移两位时的线路图。其他情况可以以此类推。同理可以设计左移操作算符,这里不再详细描述。

(4)设计量子乘法器

按照改进后的二进制乘法步骤,使用上述量子全加器和量子右移位算符,即可以实现量子乘法器的设计。

设需要计算一个m位和一个n位二进制数的乘积。用拥有n个量子比特的量子态表示n位的被乘数,拥有m个量子比特的量子态表示m位的乘数。n位的部分积初始状态为零,即处于基态,然后依次用乘数从低位到高位的每一位来控制部分积是加上被乘数还是加零,并在每次加和之后让部分积右移一位。这样就得到了两个数的乘积。结果存储在m+n位的量子比特中。图8(a)为量子乘法器的线路图,图中未标注的初始为零的量子比特均为辅助量子比特。该线路图中主要有两种类型的量子门,量子全加器和量子右移位算符,其中,量子全加器的控制量子位分别是乘数中的每一位,目标位实现部分积和被乘数的加和,结果仍存储在n位部分积和一位进位量子比特中,量子右移位算符作用在m+n位的量子比特上。图8(b)为量子乘法器简化图。以下为量子乘法器实现两数相乘的过程。

设n位二进制数a存储在量子态|a>=|anan-1…a2a1>中,m位二进制数b存储在量子态|b>=|bmbm-1…b2b1>中,图8的输入量子态为两个待处理二进制数和初始状态为0的n+m位辅助量子比特,其中一位辅助量子比特作为进位,与两外n+m-1位量子比特一起用来存储相乘的结果,即输入量子态为经过量子乘法器的运算,输出量子态则为设量子乘法器运算用符号qmul来表示,则两个数相乘的过程可以表示为:

注:说明书中出现的量子态|a>=|anan-1…a2a1>为的简写,其他类似表示以此类推。

以上所述仅为本发明的优选实施例,并不用于限制本发明,显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1