容错量子计算机的布局的制作方法

文档序号:23728753发布日期:2021-01-26 18:54阅读:194来源:国知局
容错量子计算机的布局的制作方法
容错量子计算机的布局
[0001]
相关申请的交叉引用
[0002]
本申请要求于2018年6月6日提交的题为“容错量子计算机的布局”的美国临时申请第62/681,540号的权益,该临时申请的全部内容通过引用并入本文。


技术实现要素:

[0003]
本文中公开了用于容错量子计算机的示例布局和布局生成技术。因为可以单独、按不同次序或至少部分彼此同时执行所公开的方法动作,所以所描述的特定实施例不应解释为限制性的。进一步地,所公开的方法或方法动作中的任一方法或方法动作可以使用本文中公开的任何其他方法或方法动作来执行。同样,所公开的特征组合可以包括特征的任何新颖或非显而易见的组合或子组合的重排。
[0004]
一个示例实施例包括一种用于执行用于容错量子计算的布局简化技术的方法。在特定实施例中,该方法由一个或多个经典计算设备执行,其中一个或多个经典计算设备中的至少一些经典计算设备采用可以操作量子计算机的配置。在某些实施例中,任意量子电路的布局被简化为多量子位泡利矩阵的指数和多量子位泡利矩阵(pauli matrix)的测量的布局;并且量子计算机被配置为实现经简化的布局。在特定实现方式中,量子计算机的量子位包括数据量子位、接口量子位、以及辅助量子位。在其他实现方式中,量子位连接图满足提供从一个或多个数据量子位到接口量子位的辅助路径的条件。
[0005]
另一示例实施例包括用于执行用于容错量子计算的布局技术的另一方法。在特定实施例中,该方法由一个或多个经典计算设备执行,其中一个或多个经典计算设备中的至少一些经典计算设备采用可以操作量子计算机的配置。在某些实施例中,量子位被标记为用于2d最近邻量子位连接图的数据量子位、接口量子位或辅助量子位之一;提供从相应数据量子位到相应接口量子位的辅助路径;并且量子计算机被配置为实现从相应数据量子位到相应接口量子位的辅助路径。在某些实现方式中,该方法考虑并避免任何破损的量子位,并且满足了提供从数据量子位到接口量子位的辅助路径的条件。
[0006]
上文所描述的方法中的任一方法都可以在一种系统中执行,该系统包括量子计算设备;以及一个或多个经典计算设备,其中至少一些经典计算设备被编程为执行所公开的方法中的任一方法。
[0007]
附加地,上文所描述的方法中的任一方法可以被实现为存储经典计算机可执行指令的一个或多个经典计算机可读介质,该经典计算机可执行指令当由经典计算机执行时,使经典计算机执行所公开的方法中的任一方法。
[0008]
其他实施例包括一种量子电路,该量子电路被配置为应用多量子位泡利矩阵的指数并且测量多量子位泡利矩阵。在一些实现方式中,提供从数据量子位到接口量子位的辅助路径。在其他实现方式中,量子电路的深度不取决于顶点的数目。在一些实现方式中,量子电路将单深度多目标cnot门或低深度多目标cnot门用作子电路。
[0009]
一些实施例包括一种量子电路,该量子电路被配置为:(a)使用单量子位泡利测量和二量子位泡利测量和单量子位clifford门提供多目标cnot门;或(b)使用单量子位、泡利
测量、单量子位clifford门和受控-z门提供多目标cnot门。在一些实现方式中,量子电路使用单量子位泡利测量和二量子位泡利测量以及单量子位clifford门提供多目标cnot门,其中量子电路对如下的量子位起作用,对于这些量子位,量子位连接图满足提供从目标量子位到控制量子位的辅助路径的条件。在其他实现方式中,量子电路使用单量子位泡利测量和二量子位泡利测量以及单量子位clifford门提供多目标cnot门,其中量子电路的深度不取决于顶点的数目。在一些实现方式中,量子电路被配置为使用单量子位、泡利测量、单量子位clifford门和受控-z门来提供多目标cnot门,并且其中量子电路对如下的量子位起作用,对于这些量子位,量子位连接图满足提供从目标量子位到控制量子位的辅助路径的条件。在其他实现方式中,量子电路被配置为使用单量子位、泡利测量、单量子位clifford门和受控-z门来提供多目标cnot门,其中量子电路的深度不取决于顶点的数目。
[0010]
根据参考附图进行的下面具体实施方式,所公开的技术的前述和其他目的、特征和优点变得更加显而易见。
附图说明
[0011]
图1是表示实现顶部量子位与底部量子位之间的cnot门的电路的示意性框图。
[0012]
图2是示出了通过测量提供多目标cnot门的示例的示意性框图。
[0013]
图3是图示了在将紫色测量向左移动以对辅助与目标之间的最后红色块进行并行化之后的图2的修改版本的示意性框图。
[0014]
图4是图示了进一步修改初始测量以对控制量子位和辅助之间的紫色块进行并行化(这种并行化的效果仅在存在两个以上目标时才会出现)的示意性框图。
[0015]
图5是根据所公开的技术的实施例的另一通用电路的示意性框图。
[0016]
图6是传播泡利算子x
c
的示例电路的示意性框图。
[0017]
图7是表示图6的多目标cnot门的平面布局的框图。
[0018]
图8是示出了用于执行所公开的技术的实施例的通用方法的流程图。
[0019]
图9是示出了用于执行所公开的技术的实施例的另一通用方法的流程图。
[0020]
图10图示了其中可以实现所描述的实施例的各个方面的合适经典计算环境的概括示例。
[0021]
图11示出了用于实现根据所公开的技术的系统的可能网络拓扑(例如,客户端-服务器网络)的示例。
[0022]
图12示出了用于实现根据所公开的技术的系统的可能网络拓扑(例如,分布式计算环境)的另一示例。
[0023]
图13示出了用于实现所公开的量子计算技术的示例性系统。
具体实施方式
[0024]
1.一般注意事项
[0025]
如本申请所使用的,除非上下文另外明确指出,否则单数形式的“一”、“一个”和“该”包括复数形式。附加地,术语“包含(includes)”意指“包括(comprises)”。进一步地,术语“耦合”不排除耦合项之间存在中间元素。进一步地,如本文中所使用的,术语“和/或”意指短语中的任一项或任何项的组合。
[0026]
尽管为了方便呈现以特定顺序次序对所公开的方法中的一些方法的操作进行描述,但是应当理解,除非下文所阐述的特定语言要求特定次序,否则这种描述方式涵盖重排。例如,在一些情况下,可以同时重排或执行顺序描述的操作。而且,为了简单起见,附图可能未示出可以与其他系统、方法和装置结合使用所公开的系统、方法和装置的各种方式。附加地,该描述有时使用如“产生”和“提供”之类的术语来描述所公开的方法。这些术语是被执行的实际操作的高级抽象。与这些术语相对应的实际操作依据特定实现方式而发生变化,并且本领域的普通技术人员可以容易辨别这些实际操作。
[0027]
2.量子计算的预备知识和记法
[0028]
令i、x、y和z表示单量子位泡利矩阵(pauli matrices)。所有单量子位泡利矩阵都是厄米(hermitian)矩阵。每个泡利矩阵的平方等于i。多量子位泡利矩阵是单量子位泡利矩阵的张量积(其表示为)。记法x
k
、y
k
、z
k
是指其中x、y和z在量子位k上而i在所有其他量子位上的多量子位泡利矩阵。例如,作为3-量子位泡利矩阵的x2是指以下矩阵:
[0029][0030]
多量子位泡利矩阵也是厄米矩阵,并且它们的平方是单位矩阵(identity matrix)。多量子位泡利矩阵下文简称为泡利矩阵。i用于任何数目的量子位上的单位矩阵。根据上下文,可以清楚看出i的维数。
[0031]
记法p|
k
用于多量子位泡利矩阵的第k个分量。例如,对于p=x
a
y
b
z
c
,p|
a
=x,p|
b
=y,并且p|
c
=z。
[0032]
对于任何方阵a,tr(a)是a的对角元素之和。对于任意方阵a、b,情况就是tr(ab)=tr(ba)。另外,
[0033]
正交投影算子(orthogonal projector)是特性为c2=c的厄米矩阵c。tr(c)等于c投影到其上的子空间的维数。
[0034]
如果ab=ba,则矩阵a和b交换。如果ab=-ba,矩阵a和b反交换。任何两个泡利矩阵交换或反交换。
[0035]
正状态|+>为
[0036]
h
k
是量子位k上的hadamard门。该h
k
等于
[0037]
一量子位clifford门为乘积hp、sp、hsp、shp、hshp,其中p为i、x、y、z。一量子位clifford门还包括泡利矩阵x、y、z。
[0038]
cz
ij
是量子位i和j上的受控-z门。该cz
ij
等于(i+z
i
+z
j-z
i
z
j
)。
[0039]
如果状态|ψ>是m的+1特征向量,则厄米矩阵m使状态|ψ>稳定。换句话说,m|ψ>=|ψ>。
[0040]
n量子位猫态为还被称为ghz状态的状态
[0041]
令u为某个酉元(unitary)并且令可以说成u将p映射到q。
[0042]
3.量子电路布局问题
[0043]
在本章节中,公开了解决以下问题的特殊情况的算法的示例实施例:
[0044]
问题3.1(图形的布局问题)。令(v,e)为图,v
rot
为v的子集。顶点为量子位。考虑量子计算,该量子计算使用一量子位clifford运算和二量子位clifford运算、单量子位旋转exp(iφz)和单量子位测量。使用以下各项执行产生相同测量结果的量子计算:
[0045]
·
一量子位测量和一量子位clifford酉元,
[0046]
·
(a)受控-z门或(b)通过边缘连接的量子位上的二量子位测量
[0047]
·
只能对子集v
rot
执行单量子位旋转exp(iφz)
[0048]
在每个边缘上使用二(例如,仅两个)量子位测量更具约束型。始终可以使用两个受控-z门、一个测量和单量子位clifford门执行任何二量子位测量。然而,不可能仅通过测量这两个量子位,而对这两个量子位执行受控-z门。对量子位(可以对该量子位执行单量子位旋转)进行约束反映了以下事实:在容错量子计算机上执行这些旋转通常会使用经常在计算机的专用部分中产生的资源状态。子集v
rot
表示如下的量子位,其中实现旋转所需的资源状态可以被轻松递送到该量子位。
[0049]
上述问题还可以缩减为其中v
rot
包括一个元素r并且(v,e)是根为r的树的情况。实际上,对于任何图(v,e),我们可以计算根为r的生成树(spanning tree)。首先,对这种情况的解决方案进行描述。
[0050]
示例解决方案的第一部分是将量子计算转换为规范解决方案。本文中,记法m(a,p)=(i+ap)/2用于测量其中结果为a=
±
1的任一多量子位泡利算子p。假设我们有n量子位量子计算,其被描述如下:
[0051][0052]
c
k
是一些clifford算子。回顾一下,对于任何clifford算子c和泡利矩阵p,乘积为泡利矩阵。还回顾一下,指数和测量均具有以下特性:
[0053][0054]
我们可以把量子计算(1)重写如下:
[0055][0056]
使用测量和指数的特性(2),我们还可以把计算重写如下:
[0057]
其中c

