System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
技术介绍
1、量子电路是用于量子计算的模型,在所述量子电路中,计算是一系列量子逻辑门——对n-量子位(n-qubit)寄存器的可逆变换。
技术实现思路
1、本说明书的主题涉及用于产生量子电路的技术,诸如用于执行索引运算的量子电路,在本文中被称为么正迭代(unitary iteration)量子电路。
2、通常,本说明书中所描述的主题的一个创新方面可以通过一种用于执行一元迭代以使用一元迭代量子电路来实现索引运算的方法来实现,所述方法包括:在包括索引量子位的索引寄存器中对索引值进行编码;在包括多个控制量子位的控制寄存器中对索引值进行编码;以及重复地计算和撤销计算控制量子位,以根据控制量子位的状态对与索引值相对应的一个或多个目标量子位执行运算,其中在编码、计算和撤销计算期间:多个控制量子位依次可用,并且多个控制量子位对应于所编码索引值的独热(one-hot)编码。
3、该方面的其他实现方式包括对应的经典或量子计算机系统、装置和记录在一个或多个计算机存储设备上的计算机程序,每个都配置为执行方法的动作。一个或多个经典或量子计算机的系统可以被配置为通过在系统上安装软件、固件、硬件或其组合来执行特定操作或动作,所述软件、固件、硬件或其组合在操作中致使系统执行这些动作。一个或多个计算机程序可以被配置为通过包括指令来执行特定操作或动作,所述指令在由数据处理装置执行时致使所述装置执行动作。
4、前述和其他实现方式可各自可选地包括单独或组合的以下特征中的一个或多个。
5、在一些实现方式中,迭代地计算成对的相应控制量子位和索引量子位之间的多个逻辑与运算,以存储最低有效索引量子位的逆与存储前一逻辑与运算的结果的控制量子位之间的逻辑与运算的结果包括:对于第一迭代,在第一控制量子位与最高有效索引量子位的逆之间执行逻辑与运算,并且将逻辑与运算的结果存储在第二控制量子位中;以及对于随后的迭代,在存储前一迭代的逻辑与运算的结果的控制量子位与所述迭代的索引量子位的逆之间执行逻辑与运算,并且将逻辑与运算的结果存储在随后的控制量子位中。
6、在一些实现方式中,第一控制量子位最初被设置成接通状态。
7、在一些实现方式中,重复地计算和撤销计算所述控制量子位包括:对于每个目标量子位依次重复地:确定最后控制量子位是否处于接通状态,并且响应于确定最后控制量子位处于接通状态而对目标量子位执行运算;确定要执行的成对的相应控制量子位和索引量子位之间的迭代地计算的逻辑与运算的撤销计算的数量;迭代地执行所确定数量的撤销计算;在与最后一个撤销计算的逻辑与运算相对应的控制量子位与下一个最高控制量子位之间执行受控非(cnot)运算,其中下一个最高控制量子位用作针对受控非运算的控件(control);迭代地计算成对的相应控制量子位和索引量子位之间的多个逻辑与运算,以重新计算最后控制量子位。
8、在一些实现方式中,确定要执行的成对的相应控制量子位和索引量子位之间的迭代地计算的逻辑与运算的撤销计算的数量包括:确定在将与最后控制量子位相对应的索引值的二进制表示改变为下一个时翻转了多少位;以及将撤销计算的数量确定为所确定的位翻转数量减一。
9、在一些实现方式中,确定要执行的成对的相应控制量子位和索引量子位之间的迭代地计算的逻辑与运算的撤销计算的数量包括:确定在获得非整数之前可以将以10为底的索引值除以2的次数。
10、在一些实现方式中,所述方法还包括:撤销计算成对的相应控制量子位和索引量子位之间的迭代地计算的多个逻辑与运算,以重置索引寄存器以便对索引值进行编码。
11、在一些实现方式中,多个逻辑与包括根据toffoli门和clifford+t门定义的临时与运算。
12、在一些实现方式中,每个逻辑与运算需要4个t门。
13、在一些实现方式中,一元迭代电路中所包括的与运算的总数等于目标量子位的总数n减1。
14、在一些实现方式中,执行索引运算的t计数为4(l-1)。
15、在一些实现方式中,所述方法还包括:
16、合并受控非运算以产生经优化的一元迭代电路以用于执行索引运算。在一些实现方式中,索引运算包括范围索引运算,并且其中一元迭代量子电路还包括累加器量子位。
17、在一些实现方式中,执行范围索引运算包括:在累加器量子位与每个迭代的最后控制量子位之间应用受控非运算,迭代的最后控制量子位用作控件。
18、在一些实现方式中,一元迭代电路通过以下来构造:定义用于实现索引运算的总控制电路;将一组变换应用于所述总控制电路以产生第一经变换电路,包括:对于每个可能的索引,当应用于索引和2b的按位或算符的结果大于或等于l并且应用于l-1和2b的按位与算符的结果等于2b时,去除表示2b的索引量子位上的控件,其中b表示二进制索引;以及将其余控件扩展到嵌套与运算中;将一组优化应用于第一经变换电路以产生一元迭代电路,包括:如果控件类型匹配,则去除与运算的相邻撤销计算和重新计算;如果控件类型不匹配,则用受控非和非运算代替与运算的相邻撤销计算和重新计算。
19、在一些实现方式中,嵌套与运算被嵌套成使得较低控件在较高控件内侧。
20、在一些实现方式中,在其余控件的扩展期间,同与运算相关联的控制量子位被直接放置在其最低输入量子位下方。
21、通常,本说明书中所描述的主题的另一个创新方面可以通过一种用于操作量子只读存储器的方法来实现,所述方法包括:在包括一个或多个索引量子位的索引寄存器中对索引值进行编码;在包括多个控制量子位的控制寄存器中对索引值进行编码;以及重复地计算和撤销计算控制量子位,以根据控制量子位的状态将与索引值相对应的数据项加载到数据量子位的数据寄存器,其中在编码、计算和撤销计算期间:使多个控制量子位依次可用,并且多个控制量子位对应于存储的索引的独热编码。
22、该方面的其他实现方式包括记录在一个或多个计算机存储设备上的对应的经典或量子计算机系统、装置和计算机程序,每个计算机存储设备被配置为执行方法的动作。一个或多个经典或量子计算机的系统可以被配置为通过在系统上安装软件、固件、硬件或其组合来执行特定操作或动作,所述软件、固件、硬件或其组合在操作中致使系统执行这些动作。一个或多个计算机程序可以被配置为通过包括指令来执行特定操作或动作,所述指令在由数据处理装置执行时致使所述装置执行动作。
23、前述和其他实现方式可各自可选地包括单独或组合的以下特征中的一个或多个。在一些实现方式中,包括多个控制量子位的控制寄存器中的索引值包括:迭代地计算成对的相应控制量子位和索引量子位之间的本文档来自技高网...
【技术保护点】
1.一种由量子计算设备执行的方法,所述方法包括:
2.如权利要求1所述的方法,其中,单量子位么正运算是范围运算,多个量子位还包括一个或多个累加器量子位,并且所述一元迭代电路还包括,当计算最终控制量子位时,在对应的累加器量子位和最后控制量子位之间的受控非运算,其中,最后控制量子位用作受控非运算的控件。
3.如权利要求1所述的方法,其中,多个量子位包括一个或多个累加器量子位,并且当计算最后控制量子位时,在对应的累加器量子位和最后控制量子位之间的受控非运算,其中,最后控制量子位用作受控非运算的控件。
4.如权利要求1所述的方法,进一步包括对一元迭代量子电路的控制量子位中的多个索引值进行编码,对于每个索引值,所述编码包括:
5.如权利要求1所述的方法,其中,单量子位么正运算包括范围运算,一元迭代量子电路还包括累加器量子位,并且一元迭代电路包括在累加器量子位和每个迭代的最后控制量子位之间的受控非运算,迭代的最后控制量子位用作控件。
6.如权利要求1所述的方法,其中,与撤销计算和重新计算被嵌套使得较低控件在较高控件内侧。
8.如权利要求1所述的方法,其中,包括在该一元迭代电路中的与撤销计算和重新计算的总数等于目标量子位的总数N减1。
9.如权利要求1所述的方法,其中,执行单量子位么正运算具有4(L-1)的T计数,其中,L表示存储在索引寄存器中的值的上限。
10.一种装置,包括:
11.如权利要求10所述的装置,其中,单量子位么正运算是范围运算,多个量子位还包括一个或多个累加器量子位,并且所述一元迭代电路还包括,当计算最终控制量子位时,在对应的累加器量子位和最后控制量子位之间的受控非运算,其中,最后控制量子位用作受控非运算的控件。
12.如权利要求10所述的装置,其中,多个量子位包括一个或多个累加器量子位,并且当计算最后控制量子位时,在对应的累加器量子位和最后控制量子位之间的受控非运算,其中,最后控制量子位用作受控非运算的控件。
13.如权利要求10所述的装置,其中,所述操作还包括对一元迭代量子电路的控制寄存器中的多个索引值进行编码,所述控制寄存器包括多个控制量子位,对于每个索引值,所述编码包括:
14.如权利要求10所述的装置,其中,单量子位么正运算包括范围运算,一元迭代量子电路还包括累加器量子位,并且一元迭代电路包括在累加器量子位和每个迭代的最后控制量子位之间的受控非运算,迭代的最后控制量子位用作控件。
15.如权利要求10所述的装置,其中,与撤销计算和重新计算被嵌套使得较低控件在较高控件内侧。
16.如权利要求10所述的装置,其中,和与撤销计算和重新计算相关联的控制量子位被直接放置在其最低输入量子位下方。
17.如权利要求10所述的装置,其中,包括在该一元迭代电路中的与撤销计算和重新计算的总数等于目标量子位的总数N减1。
18.如权利要求10所述的装置,其中,执行单量子位么正运算具有4(L-1)的T计数,其中,L表示存储在索引寄存器中的值的上限。
19.一种用于使用包括一元迭代量子电路的量子计算设备执行一元迭代以实现索引运算的方法,所述方法包括:
20.一种装置,包括:
21.如权利要求19所述的方法或如权利要求20所述的装置,其中,所述索引运算包括以多个控制量子位的状态为条件加载与一个或多个目标量子位中的第l目标量子位的索引值相对应的数据项的运算,其中,l表示零与最大索引值L之间的整数。
22.一种用于使用包括一元迭代量子电路的量子计算设备执行一元迭代以实现索引运算的方法,所述方法包括:
23.一种装置,包括:
24.如权利要求22所述的方法或如权利要求23所述的装置,其中,所述索引运算包括以多个控制量子位的状态为条件加载与一个或多个目标量子位中的第l目标量子位的索引值相对应的数据项的运算,其中,l表示零与最大索引值L之间的整数。
25.一种用于操作量子只读存储器的方法,所述方法包括:
26.一种装置,包括:
...【技术特征摘要】
1.一种由量子计算设备执行的方法,所述方法包括:
2.如权利要求1所述的方法,其中,单量子位么正运算是范围运算,多个量子位还包括一个或多个累加器量子位,并且所述一元迭代电路还包括,当计算最终控制量子位时,在对应的累加器量子位和最后控制量子位之间的受控非运算,其中,最后控制量子位用作受控非运算的控件。
3.如权利要求1所述的方法,其中,多个量子位包括一个或多个累加器量子位,并且当计算最后控制量子位时,在对应的累加器量子位和最后控制量子位之间的受控非运算,其中,最后控制量子位用作受控非运算的控件。
4.如权利要求1所述的方法,进一步包括对一元迭代量子电路的控制量子位中的多个索引值进行编码,对于每个索引值,所述编码包括:
5.如权利要求1所述的方法,其中,单量子位么正运算包括范围运算,一元迭代量子电路还包括累加器量子位,并且一元迭代电路包括在累加器量子位和每个迭代的最后控制量子位之间的受控非运算,迭代的最后控制量子位用作控件。
6.如权利要求1所述的方法,其中,与撤销计算和重新计算被嵌套使得较低控件在较高控件内侧。
7.如权利要求1所述的方法,其中,和与撤销计算和重新计算相关联的控制量子位被直接放置在其最低输入量子位下方。
8.如权利要求1所述的方法,其中,包括在该一元迭代电路中的与撤销计算和重新计算的总数等于目标量子位的总数n减1。
9.如权利要求1所述的方法,其中,执行单量子位么正运算具有4(l-1)的t计数,其中,l表示存储在索引寄存器中的值的上限。
10.一种装置,包括:
11.如权利要求10所述的装置,其中,单量子位么正运算是范围运算,多个量子位还包括一个或多个累加器量子位,并且所述一元迭代电路还包括,当计算最终控制量子位时,在对应的累加器量子位和最后控制量子位之间的受控非运算,其中,最后控制量子位用作受控非运算的控件。
12.如权利要求10所述的装置,其中,多个量子位包括一个或多个累加器量子位,并且当计算最后控制量子位时,在对应的累加器量子位和最后控制量子位之间的受控非...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。