=c2c1c0。
[0058]
最终,我们可以把任何量子计算变换为多量子位clifford运算和clifford门的测量和指数序列。最终,因为在执行之后,不会从量子计算机中提取该信息,所以无需执行clifford门。
[0059]
为了在问题3.1中描述的约束下执行任意计算,足以能够对某些量子位上支持的任意泡利矩阵执行测量m(a,p)和exp(iφp)。子集v
data
的大小决定了我们可以用于计算的最大数目的量子位。在问题3.1中描述的二量子位运算的约束下,足以能够执行clifford c和使得如第4章节中所描述的,这样的clifford运算可以使用多目标受控-z门构建。表1和表2示出了使用多目标受控-z门的这种clifford c运算的程序。表1的程序在树的边缘上应用了受控-z门,而表2的程序应用了二量子位测
量。当将该构造用于clifford c时,集合v
data
与树的除根以外的所有叶子相对应。
[0060]
在第5章节中,提供了有关如何在2d最近邻架构中以叶子数目与顶点数目的高比例构造树的描述。此外,当2d最近邻架构中的一部分量子位被破损时,就是这种情况。已经发现,当破损比例超过90%时,我们仍然可以利用大量量子位来进行计算。
[0061][0062]
表1:使用受控-z门的泡利映射器的程序
[0063]
4.低深度多目标受控-z门
[0064]
本章节描述了执行低深度多目标受控-z门的两种方式。一种方式适用于具有本机受控-z门的架构。另一种方式用于具有二量子位运算的架构,该二量子位运算被约束为仅对二量子位泡利矩阵的测量。两者都值得注意的是用于猫态准备的低深度电路和用于扇出门的低深度电路。在下文中,量子位被视为树的顶点,并且仅允许二量子位运算。
[0065][0066]
表2:使用二量子位泡利测量的泡利映射器的示例程序
[0067][0068]
表3:边缘所连接的量子位之间的低深度猫态准备的程序。回顾一下,当我们需要执行量子位a和b的测量,它等同于以下内容:
[0069][0070]
下一命题表明在树上准备猫态所需的电路深度不取决于树顶点的数目。
[0071]
命题4.1(低深度猫态准备)。令(v,e)为一个树。树的顶点与量子位相对应。所有的量子位都处于正状态。只能应用以下运算:
[0072]
·
测量边缘所连接的量子位上的可观察
[0073]
·
将泡利x应用于除提前选择的量子位w外的量子位中的任一量子位。
[0074]
然后,以等于最大顶点度的深度、使用测量,可以准备与顶点相对应的量子位上的猫态。另外,我们需要全部并行执行最多|v|-1次泡利x运算。表3给出了猫态准备的伪代码。
[0075]
证据。首先,示出了表3上的过程确实准备了猫态。回顾一下,n=|v|量子位上的猫态唯一可以由以下约束(直到全局阶段)描述:
[0076][0077]
实际上,上文暗示|ψ>通过以下投影算子而被稳定:
[0078][0079]
接下来,将上述乘积扩展为泡利矩阵之和。使用|e|=|v|-1,并且所有非单位泡利矩阵的迹都为零,以检查tr(p)=1。得出结论:p固定一维子空间。
[0080]
将所有量子位初始化为|+>状态确保了它们的联合状态由π
v∈v
x
v
,稳定。测量用于(u,v)∈e的z
u
z
v
确保了状态为z
u
z
v
的+1或-1本征态。应当指出,因为所有约束交换,因此经由测量添加新约束保留了所有先前约束。在执行所有测量并且标志边缘时,量子位|φ>的状态满足以下约束:
[0081][0082]
它仍然需要固定-1符号。这可以通过将单量子位泡利x算子应用于顶点来进行。如果我们没有把x应用于顶点,则我们可以使用0标志该顶点,如果我们把x应用于顶点,则我们可以使用1标志该顶点。这按以下列方式改变符号:
[0083][0084]
可以通过一树遍历(one tree traversal)(例如,使用深度优先搜索)来查找标签指派(label assignment)。树根的标签可以选择为零。基于父的标签以及连接顶点及其父的边缘的标签,计算每个顶点的标签。
[0085]
最后,应当指出,每种颜色的边缘都不共享顶点。因此,可以并行执行对对应量子位的测量。这暗示猫态准备的测量部分的深度等于树的色数,该色数为最大顶点度加一。
[0086]
给定n量子位猫态,足以执行一次二量子位测量以获取从一个量子位到n+1个量子位的扇出门。
[0087][0088]
下一命题直观地解释了一次二量子位测量如何帮助执行作用在n+1个量子位上的被部分指定的酉元。
[0089]
命题4.2(经由测量的酉运算)。令|ψ>为多量子位状态而p为使|ψ>稳定的多量子位泡利矩阵(例如,p|φ>=|ψ>)。令q为与p反交换的另一多量子位泡利矩阵。然后,|ψ>的可观测q的测量+1的概率为1/2。而且,如果测量结果为-1,则应用以结果-1为条件的p等于测量+1。在上述条件下,我们始终可以经由测量将以下变换确定性地应用于|ψ>:
[0090][0091]
证据。首先,表明了测量+1的概率为1/2。可以通过表明测量+1和测量-1的概率相等来表明这点。回顾一下,测量
±
1的概率为接下来,使用p稳定|ψ>和p、q的反交换性来检查以下等式:
[0092][0093]
我们可以看到,当测量结果为+1时,状态根据(3)而进行变换。
[0094]
接下来,检查测量结果为-1时再次出现这种情况,并且应用校正p。
[0095][0096]
表4:measureplusone的程序
[0097]
如果测量结果为-1,则我们可以应用校正p,并且状态变为:
[0098][0099]
在上文中,使用p、q的反交换性,并且事实是p稳定|ψ>。最后,我们可以注意到(i+q)|ψ>=(i+qp)|φ>,并且使用以下事实:对于任何矩阵a,对其求平方以减去恒等式exp(φa)=i cos(φ)+a sin(φ)。
[0100]
已经表明了在命题4.2的条件下,具有经典反馈的测量等同于酉变换。这是因为qp是反厄米矩阵,而是酉矩阵。应当指出,所执行的酉运算包括泡利p。即使q仅作用在一对量子位上,运算结果也可以等同于大量量子位上的酉元。当约束p牵涉到大量量子位时,就会发生这种情况。
[0101]
以上讨论促使引入运算measureplusone(q/p)(参见表4)。该运算measureplusone(q/p)执行方程(3)所给出的运算,假定方程(3)所应用于的状态被p稳定,换句话说,运算measureplusone总是将状态投影到q的+1特征子空间上。我们可以把称p为对状态的约束。
[0102]
现在,示出了measureplusone如何用于执行扇出门。
[0103]
命题4.3(低深度扇出)。令(v,e)为一个树。树的顶点与量子位相对应。除了树的根外,所有量子位都处于|+>状态。我们只能应用以下运算:
[0104]
·
测量边缘所连接的量子位上的可观察
[0105]
·
将泡利x应用于量子位中的任一量子位。
[0106][0107]
表5:扇出门的程序
[0108]
以等于最大顶点度的深度,使用测量,可以执行从根到所有量子位的扇出门。另外,我们需要全部并行执行至多|v|-1泡利x运算。表5给出了扇出门的伪代码。
[0109]
证据。首先,示出了表5中的运算fanout1的正确性。接下来,表明该运算fanout1等同于同一表上描述的运算fanout。关于测量的深度的命题的主张源于以下事实:树的边缘着色中的颜色的数目等于最大顶点度加1。
[0110]
令根顶点的状态为α|0>+β|1>。根据命题4.2,表4上的最后三行运算fanout1确定性地投影在z
r
z
r

的+1本征空间上。这是因为猫态由x在树的所有非根顶点上的乘积稳定,并且该乘积与z
r
z
r

反交换。因此,在最后三行fanout1之后,所有量子位的状态变为:
[0111][0112]
这是因为投影算子(i+z1z2)/2选择前两位相等的计算基状态:
[0113][0114]
接下来,检查表5上的运算fanout和fanout1是否等同。首先,我们可以内联catstateprep。接下来,我们可以观察到在测量z
r
z
r

之前没有对顶点r

执行x校正。因此,测量z
r
z
r

可以与所有其他测量一起执行。最后,在catstateprep末尾应用的x校正与在运算fanout1末尾应用的x校正相结合。
[0115]
接下来,提供关于如何使用扇出门执行多目标受控-z的描述。我们可以从更适合于具有本机受控-z门的架构的情况开始。
[0116]
命题4.4(低深度多目标受控-z)。令(v,e)为一个树。树的顶点与量子位相对应。不是叶子的量子位处于正状态。可观察和受控-z门的测量只能应用于边缘所连接的量子位。表6上给出的程序执行多目标受控-z门,其中树根为控件,其余叶子为目标。其余树顶点返回到正状态。
[0117]
联合测量的深度最多为最大顶点度。受控-z门的深度最多为最大顶点度。所应用的联合测量和受控-z运算的总数目等于边缘的总数目。x测量的深度为一。
[0118][0119]
表5:多目标受控z门的程序。
[0120]
证据。首先,示出了表6上的程序multipletargetcontrolledz1执行多目标受控-z门并且满足所需后置条件。接下来,表明该程序等同于multipletargetcontrolledz。最后,对在multipletargetcontrolledz中执行的运算的深度进行计数。
[0121]
回顾一下,在计算基状态下,多目标受控-z门如下所示:
[0122][0123]
第一量子位之上是控件,其余是目标。在这种情况下,控件和目标是树的叶子。我们还有不是树的叶子的其他(比如,m个)量子位。使用扇出运算,状态变换为:
[0124][0125]
在第一foreach循环之后,状态变为:
[0126][0127]
这是因为在目标量子位中的每个目标量子位与不是树的叶子并且处于|c>状态的某个量子位之间执行了受控-z门。应当指出,上述状态(4)是所有z
r
z
v
算子的+1本征状态,其中r是树根和控制量子位,v是非叶辅助量子位。为此,我们可以使用measureplusone运算以将所有非叶辅助量子位设置回到正状态。重要的是要指出,将非叶辅助量子位中的一个非叶辅助量子位设置为正状态不会违反其他量子位上的a
r
z
v
约束,因此这可以并行进行。
[0128]
为了获得multipletargetcontrolledz程序,我们可以内联对measureplusone的所有调用。接下来,我们可以观察到可以首先执行所有测量,然后可以执行校正。如下文所示出的,我们还可以将应用于根顶点的所有校正汇总在一起,这样就可以应用校正一次。
[0129]
为了对测量深度进行计数,我们可以观察到这些测量都是在扇出运算内执行的,并且最大顶点度(v

,e

)最多是最大顶点度(v,e)。所执行的受控-z运算的深度最高是共享一个顶点的边缘的数目,该顶点是最大顶点度。
[0130]
本章节的其余部分仅专用于具有二量子位测量的架构。首先,回顾一下,如何在该架构中使用一个额外量子位来执行受控-z门。使用measureplusone(q/p)以简洁方式表达该结果非常方便。该结果还会帮助我们获得对多目标受控-z的理解。
[0131]
命题4.5。考虑三个量子位a、b、c,其中量子位a处于|+>状态,然后,以下运算在量子位t、c之间执行受控-z门,并且使量子位a返回|+>状态:
[0132][0133]
证据。首先,我们检查都可以应用所有measureplusone。量子位a处于|+>,因此输入状态由x
a
稳定。第一步之后,作为测量的结果,整体状态与z
b
z
a
交换。在将hadamard应用于第二量子位之后,该状态与交换,该恰好是z
t
x
α
。第三步之后,根据步骤4的要求,状态与z
a
z
c
交换。
[0134]
现在,可以表明,确实执行了受控-z门。考虑到所有三个量子位都处于张量积状态时的情况便足够。假设量子位t处于α
t
|0>+β
t
|1>状态。在步骤1之后,量子位t、a的状态变为:
[0135]
α
t
|00>+β
t
|11>
[0136]
步骤2之后,该量子位t、a的状态为(通过直至标准化):
[0137]
α
t
|00>+α
t
|01>+β
t
|10>-β
t
|11>
[0138]
假设量子位c处于状态α
c
|0>+β
c
|1>,则步骤3之后,所有三个量子位的状态变为:
[0139]
α
t
α
c
|000>+α
t
β
c
|011>+β
t
α
c
|100>-β
t
β
c
|111>。
[0140]
最后,测量x
a
将状态变换为:
[0141]
α
t
α
c
|0+0>+α
t
β
c
|0+1>+β
t
α
c
|1+0>-β
t
β
c
|1+1>.。
[0142]
我们可以看到第二量子位的状态为|+>,而第一量子位和第三量子位的联合状态如下:
[0143][0144]
让我们经由测量将上述用于受控-z的程序与对应用于具有三个顶点c、t、a和边缘(c、a)和(a、t)的树的multipletargetcontrolledz运算的版本进行比较:
[0145][0146]
不同之处在于,hadamard后跟measureplusone(z
a
z
t
/z
r
x
a
)代替了对受控-z的调用。结果表明它们执行的是与受控-z类似的酉元。
[0147]
命题4.6。以下两个运算h2;针对a、b零或一,measureplusone(z2z3/z1x2)将计算基状态|aab>映射到(-1)
ab
|abb>。
[0148]
证据。应用hadamard门将输入状态变换为:
[0149][0150]
measureplusone(z2z3/z1x2)的结果如下:
[0151][0152]
这是因为(i+z2z3)/2投影在|00>,|11>的跨度上。
[0153]
使用这种运算,我们可以构造仅使用联合测量和单量子位运算的多目标受控-z门。
[0154][0155]
表7:经由测量的多目标受控-z门的程序
[0156]
命题4.7(通过测量的低深度多目标受控-z)。令(v,e)是一个树,除了根以外,所有的叶子都连接到度数为2的顶点。换句话说,这些叶子中没有一个叶子连接到同一顶点。顶点与量子位相对应。所有非叶辅助量子位都处于正状态。表7中的程序multipletargetcontrolledzmeasure执行多目标受控z门,其中根为控件,而其余叶子为目标。测量深度最多为最大顶点度数加上二。
[0157]
证据。考虑multipletargetcontrolledzmeasure运算如何作用在来自计算基础的输入上。对于每个非根叶子,换句话说,控制运算的目标是在正状态下连接到该非根叶子的唯一顶点。在计算开始时,这种对的状态是|t1>|+>。我们可以按以下方式对量子位进行排序。首先是控制量子位,接下来是与每个目标量子位相对应的新对,以及连接到该目标量子位的量子位,接下来是其余量子位。计算开始时所有量子位的状态如下:
[0158][0159]
在应用扇出运算之后,状态变为:
[0160][0161]
在第一foreach循环之后,根据命题4.6,量子位的状态变为:
[0162][0163]
现在,我们可以看到,以上状态满足了最后两个foreach循环中measureplusone运算中的所有约束。状态|t
k
>|t
k
>满足第二foreach循环中出现的z
v
z
v

约束,而状态|c>|c>满足第三foreach循环中出现的z
v
z
r
约束。在应用了最后两个foreach循环后,根据需要,量子位的状态变为:
[0164][0165]
可以并行执行最后两个foreach循环,因为它们牵涉到不同的量子位。foreach循环中的每个foreach循环的测量深度均为一。因此,总体测量深度是扇出运算的测量深度加二。
[0166]
5.将树嵌入量子位的2d网格中
[0167]
所有数据量子位应当通过辅助路径连接到接口量子位。因此,所有量子位中只有一部分可以是数据量子位,其中其余量子位用作连接辅助。给定具有最近邻(每个内部量子位具有4个邻居)架构的矩形量子位字段,我们可以获取的最多数据量子位是量子位总数的2/3。这是因为辅助(不带边缘)最多可以附接2个数据量子位,而使用另外两个连接,直至附接到另外两个辅助。
[0168]
理想字段配置可能是量子位的3
×
n网格,其中中心行由辅助组成,并且顶部行和底部行为数据量子位。这可能实现数据量子位与总量子位的理想比例为2/3。
[0169]
假设量子位的n
×
n网格,则实现最高数据量子位比例的最佳配置是一个梳子,其中第二列和从#2行开始的每第三行量子位中的量子位2至n是辅助。第一行保留为接口量子位,其余为数据量子位。为了本文中的计算,对要成为数据量子位的接口量子位进行计数。在这种配置中,数据量子位与总量子位的比例为(2n-1)/3n或2/3-1/3n,其非常接近2/3。
[0170]
物理量子位具有一定故障概率。完美矩形网格中的量子位中的一些量子位可能已死(不适合使用)。这不仅减小了可用量子位的数目,而且还破坏了其余量子位之间的连接。例如,辅助路径中可能存在死量子位,从而用作线路的一部分并且损坏对应数据量子位与接口量子位的连接。
[0171]
在给定不规则量子位图的情况下,需要一种算法来创建最优量子位布局。然而,这种算法将需要非多项式执行时间,从而使其不切实际。根据所公开的技术,提供了接近最佳的基于启发式的算法。
[0172]
给定上文所描述的梳子的开始布局,该算法确定与接口量子位断开连接的图的片段,并且尝试重新连接它们,从而启用尽可能多的数据量子位。从接口量子位开始,如果连续水平辅助线段连接到接口,我们可以将它们标记为被通电。对于每个通电分段,我们可以对从该通电分段延伸的所有可能垂直路线进行排队。从分段末端开始的路线进入高优先级队列,而其余路线进入普通优先级队列。
[0173]
然后,对于每个被排队的路线(从高优先级路线开始),我们可以确定该路线是否连接了先前未通电的辅助分段,如果是,则接受该路线,将辅助分段标记为被通电,并且添加从新近通电的分段开始到队列的更多可能路线。被接受的每个路线都会将两个数据量子位转换为辅助。这一直持续到队列为空。分段末尾的路线是优选的,因为它们向一个或两个
附加数据量子位(紧挨着死辅助)提供功率,而从中间分段发出的路线则不向一个或两个附加数据量子位提供功率。
[0174]
每个死数据量子位导致我们的比例损失一个数据量子位。每个死辅助导致不向两个数据量子位通电,并且分离辅助分段。重新附接辅助分段需要使用两个数据量子位,并且很可能会重新为断开连接的量子位中的一个量子位供电。因此,每个死辅助很可能导致丢失3个数据量子位。
[0175]
6.示例性多目标cnot门的其他实施例
[0176]
如可以在所公开的技术的实施例中所使用的,本章节公开了用于在majorana架构中实现多目标cnot门的更多细节。
[0177]
6.1.介绍。在诸如majorana量子位晶格之类的基于测量的架构中,可以使用辅助量子位通过四个测量序列来实现cnot门。依序应用该电路,我们可以使用其中深度为4m时间线性为m的m个目标实现多目标cnot门。在本章节中,公开了基于单量子位测量和二量子位测量的多目标cnot门的恒定深度实现方式。就测量水平的数目而言,该电路的深度为五(三个二量子位测量和两个单量子位测量)。每个目标需要一个辅助。该实现方式非常适合于majorana量子位网格。
[0178]
以下电路由单量子位泡利测量和二量子位泡利测量组成。每个测量m后跟clifford更新u(p),该clifford更新u(p)意味着clifford运算p是一个经典受控门,该clifford运算p仅当测量m的结果为1时才应用。更新u(p)在电路中表示为与m的先前测量盒相同的盒,但不一定只在m的支持下起作用。我们对majorana量子位的背景特别感兴趣。然后,通过改变帧,在不对量子位进行任何物理动作的情况下,可以实现单量子位clifford运算。特别地,clifford的所有更新都是免费的。这就是为什么将深度视为测量水平的数目的原因。
[0179]
6.2.通过测量的cnot门。在本小节中,回顾一下,使用单量子位测量和二量子位测量以及辅助量子位的cnot门的实现方式。图1是表示实现顶部量子位与底部量子位之间的cnot门的电路的示意性框图100。中间量子位是cnot门所需的辅助。更具体地,蓝色门准备辅助量子位,紫色门将该蓝色门与控制量子位纠缠在一起,红色门在辅助和目标量子位上起作用。
[0180]
用|ψ>=α|0>+β|1>表示控制量子位(量子位1),令为目标量子位(量子位3)。我们可以检查图1的电路实现了cnot门。为了简化计算,我们可以表明在最后一个量子位上没有h共轭的情况下,该电路实现了cz门。添加两个h门可以提供cnot门。
[0181]
·
第一测量m
x
(在结果为1的情况下,后跟更新u(z2))准备处于|+>状态的辅助量子位。然后,量子位1和2的组合状态如下:
[0182]
|ψ0>=α|00>+α|01>+β|10>+β|11>。
[0183]
结果为0的测量z1z2,将量子位1和2的状态投影到如下的状态上:
[0184]
|ψ1>=α|00>+β|11>。
[0185]
如果获得结果1,则我们获得状态α|01>+β|10>,该状态α|01>+β|10>通过更新u(x2)被映射到|ψ1>。
[0186]
·
门h2在前两个量子位上导致|ψ2>=α|00>+α|01>+β|10>+(-1)β|11>,然后,(在不
考虑h3的情况下)三量子位状态如下:
[0187]
|ψ2>=αα

|000>+αα

|010>+βα

|100>+(-1)βα

|110>+αβ

|001>+αβ

|011>+ββ

|101>+(-1)ββ

|111>
[0188]
·
如果的结果为0,则测量后状态如下:
[0189]
|ψ3>=αα

|000>+βα

|100>+αβ

|011>+(-1)ββ

|111>。
[0190]
如果测量的结果为1,则测量后的状态如下:
[0191]
αα

|010>+(-1)βα

|110>+αβ

|001>+ββ

|101>,
[0192]
我们可以通过更新u(z1x2)将其映射到|ψ3>。
[0193]
·
最后,通过测量x来除去辅助。假设结果为0,则我们在m
x
之后的量子位1和3上获得以下状态:
[0194]
|ψ4>=αα

|00>+βα

|10>+αβ

|01>+(-1)ββ

|11>。
[0195]
我们认识到应用于|ψ>和|φ>的控制-z门。如果mx的结果为1,则我们获取以下状态:
[0196]
αα

|00>+βα

|10>+(-1)αβ

|01>+ββ

|11>。
[0197]
需要校正u(z3)才能将其映射到|ψ4>上。在cnot门中,该校正通过h共轭,并且变为u(x3)。
[0198]
这证明了图1的电路实现了cnot门。
[0199]
6.3.多目标cnot门。多目标cnot门将x门应用于一组m个量子位q1,...,q
m
,其在唯一控制量子位q0的状态下被控制。它可以轻易地由m个cnot门的序列cnot(q0,q
i
)来实现,其中i=1,...,m。因此,多目标cnot门的深度在目标的数目上至多是线性的。在本章节中,示出了如何使用每个目标的一个辅助量子位实现恒定深度的多目标门。虽然相同辅助量子位可以重新用于m个cnot门的顺序实现方式,但是针对恒定深度实现方式,消耗m个辅助。
[0200]
在二目标cnot门的情况下,图2至图4示出了用于将电路深度减小至恒定值的顺序实现方式的变换。
[0201]
图2是示出了通过测量提供多目标cnot门的示例的示意性框图200。特别地,框图200图示了cnot电路的示例顺序应用。图3是图示了框图200的修改的示意性框图300,其将紫色测量向左移动以对辅助与目标之间的最后红色块进行并行化之后的示例顺序。图4是还图示了修改初始测量以对控制量子位与辅助之间的紫色块进行并行化(仅当存在两个以上目标时,这种并行化的效果才会出现)的示意性框图400。
[0202]
如所图示的,该变换可以分两个步骤执行。首先,我们将控制量子位与辅助之间的联合测量m
zz
移动到过去。这使得我们可以对在辅助和目标上起作用的电路的最后块进行并行化。在第二步骤中,我们可以使用单个测量(其涉及控制量子位q0)和m-1次测量(其位于可以在深度2中实现的辅助量子位上)来替换m次测量(其涉及控制量子位)。
[0203]
图5的示意性框图500中针对四个目标表示的通用电路的工作原理如下:
[0204]
·
(i)[辅助准备(蓝色)]通过测量准备m个辅助量子位a1,...,a
m
上的m量子位猫态|0...0>+|1...1>。这可以在两个测量层中进行(随后进行更新)。
[0205]
·
(ii)[控制块(紫色)]通过测量使辅助量子位与控制量子位q0纠缠在一起。更新在非零结果的情况下应用。
[0206]
·
(iii)[目标块(红色)]通过与所有目标平行的测量,应用标准cnot的目标块。
[0207]
为了检查该电路实现如所要求保护的多目标cnot,只需检查电路将任何泡利算子映射到与多目标cnot门相同的泡利算子上。给定用p
c
表示的泡利矩阵p,泡利算子在控制量子位上用作p,并且在所有其他量子位上平凡地起作用。同样,p
ai
在第i个辅助上起作用,而p
ti
在第i个目标上起作用。多目标cnot门的特征在于其在泡利算子上的操作,如下:
[0208][0209][0210][0211][0212]
将这些泡利算子传播通过电路,我们可以很容易检查电路满足这些恒等式。比如,我们可以通过图6中的电路传播运算x
c
。特别地,图6是通过电路传播泡利算子x
c
的电路的示意性框图600。我们可以检查电路按预期将x
c
映射到上。
[0213]
这证明了它实现了期望多目标cnot运算。
[0214]
6.4.二维布局。这种多目标cnot门可以在majorana量子位网格中实现,在该majorana量子位网格中,所有单量子位m
x
、m
z
都可用,以及相邻量子位之间的泡利算子p1p2的二量子位测量也可用。
[0215]
比如,我们可以考虑准备好猫态的一串m个辅助量子位,该一串m个辅助量子位通过其端点中的一个端点连接到控制量子位。每个辅助都可以到达直接位于其下方的目标量子位。这允许本地实现在本注释中描述的多目标cnot门。图7是表示图6的多目标cnot门的平面布局的框图700。
[0216]
7.示例实施例
[0217]
在本章节中,公开了用于执行所公开的实施例的各个方面的示例方法。因为所公开的方法动作可以单独、按不同次序或至少部分彼此同时执行,所以所描述的特定实施例不应解释为限制性的。进一步地,所公开的方法或方法动作中的任一方法或方法动作可以使用本文中公开的任何其他方法或方法动作来执行。
[0218]
图8是根据所公开的技术的实施例的用于执行用于容错量子计算的布局简化技术的示例方法。在特定实施例中,该方法由一个或多个经典计算设备执行,其中至少一些经典计算设备采用可以操作量子计算机的配置。
[0219]
在810处,任意量子电路的布局被简化为多量子位泡利矩阵的指数和多量子位泡利矩阵的测量的布局。
[0220]
在812处,量子计算机被配置为实现经简化的布局。
[0221]
在特定实现方式中,量子计算机的量子位包括数据量子位、接口量子位、以及辅助
量子位。在其他实现方式中,量子位连接图(agraph of quibit connectivity)满足提供从一个或多个数据量子位到接口量子位的辅助路径的条件。
[0222]
图9是根据所公开的技术的实施例的用于执行用于容错量子计算的布局技术的示例方法。在特定实施例中,该方法由一个或多个经典计算设备执行,其中至少一些经典计算设备处于可以操作量子计算机的配置中。
[0223]
在910处,量子位被标记为用于2d最近邻量子位连接图的数据量子位、接口量子位或辅助量子位之一。
[0224]
在912处,提供从相应数据量子位到相应接口量子位的辅助路径。
[0225]
在914处,量子计算机被配置为实现从相应数据量子位到相应接口量子位的辅助路径。
[0226]
在某些实现方式中,该方法考虑并避免了任何破损的量子位,并且满足了提供从数据量子位到接口量子位的辅助路径的条件。
[0227]
上文所描述的方法中的任一方法都可以在一种系统中执行,该系统包括量子计算设备;以及一个或多个经典计算设备,其中一个或多个经典计算设备中的至少一些经典计算设备被编程为执行所公开的方法中的任一方法。
[0228]
附加地,上文所描述的方法中的任一方法可以被实现为存储经典计算机可执行指令的一个或多个经典计算机可读介质,该经典计算机可执行指令当由经典计算机执行时,使得经典计算机执行所公开的方法中的任一方法。
[0229]
其他实施例包括一种量子电路,该量子电路被配置为应用多量子位泡利矩阵的指数并且测量多量子位泡利矩阵。在一些实现方式中,提供从数据量子位到接口量子位的辅助路径。在其他实现方式中,量子电路的深度不取决于顶点的数目。在一些实现方式中,量子电路使用单深度多目标cnot门或低深度多目标cnot门作为子电路。
[0230]
一些实施例包括一种量子电路,该量子电路被配置为:(a)使用单量子位泡利测量和二量子位泡利测量以及单量子位clifford门提供多目标cnot门;或(b)使用单量子位、泡利测量、单量子位clifford门和受控-z门提供多目标cnot门。在一些实现方式中,量子电路使用单量子位泡利测量和二量子位泡利测量以及单量子位clifford门提供多目标cnot门,其中量子电路对量子位起作用,对于这些量子位,量子位连接图满足提供从目标量子位到控制量子位的辅助路径的条件。在其他实现方式中,量子电路使用单量子位泡利测量和二量子位泡利测量以及单量子位clifford门提供多目标cnot门,其中量子电路的深度不取决于顶点的数目。在一些实现方式中,量子电路被配置为使用单量子位、泡利测量、单量子位clifford门和受控-z门来提供多目标cnot门,并且其中量子电路对量子位起作用,对于这些量子位,量子位连接图满足提供从目标量子位到控制量子位的辅助路径的条件。在其他实现方式中,量子电路被配置为使用单量子位、泡利测量、单量子位clifford门和受控-z门提供多目标cnot门,其中量子电路的深度不取决于顶点的数目。
[0231]
另一实施例是一种方法,该方法包括:以低深度实现交换多量子位泡利矩阵的指数的乘积,其中可以并行执行非clifford门。
[0232]
附加实施例是一种用于使用单量子位泡利测量和二量子位泡利测量提供多目标cnot门的量子电路。在一些实现方式中,量子电路还包括2d最近邻架构。在某些实现方式中,量子电路包括量子位的3n网格,该3n网格具有数据量子位的中心行或中心列,每个相应
数据量子位还直接连接到两个辅助量子位。在一些实现方式中,量子电路包括梳状架构,该梳状架构具有数据量子位的中心行或中心列,每个相应数据量子位还直接连接到一个辅助量子位,从而形成梳状架构。在某些实现方式中,量子电路是低恒定深度量子电路。在一些实现方式中,量子电路的深度等于描述该量子电路的树的最大顶点度。
[0233]
另一实施例包括一种用于计算多量子位泡利矩阵的指数的量子电路。在一些实现方式中,多量子位泡利矩阵是二量子位泡利矩阵。在某些实现方式中,量子电路是低恒定深度量子电路。在其他实现方式中,量子电路的深度等于描述该量子电路的树的最大顶点度。
[0234]
另一实施例是一种方法,包括:将任意量子电路的布局简化为多量子位泡利矩阵的指数的布局。
[0235]
另一实施例是一种方法,包括:以低深度实现交换多量子位泡利矩阵的指数的乘积,其中可以并行执行非clifford门。
[0236]
另一实施例是一种计算机实现方法,其构建用于给定量子位连接图的数据量子位/辅助量子位布局,并且满足提供从每个数据量子位到接口量子位的辅助路径的条件。在一些实现方式中,该方法考虑并避免了任何破损的量子位。
[0237]
同样,上文所描述的方法中的任一方法可以被实现为存储经典计算机可执行指令的一个或多个经典计算机可读介质,该经典计算机可执行指令当由经典计算机执行时,使得经典计算机执行所公开的方法中的任一方法。
[0238]
8.计算环境示例
[0239]
图10图示了其中可以实现所描述的实施例中的几个实施例的合适经典计算环境1000的概括示例。由于本文中所描述的技术和工具可以在具有计算硬件的各种通用环境或专用环境中实现,所以计算环境1000不旨在提出对所公开的技术的使用范围或功能的任何限制。
[0240]
参考图10,计算环境1000包括至少一个处理设备1010和存储器1020。在图10中,这种最基本配置1030包括在虚线内。处理设备1010(例如,cpu或微处理器)执行计算机可执行指令。在多处理系统中,多个处理设备执行计算机可执行指令以提高处理能力。存储器1020可以是易失性存储器(例如,寄存器、高速缓存、ram、dram、sram)、非易失性存储器(例如,rom、eeprom、闪存)、或两者的某个组合。存储器1020存储软件1080,该软件1080用于使用经典计算机和/或量子计算机,以实现用于执行本文中所公开的容错量子计算机的布局技术中的任一布局技术的工具。例如,存储器1020可以存储用于控制量子电路以实现所公开的近似技术的实施例的软件。存储器1020还可以存储用于合成、生成(或编译)和/或控制如本文中所描述的量子电路的软件1080。
[0241]
计算环境可以具有附加特征。例如,计算环境1000包括存储器1040、一个或多个输入设备1050、一个或多个输出设备1060、以及一个或多个通信连接1070。诸如总线、控制器或网络之类的互连机构(未示出)互连计算环境1000的部件。通常,操作系统软件(未示出)向在计算环境1000中执行的其他软件提供操作环境,并且协调计算环境1000的部件的活动。
[0242]
存储装置1040可以是可移除式或不可移除式,并且包括一个或多个磁盘(例如,硬盘驱动器)、固态驱动器(例如,闪存驱动器)、磁带或盒式磁带、cd-rom、dvd、或可以用于存储信息并且可以在计算环境1000中被访问的任何其他有形非易失性存储介质。存储器1040
还可以存储用于软件1080的指令,该软件1080使用经典计算机和/或量子计算机,以实现用于执行所公开的容错量子计算机的布局技术中的任一布局技术的工具。例如,存储器1020可以存储用于控制量子电路以实现所公开的布局技术的实施例的软件。存储器1040还可以存储用于软件1080的指令,该软件1080用于合成、生成(或编译)和/或控制如本文中所描述的量子电路。
[0243]
一个或多个输入设备1050可以是触摸输入设备,诸如键盘、触摸屏、鼠标、笔、轨迹球、话音输入设备、扫描设备、或向计算环境1000提供输入的另一设备。一个或多个输出设备1060可以是显示设备(例如,计算机监视器、膝上型计算机显示器、智能电话显示器、平板显示器、上网本显示器、或触摸屏)、打印机、扬声器、或提供来自计算环境1000的输出的另一设备。
[0244]
一个或多个通信连接1070使得能够通过通信介质与另一计算实体进行通信。通信介质以经调制的数据信号传达诸如计算机可执行指令或其他数据之类的信息。经调制的数据信号是一种信号,该信号的特点中的一个或多个特点以对该信号中的信息进行编码的方式被设置或改变。作为示例而非限制,通信介质包括利用电、光、rf、红外、声或其他载体实现的有线技术或无线技术。
[0245]
如所指出的,在一个或多个计算机可读介质上存储的计算机可读指令的一般上下文中,可以对各种方法、量子电路控制技术或编译/合成技术进行描述。计算机可读介质是可以在计算环境内或由其访问的任何可用介质(例如,存储器或存储设备)。计算机可读介质包括有形计算机可读存储器或存储设备,诸如存储器1020和/或存储装置1040,本身并不包括传播的载波或信号(有形计算机可读存储器或存储设备本身不包括传播的载波或信号)。
[0246]
在由处理器在计算环境中执行的计算机可执行指令(诸如程序模块中包括的计算机可执行指令)的一般上下文中,还可以对本文中所公开的方法的各种实施例进行描述。通常,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、库、对象、类、组件、数据结构等。在各种实施例中,根据需要,程序模块的功能可以在程序模块之间组合或拆分。用于程序模块的计算机可执行指令可以在本地计算环境或分布式计算环境内执行。
[0247]
在图11中,对用于实现根据所公开的技术的系统的可能网络拓扑1100(例如,客户端-服务器网络)的示例进行了描绘。联网计算设备1120可以是例如运行浏览器或连接到网络1112的其他软件的计算机。计算设备1120可以具有如图10所示和上文所讨论的计算机架构。计算设备1120不限于传统个人计算机,而且还可以包括被配置为连接到网络1112并且与之通信的其他计算硬件(例如,智能电话、膝上型计算机、平板计算机或其他移动计算设备、服务器、网络设备、专用设备等)。进一步地,计算设备1120可以包括fpga或其他可编程逻辑设备。在所图示的实施例中,计算设备1120被配置为经由网络1112与计算设备1130(例如,远程服务器,诸如云计算环境中的服务器)通信。在所图示的实施例中,计算设备1120被配置为将输入数据传输到计算设备1130,并且计算设备1130被配置为:实现根据所公开的实施例中的任一实施例的量子电路控制技术,和/或实现用于生成与本文中所公开的技术中的任一技术一起使用的量子电路的电路生成或编译/合成方法。计算设备1130可以将结果输出到计算设备1120。从计算设备1130接收的数据中的任一数据都可以存储或显示在计算设备1120上(例如,在计算设备1120处,作为数据在图形用户界面或网页上显示)。在所图
示的实施例中,所图示的网络1112可以使用有线联网(例如,以太网ieee标准802.3或其他适当标准)或无线联网(例如,ieee标准802.11a、802.11b、802.11g或802.11n或其他适当标准中的一个标准)实现为局域网(lan)。可替代地,网络1112的至少一部分可以是互联网或类似公共网络,并且使用适当协议(例如,http协议)操作。
[0248]
在图12中,对用于实现根据所公开的技术的系统的可能网络拓扑1200(例如,分布式计算环境)的另一示例进行了描绘。联网计算设备1220可以是例如运行浏览器或连接到网络1212的其他软件的计算机。计算设备1220可以具有如图10所示和上文所讨论的计算机架构。在所图示的实施例中,计算设备1220被配置为经由网络1212与多个计算设备1230、1231、1232(例如,远程服务器或其他分布式计算设备,诸如云计算环境中的一个或多个服务器)通信。在所图示的实施例中,计算环境1200中的计算设备1230、1231、1232中的每个计算设备用于:执行根据所公开的实施例中的任一实施例的量子电路控制技术的至少一部分,和/或执行用于生成与本文中所公开的技术中的任一技术一起使用的量子电路的电路生成或编译/合成方法。换句话说,计算设备1230、1231、1232形成分布式计算环境,其中在多个计算设备之间共享量子电路控制和/或生成/编译/合成过程。计算设备1220被配置为将输入数据传输到计算设备1230、1231、1232,该计算设备1230、1231、1232被配置为包括执行所公开的方法中的任一方法或创建所公开的电路中的任一电路在内的分布式实现(诸如处理),并且向计算设备1220提供结果。从计算设备1230、1231、1232接收的数据中的任一数据都可以存储或显示在计算设备1220上(例如,在计算设备1220处,作为数据在图形用户界面或网页上显示)。所图示的网络1212可以是上文关于图11所讨论的网络中的任一网络。
[0249]
参考图13,用于实现所公开的技术的示例性系统包括计算环境1300。在计算环境1300中,编译的量子计算机电路描述(包括所公开的布局技术中的任一布局技术所生成的量子电路在内)可以用于编程(或配置)一个或多个量子处理单元,使得一个或多个量子处理单元实现量子计算机电路描述所描述的电路。
[0250]
环境1300包括一个或多个量子处理单元1302和一个或多个读出设备1308。该一个或多个量子处理单元执行量子计算机电路描述所预先编译和描述的量子电路。量子处理单元可以是但不限于以下各项中的一项或多项:(a)超导量子计算机;(b)离子阱量子计算机;(c)用于量子计算的容错架构;和/或(d)拓扑量子架构(例如,使用majorana零模式的拓扑量子计算设备)。在量子处理器控制器1320的控制下,包括所公开的电路中的任一电路在内的预先编译的量子电路可以经由控制线1306发送到(或以其他方式应用于)一个或多个量子处理单元。量子处理器控制器(qp控制器)1320可以与经典处理器1310(例如,具有如上文关于图10所描述的架构)一起操作以实现期望量子计算过程。在所图示的示例中,qp控制器1320还经由一个或多个qp子控制器1304实现期望量子计算过程,该一个或多个qp子控制器1304尤其适于控制一个或多个量子处理器1302中的一个对应量子处理器。比如,在一个示例中,量子控制器1320便于通过向一个或多个存储器(例如,低温存储器)发送指令而实现所编译的量子电路,该一个或多个存储器然后将这些指令传递到一个或多个低温控制单元(例如,一个或多个qp子控制器1304),比如,该一个或多个低温控制单元将表示门的脉冲序列传输到一个或多个量子处理单元1302以供实现。在其他示例中,一个或多个qp控制器1320和一个或多个qp子控制器1304操作以向一个或多个量子处理器提供适当磁场、经编码的操作或其他这种控制信号,以实现所编译的量子计算机电路描述的操作。一个或多个量
子控制器还可以与读出设备1308交互以帮助控制并实现期望量子计算过程(例如,一旦可用就通过从量子处理单元中读取或测量出数据结果等)。
[0251]
参考图13,编译是将量子算法的高级描述转换为包括量子运算或门序列的量子计算机电路描述的过程,该量子运算或门序列可以包括本文中所公开的电路。编译可以由编译器1322使用环境1300的经典处理器1310(例如,如图10所示)来执行,该经典处理器1310从存储器或存储设备1312加载高级描述并且将所得量子计算机电路描述存储在存储器或存储设备1312中。
[0252]
在其他实施例中,编译和/或验证可以由远程计算机1360(例如,具有如上文关于图10所描述的计算环境的计算机)远程执行,该远程计算机1360将所得量子计算机电路描述存储在一个或多个存储器或存储设备1362中、并且将量子计算机电路描述传输到计算环境1300,以供在一个或多个量子处理单元1302中实现。还进一步地,远程计算机1300可以将高级描述存储在存储器或存储设备1362中、并且将高级描述传输到计算环境1300,以供使用一个或多个量子处理器进行编译并且与其一起使用。在这些场景中的任一场景中,一个或多个量子处理器所执行的计算结果可以在计算过程之后和/或期间传达到远程计算机。更进一步地,远程计算机可以与一个或多个qp控制器1320通信,使得量子计算过程(包括任何编译、验证和qp控制过程)可以由远程计算机1360远程控制。一般而言,远程计算机1360经由通信连接1350与qp控制器1320、编译器/合成器1322和/或验证工具1323通信。
[0253]
在特定实施例中,环境1300可以是云计算环境,其经由合适网络(其可以包括互联网)将环境1300的量子处理资源提供给一个或多个远程计算机(诸如远程计算机1360)。
[0254]
9.结论
[0255]
已经参考所图示的实施例对所公开的技术的原理进行了描述和说明,应当认识到,在没有背离这样的原理的情况下,可以对所图示的实施例进行布置和细节的修改。比如,以软件示出的所图示的实施例的元件可以以硬件实现,反之亦然。此外,来自任何示例的技术可以与在其他示例中的一个或多个示例中所描述的技术结合。应当领会,诸如参考所图示的示例所描述的过程和功能之类的过程和功能可以在单个硬件或软件模块中实现,或可以提供单独模块。为了方便说明提供上述特定布置,并且可以使用其他布置。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1