CN114072817A - 量子电路的优化方法和系统 - Google Patents

量子电路的优化方法和系统 Download PDF

Info

Publication number
CN114072817A
CN114072817A CN202080025347.5A CN202080025347A CN114072817A CN 114072817 A CN114072817 A CN 114072817A CN 202080025347 A CN202080025347 A CN 202080025347A CN 114072817 A CN114072817 A CN 114072817A
Authority
CN
China
Prior art keywords
pauli
quantum circuit
gate
door
circuit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202080025347.5A
Other languages
English (en)
Other versions
CN114072817B (zh
Inventor
陈建鑫
张芳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Publication of CN114072817A publication Critical patent/CN114072817A/zh
Application granted granted Critical
Publication of CN114072817B publication Critical patent/CN114072817B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena

Landscapes

  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Logic Circuits (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Optical Modulation, Optical Deflection, Nonlinear Optics, Optical Demodulation, Optical Logic Elements (AREA)

Abstract

本公开提供了量子电路的更新方法、更新系统和非易失性计算机可读介质。该方法包括:将初始量子电路转换为中间量子电路,其中,该中间量子电路是第一个克里福德门之后的第一组式(a)泡利旋转门;并且通过对所述第一组式(a)泡利旋转门中的每个式(a)泡利旋转门进行以下操作,生成更新后的量子电路,所述更新后的量子电路是第二个克里福德门之后的第二组式(a)泡利旋转门:在第二组式(a)泡利旋转门之后插入新的式(a)泡利旋转门,其中,新的式(a)泡利旋转门对应于第一组式(a)泡利旋转门中的当前的式(a)泡利旋转门,通过左乘第二个克里福德门和右乘第二个克里福德门的共轭转置实现;扫描第二组式(a)泡利旋转门以确定在非交换的式(a)泡利旋转门之前是否存在匹配的式(a)泡利旋转门,响应于确定存在匹配的式(a)泡利旋转门,从第二组式(a)泡利旋转门中移除匹配的式(a)泡利旋转门和新的式(a)泡利旋转门,如果匹配的式(a)泡利旋转门和新的式(a)泡利旋转门具有相反的符号,则采用新的克里福德门替换第二个克里福德门,其中,新的克里福德门对应于当前第二个克里福德门,通过左乘两次新的式(a)泡利旋转门实现。

Description

量子电路的优化方法和系统
相关申请的交叉引用
本公开要求在2019年3月29日提交的美国临时专利申请No.62/825,949和2020年2月19日提交的美国专利申请No.16/795,416的优先权,这两份专利申请的全部内容在此引入本公开作为参考。
技术领域
本公开涉及量子计算领域,尤其是涉及一种量子电路的优化方法、优化系统和非易失性计算机可读介质。
背景技术
量子计算机提供了执行一些对于经典计算机而言无法胜任的任务的能力。这些任务将给许多工程学科带来巨大的进步,并实现有价值的目标,例如发现新材料,合成更好的药物,以及创造更多能量密集型电池。然而,目前的量子计算机对它们能够成功实现的算法具有严重的限制。因此,有必要优化量子算法以使得在现实世界量子硬件上实现量子算法时,具有足够的资源来解决有用的问题。
发明内容
本公开提供用于优化量子电路的方法、系统和非易失性计算机可读介质。该方法包括:将初始量子电路转换为中间量子电路,其中,所述中间量子电路是第一个克里福德门之后的第一组
Figure BDA0003283152210000011
泡利旋转门;并且通过对所述第一组
Figure BDA0003283152210000012
泡利旋转门中的每个
Figure BDA0003283152210000013
泡利旋转门进行以下操作,生成更新后的量子电路,所述更新后的量子电路是第二个克里福德门之后的第二组
Figure BDA0003283152210000014
泡利旋转门:在所述第二组
Figure BDA0003283152210000015
泡利旋转门之后插入新的
Figure BDA0003283152210000016
泡利旋转门,其中,所述新的
Figure BDA0003283152210000017
泡利旋转门对应于所述第一组
Figure BDA0003283152210000018
泡利旋转门中的当前
Figure BDA0003283152210000019
泡利旋转门,通过所左乘述第二个克里福德门和右乘所述第二个克里福德门的共轭转置实现,扫描所述第二组
Figure BDA00032831522100000110
泡利旋转门以确定在非交换的
Figure BDA00032831522100000111
泡利旋转门之前是否存在匹配的
Figure BDA00032831522100000112
泡利旋转门;响应于确定存在所述匹配的
Figure BDA00032831522100000113
泡利旋转门,从所述第二组
Figure BDA00032831522100000114
泡利旋转门中移除所述匹配的
Figure BDA00032831522100000115
泡利旋转门和所述新的
Figure BDA00032831522100000116
泡利旋转门,并且如果所述匹配的
Figure BDA00032831522100000117
泡利旋转门和所述新的
Figure BDA00032831522100000118
泡利旋转门具有相反的符号,则采用新的克里福德门替换所述第二个克里福德门,其中,所述新的克里福德门对应于当前第二个克里福德门,通过左乘两次所述新的
Figure BDA00032831522100000119
泡利旋转门实现。
所公开的实施方式的另外的目的和优点将部分地在以下描述中阐述,并且部分地将从描述中变得明显,或者可以通过实施这些实施方式来学习。所公开的实施方式的目的和优点可以通过权利要求中阐述的要素和组合来实现和获得。
应当理解,前面的一般性描述和下面的详细描述仅是示例性和说明性的,并不限制所要求保护的本公开。
附图说明
在以下的具体实施方式和附图中说明了本公开的实施方式和各个方面。图中所示的各种特征没有按比例绘制。
图1是单个量子比特(qubit)的布洛赫球的简化示意图。
图2是一个示例性的Mod54量子电路。
图3是根据本公开的一些实施方式的如何更新量子电路的示例性方法的流程图。
图4是根据本公开的一些实施方式的一个示例性实施例相对于现有解决方案的基准测试结果。
图5是根据本公开的一些实施方式的一种示例性的量子电路的更新系统。
具体实施方式
现在将详细参考示例性实施方式,其示例在附图中示出。以下描述参考附图,其中不同附图中的相同数字表示相同或类似的元件,除非另有说明。在示例性实施方式的以下描述中阐述的实现方式并不代表符合本公开的所有实现方式。取而代之,它们仅仅是与所附权利要求中所述的与本公开相关的方面一致的装置和方法的示例。下文更详细地描述本公开的特定方面。如果与通过引用并入的术语和/或定义相冲突,则以本文提供的术语和定义为准。
计算机在现代社会中随处可见。无论如何,在生活的各个方面均会涉及到计算机。这包括直接涉及(例如智能电话和膝上型电脑)和间接涉及(例如汽车中的微控制器或水净化厂中的控制系统)。计算机的普遍性和重要性类似地反映在几乎各个行业中。由于这种重要性,计算机作为一类事物对社会非常有价值。在很大程度上,这种重要性是以计算机的能力为条件的,即这些计算机可以做什么。特别地,如果一台计算机可以执行一项任务,则与人类执行该项任务相比,计算机的执行速度更快并且规模更大。这对社会是格外有益的,因为这些任务现在可以在没有人类参与的情况下完成(并且在通常情况下成本更低),从而解放人类以集中精力在其他任务上。因此,计算机的一个极其重要的方面是计算机可以执行什么任务。
通常而言,计算机的能力受两个方面约束(或从相反的角度看,由两个方面来支持):硬件和软件。本质上,计算机(在抽象意义上,是能够执行“计算”的理想化机器)必须在待使用的某种类型的硬件(例如,物质的物理配置)上实现。因为是物理的,所以无论使用什么硬件来实现计算机都受到物理施加的各种限制。特别地,物理学施加了限制,使得用于实现计算机的任何硬件将必然对计算机的性能特性产生上限,诸如可用的存储器量或每秒的操作次数。
一旦计算机被物理地实现,其基本上是空闲的,直到计算机被给予要“计算”的东西。换言之,计算机在被另外指示之前不做任何事情。因此,为了使计算机解决任务,必须向计算机提供一组指令,以在遵循该指令时完成期望的任务。这组指令被称为程序,其共同构成软件。反之,创建解决任务的程序的能力在很大程度上受到两个方面的约束:数学算法和如何解决给定任务的知识。虽然有些模糊,但是数学算法可以被认为是程序的基本构建块,其为是解决数学问题的一系列步骤。这不同于程序,程序是一系列解决一些(不一定是数学上的)“现实世界”问题的步骤。为了创建解决任务的程序,程序员使用算法的某种组合来提供一系列步骤,如果遵循这些步骤,则解决期望的任务。这要求计算机程序员知道什么算法(在被使用时)可以执行期望的步骤。关键的是,还要求计算机程序员知道需要什么步骤来解决期望的任务。缺乏这些知识将无法创建解决给定任务的程序。
通常,这三个方面中的每一个都递增地推进晶体管收缩,使得计算机更快一些,并且设计新的算法,使得程序更有效一些。这意味着通常计算机能力的增加也是类似地增加。然而,偶尔在一个方面中存在急剧增加计算机能力的进步。一种这样的进步是机器学习的兴起,其涉及创建能够自主地找到(“学习”)解决问题所必需的步骤的系统。这导致了解决任务的能力,这些任务以前没有被充分理解来创建显式程序。对于类似的进步,另一个极有前景的途径是创建量子计算机。
量子计算机提供了执行某些任务(等同于解决某些问题)的能力,这些任务被认为对经典计算机(包括任何可能的未来经典计算机)是难以处理的。为了理解其原因,需要对计算复杂性理论做一个概述。计算复杂性理论是理论计算机科学的一个分支,理论计算机科学的关注点在于:根据“计算问题”的“难度”对“计算问题”进行分类。“计算问题”可以被概念化为确定某类数学对象(例如图、数字、或字符串)的任何实例的特定属性。虽然看上去是抽象的,但是任何现实世界任务最终都可以被分解为确定一些相应数学对象的特定属性。另外,正被解决的数学对象(关于某些计算问题)的特定实例通常被概念化为长度为n的位序列,例如:多个1和多个0,其中n的大小依赖于正被解决的特定实例。
然后,“计算问题”的“难度”由最佳算法在给定输入(即,相关数学对象的实例)的情况下确定关注的特定属性而需要的资源数目来定义。通常,算法解决针对某些输入的计算问题而需要的资源量通常作为n的函数而变化。例如,针对大小为n的输入,算法可以采用5n3+12n2+2n+logn+113个步骤。然而,通常使用所谓的大O符号来评估算法的渐近复杂性。随着n趋向无穷大,大O符号专注算法的渐近行为。更具体地,大O符号聚焦于随着n趋向无穷大,函数的增长率。因为当xn<xm
Figure BDA0003283152210000041
并且因为任何系数是常数,关于大O符号的算法,仅考虑n的最快生长因子。例如,在大O符号中,上面考虑的算法使用的步骤数量将是O(n3)。如果算法对于一些k(例如,具有不超过多项式增长)具有O(nk)个步骤的渐近复杂性,则通常认为该算法是有用的。并且如果算法对于一些k(例如,具有超过多项式增长)采用O(kn),则通常认为该算法是不切实际的。如果任何“计算问题”的最佳可能算法具有O(kn)或更大的渐近复杂性,则该“计算问题”被称为是难以处理的(即,数学上可能,但物理上不可实现)。
到目前为止,所测量的两个最有关的资源是算法针对特定输入来解决特定“计算问题”而需要的“时间”量和“存储”量。然而,因为要使用算法就必须在某些系统上来实现,并且因为算法可用的元语依赖于所使用的系统,所以必须针对某些“计算模型”来测量算法所使用的“时间”或“存储”的量,在基本术语中,“计算模型”为某些计算机系统的理想模型。用于此目的的默认模型被称为图灵机。虽然在图灵机与实现算法的现实世界计算机之间,算法消耗的资源的确切数量会发生变化,但是当使用大O符号来评估算法时,确切数量发生变化通常是不重要的,因为体系结构差异通常不影响算法的渐近行为,其原因在于,一般而言,图灵机仅使用其自身的恒定数量的元语就可以实现任何现实世界系统的元语。因此,只有在常系数,现实世界计算机的效率可能比图灵机的效率略高或略低。
然而,量子计算机破坏了这种断言。结果是,通过利用量子力学的某些方面的优势,量子计算机中可用的元语不能通过使用固定数量的图灵机元语在图灵机上实现。这意味着,对于某些问题,量子计算机(或其理想化的数学对应物,量子图灵机)能够通过数目为多项式的步骤来解决问题,而经典计算机只能通过数目为指数的步骤来解决该问题。这意味着,对于某些“计算问题”,关于量子计算机(其理想化的模拟是量子图灵机)的计算复杂性相对于输入的大小是多项式的,而不是经典图灵机那样是指数的。这允许量子计算机解决经典计算机基本上不能解决的问题。
考虑到量子计算机能够解决经典计算机基本上不能解决的问题,量子计算机能够给社会带来巨大的利益。作为一个实例,量子计算机能够极大地模拟分子的动力学(其在性质上是量子的),这可以对依赖于小分子属性的任何工程学科带来巨大的进步。仅举几个领域,这可导致新材料的创造,更好药物的合成和更高能量密度电池的创造。
为了理解量子计算机的优点,理解它们如何与经典计算机形成对比是有用的。经典计算机根据数字逻辑进行操作。数字逻辑是指对被称作比特的信息单元进行操作的一种逻辑系统的类型。比特可以具有通常表示为0和1的两个值中的一个,并且是数字逻辑中的最小信息单元。逻辑门被用来对比特执行操作,逻辑门将一个或多个比特作为输入并提供一个或多个比特作为输出。典型地,逻辑门通常仅将一个比特作为输出(尽管该单个比特可以作为输入发送到多个其它逻辑门),并且该比特的值通常依赖于至少一些输入比特的值。在现代计算机中,逻辑门通常由晶体管组成,并且比特通常表示为连接到晶体管的导线的电平。逻辑门的简单示例是与门,其(以其最简单的形式)采用两个比特作为输入并提供一个比特作为输出。如果两个输入的值均为1,则与门的输出为1,否则与门的输出为0。通过以特定方式将各种逻辑门的输入和输出连接在一起,经典计算机可以实现任意复杂的算法来完成各种任务。
在表面上,量子计算机以类似于经典计算机的方式操作。量子计算机逻辑系统进行操作。逻辑系统对被称为量子比特(“量子”和“位”的复合形式)的信息单元进行操作。量子比特是量子计算机中的最小信息单元,并且量子比特可以具有两个值的任何线性组合,通常表示为|0>和|1>。换言之,对于α和β的任意组合而言,表示为|ψ>的量子比特的值可以等于α|0>+β|1>,其中,α和β是复数并且|α|2+|β|2=1。量子逻辑门被用于对量子比特执行操作。量子逻辑门将一个或多个量子比特作为输入并且提供一个或多个量子比特作为输出。量子门几乎总是可逆的。这意味着,仅使用来自门的输出和门所应用的转换的知识,在技术上可能(尽管实际上不一定可能)恢复对该门的输入。这要求输出的数量等于(或超过)输入门的数量。因此,量子门通常具有的输出量子比特数量与量子门具有的输入量子比特数量是相同的。量子门可以用矩阵来表示。
量子计算机解决某些问题的能力大小在很大程度上源于量子比特可以取较大数目的值,或者换言之,源于量子比特处于状态叠加的能力。另外,一组量子比特可以联合假定的值的数目随量子比特的数目呈指数增长。例如,考虑具有两个量子比特的系统,单独地,对于某些α和β,第一量子比特可以处于状态α|0>+β|1>,对于某些γ和δ,第二量子比特可以处于状态γ|0>+δ|1>。然而,将量子比特放在一起,即考虑当二个量子比特缠绕时,由量子比特组成的联合系统可以处于状态的线性组合αγ|00>+αδ|01>+βγ|10>+βδ|11>(并且|αγ|2+|αδ|2+|βγ|2+|βδ|2=1)。因此,两个量子比特可以处于四个状态的线性组合而不再是两个状态。类似地,卷入第三个量子比特(其对于某些ζ和η,可以处于状态ζ|0>+η|1>)允许由量子比特组成的联合系统处于八个状态的线性组合,例如:状态αγζ|000>+αγη|001>+αδζ|010>+αδη|011>+βγζ|100>+βγη|101>+βδζ|110>+βδη|111>(并且|αγζ|2+|αγη|2+|αδζ|2+|αδη|2+|βγζ|2+|βγη|2+|βδζ|2+|βδη|2=1)。总体上,具有n个卷入量子比特的系统可以是2n个状态的线性组合,例如:
Figure BDA0003283152210000051
Figure BDA0003283152210000052
这种能力与量子比特(或卷入的量子比特的组)建设性地和破坏性地相互干扰的能力相结合,对于一些问题,允许量子计算机比经典计算机具有指数性的速度优势。
然而,虽然是有力的,但是将量子比特维持在必要的状态(例如,卷入其他量子比特)是困难的,因为这些状态是脆弱的并且容易被外部环境因素扰乱。一旦被扰乱,任何正在执行的计算都会丢失,并且必须重新开始。在改进过程中,在必要的状态下准备各个量子比特并对其执行必要的序列操作的当前能力是有限的。例如,大多数现有系统只能准备和卷入几十个量子比特,并且在系统被外部因素扰乱之前只能对这些量子比特执行几轮操作。为了帮助对抗必要量子态的脆弱性,许多量子计算机系统实现容错形式。所主要容错形式是创建“逻辑量子比特”,该逻辑量子比特由几个冗余的物理量子比特组成并且因此更加具有鲁棒性。
然而,考虑到构建能够驾驭实际量子特性的系统的需求,当今的量子计算机系统具有非常有限的尺寸和能力。在二十世纪八十年代早期的首先被理论化为优于经典计算机,仅在最近几年才开发了量子计算机的实际物理实现。在缓慢改进的同时,当前和近期的量子计算机努力提供超过其经典对应物的改进。这进一步增加了设计和实现有效量子算法的重要性。测量量子电路实现方式的效率的两种主要方式是所需的物理量子比特的数量(其可以被称为空间成本)以及协议(算法/电路)实现时间(其可以被称为时间成本)。这两个度量有时会一起考虑,作为特定量子协议/算法/电路的时空成本。因此,现有的量子计算机在两个关键方面受到限制。首先,现有的量子计算机通常只有少量的量子比特,限制了现有的量子计算机能够执行的计算的复杂性。其次,现有的量子计算机还会受到在计算必须完成(即被读并获得经典值)之前计算可能花费的时间量(或等效地,序列步骤的数目)的限制。因此,用于现有量子计算机的量子算法应该利用尽可能少的计算并且尽可能快地完成。换言之,量子算法应该尽可能有效。
考虑到大多数当前量子系统的低等级特性,量子算法通常以其基础量子电路作为代表性的表达。接下来,量子电路又由量子门构成,量子门是直接对量子比特进行操纵的基本部件。与只有有限种类(对于给定数量的输入比特和输出比特)的经典逻辑门不同,无限数量的量子门可以作用于任何特定数量的量子比特,其原因在于:量子比特的取值可以是连续的,例如:无限的取值,而比特的取值则是有限的,例如:2个取值。量子门因此可以用于以无限多种方式转换量子比特。实际上,量子门可以表示的酉变换具有不可数的无限数量(即,存在不可数的无限数量的量子门)。尽管有这种变化,但是存在有限的量子门组(例如包含5个量子门的组),其具有普适性的属性,这意味着量子门组(给定足够的量子门)可以近似地实现达到任意精度的任何其它量子门组。尽管存在无限数量的量子门的集合是普遍性的,但是在量子计算领域中一些集合是特别流行的。一组这样的普遍量子门称为克里福德+T电路,其包括克里福德门和T门的各种组合。
为了理解克里福德+T电路,理解量子计算的一些背景是有帮助的。一种将量子比特的值可视化的流行方法是通过布洛赫球。顾名思义,布洛赫球是一种球体,其中量子比特的值被表示为球体表面上的点。球体表面上的位置采用两个值(例如,地球上的坐标的纬度和经度)来表示。对于值为虚数(例如,a+bi)的量子比特,这两个值是实部(例如,a)和虚部(例如,bi)。称为泡利算子或泡利门的特定的一组重要量子门可以被理解为绕布洛赫球的三个主轴的旋转。四个泡利算子分别被称为I、X、Y和Z。I是单位算子,并且X、Y和Z分别表示绕布洛赫球的x轴、y轴和z轴的180°旋转。对于单个量子比特的泡利矩阵/算子是
Figure BDA0003283152210000071
以及
Figure BDA0003283152210000072
在n个量子比特上的该组泡利算子可以被定义为
Figure BDA0003283152210000073
Figure BDA0003283152210000074
Figure BDA0003283152210000075
对于一组n个量子比特,有4n个泡利矩阵;以
Figure BDA0003283152210000076
形式,单个量子比特泡利矩阵,即,(σi∈[I,X,Y,Z]),的每个可能张量积对应一个泡利矩阵。下标通常用于指示算子作用的量子比特。例如,在3量子比特系统中,具有量子比特1、量子比特2和量子比特3。为了表示作用于第一量子比特的泡利X门和作用于第二量子比特的泡利Z算子,写出
Figure BDA0003283152210000077
Figure BDA0003283152210000078
图1是上述单个量子比特的布洛赫球的简化图。如图1所示,量子比特的取值可以被表示为球表面上的点,在此示出为Ψ。球表面上的点的取值是由角
Figure BDA0003283152210000079
和θ定义的。布洛赫球可以被概念化为存在于三维空间中,分别具有坐标轴x、y和z。然后可以将泡利X门、泡利Y门和泡利Z门理解为使表示量子比特的值的点分别绕x轴、y轴和z轴旋转180°。
如与这里有关的,克里福德门(或克里福德算子)是相对于泡利算子定义的。对于在n个量子比特上操作的表示为Cn的克里福德组,组成该组的克里福德门是
Figure BDA00032831522100000710
基本上,用于特定数量量子比特的克里福德门是以下的门:当在泡利门与该门左乘并且与克里福德门厄米特伴随右乘时,得到也是泡利矩阵的门。该属性有利于设计纠错量子码。对于在1个量子比特上操作的克里福德组,即C1。使用哈达玛(Hadamard)门(表示为H)和相位门(表示为S)来生成克里福德组,其中
Figure BDA00032831522100000711
并且
Figure BDA00032831522100000712
换言之,哈达玛门、相位门的组合足以实现所有克里福德组C1。对于在两个或多个量子比特上操作的克里福德组(例如C2),可以由哈达玛门、相位门再结合受控非门(表示为CNOT)来生成克里福德组,其中
Figure BDA00032831522100000713
(例如
Figure BDA00032831522100000714
Figure BDA00032831522100000715
然而,对于通用量子计算机而言,单独的克里福德门是不够的。添加被称为T门的门(也被称为π/4门)使得完整电路变得通用。T门被定义为
Figure BDA0003283152210000081
门也可以被定义为绕单量子比特泡利的π/4相位旋转Z:
Figure BDA0003283152210000082
Figure BDA0003283152210000083
基本上,仅由哈达玛门、相位门、受控非门和T门组成的量子电路是通用的,并且足以实现通用量子计算机。因为由门U∈{H,S,CNOT,T}组成的电路是通用的并且具有多个有益属性,所以许多所提出和实现的现有现实世界量子电路由这些类型的门组成。这种电路可以称为克里福德+T电路。
克里福德+T电路的一个重要考虑是电路中使用的T门的数量。一般而言,在量子电路的上下文中,量子电路的“效率”依赖于所使用的度量(例如,所使用的“选择函数”)。接下来,所使用的度量(例如,“选择函数”)可以依赖于所考虑的硬件(例如,门组)的体系结构。对于克里福德+T电路,效率的常用量度是T门的数目,其被称为T计数。T计数在测量克里福德+T电路的效率中的重要性的原因是T门趋向于比克里福德门多几个数量级(在实现所需的物理量子比特的逻辑数量方面)。因此,量子电路的T计数往往比任何其它量子门对效率具有更大的影响。因此,优化T门通常是优化克里福德+T电路的主要关注点。
例如,一些先前的解决方案(诸如一些现存的编译器)尝试通过使用辅助的量子比特来降低量子电路的T计数。然而,现有的量子硬件会使得使用辅助的量子比特变得昂贵,因而限制了实际量子算法的复杂性(并因此限制了实际量子算法的使用)。因此,辅助的量子比特会对量子算法的效率具有显著影响,并且将这种影响最小化,被称为“量子比特分配”或“量子调度”。在给定量子比特的可靠性(例如,错误率)的变化、门之间的转移、或甚至给定整个量子系统的情况下,在近期硬件上实现给定电路已经是非常复杂的。当尝试优化给定电路以在近期硬件上实现更好的性能时,这种复杂性已经增加。在部署辅助的量子比特的任何量子电路中会导致效率降低的基础上,增加量子比特分配的问题使得解决效率降低问题更加困难。
其他先前的解决方案尝试通过利用meet-in-the-middle(即,在中间相遇)算法进行暴力搜索来精确地计算最佳可能。虽然这些解决方案在技术上确保了最优性,但是它们具有指数性的运行时间,使得它们效率低并且不适合于实际的或有用的量子电路。其它先前的解决方案,例如Tpar,尝试通过在各个CNOT+T部分中重新合成T门并通过消除移动成彼此相邻的T门对,来优化量子电路的T深度。然而,该算法只能产生次优的量子电路,其原因在于:该算法通过在合成H门之前,合成不可计算的所有T门来处理哈达玛门H。这导致次优电路,因为一些T门在下一哈达玛门之后会再次变成“可计算的”。
另外,其它先前的解决方案,例如RM,也尝试通过优化CNOT+T部分来优化量子电路的T计数。该方案尝试利用这样的事实,即在克里福德+T电路中优化T计数可以等同于某些里德-缪勒码的最小距离解码问题。这个解码问题是困难的,意味着只存在近似的里德-缪勒解码器来引导解决方案。另外,该方案也遭受与先前方案中相同的哈达玛门的处理,导致所产生的量子电路的效率进一步降低。其它先前的解决方案,诸如T-Opt,尝试使用小配件化(gadgetization)来处理哈达玛门。该方案尝试使用以|+>状态开始的附属物从电路的第一部分消除哈达玛门,该状态稍后被测量并用于经典地控制克里福德门(其可以不是泡利门,因此受量子控制的版本可以不是克里福德门)。然而,该方法是基于启发式的,产生次优的量子电路。
这些现有系统的总体缺点是其依赖于显式转换来尝试减少量子电路的T计数。然而,通过依赖于显式转换,电路的表示会影响结果。换言之,通过现有系统,采用不同术语描述的等效量子电路彼此会得到不同地优化。例如,现有的解决方案Tpar尝试通过在各个CNOT+T部分中重新合成T门并通过消除移动成彼此相邻的T门对,来优化量子电路的T深度,这是一种显式转换。
图2是实现Mod54电路的量子门的一个可能系列的简化图。如图2所示,Mod54电路可以被实现为在5个量子比特上操作的15个门的序列。具体地,这15个门由泡利X门(X)、泡利Z门(Z)、哈达玛门(H)和托夫利门(T)组成。这15个门通过对量子比特A、B、C、D和E的状态进行操作,以在量子比特被输入到电路(示为AI、BI、CI、DI和EI)时将量子比特改变为针对量子比特输入状态由Mod54电路指示的相应输出状态(示为A0、B0、C0、D0和E0)。
如果使用Tpar来优化Mod54电路(例如,图2的Mod54电路),T-计数减少到16,这是次优的。然而,在Mod54电路中,出现了几次
Figure BDA0003283152210000091
其为伪装的真正的CZ门(例如,
Figure BDA0003283152210000092
如果在使用Tpar来优化Mod54电路之前,使用转换
Figure BDA0003283152210000093
将每次出现的
Figure BDA0003283152210000094
改写为
Figure BDA0003283152210000095
(CNOT+S电路),则T-计数减少到8。这是因为该转换允许显式转换Tpar用来识别
Figure BDA0003283152210000096
真正地等效于CZ门。本公开克服了现有方法的这些限制,并且展示了一种获得具有最佳T计数或T深度的量子电路的方式。本公开通过非显式地使用诸如
Figure BDA0003283152210000097
Figure BDA0003283152210000098
这样的任何转换来克服现有方法的限制。取而代之,本公开的实施方式可以将量子电路转换成形式为
Figure BDA0003283152210000099
(或者
Figure BDA00032831522100000910
的等效电路,其基本上将电路表示为围绕克里福德算子结合的泡利算子的一系列
Figure BDA00032831522100000911
旋转乘积。通过使用这种形式电路可用的关系,例如交换关系[R(P),
Figure BDA00032831522100000914
以及(P)R(-P)=I,
Figure BDA00032831522100000912
Figure BDA00032831522100000913
本公开的实施方式可以减少T计数。这意味着以相同的方式处理量子电路中的等效门以及门的组合,由此可以确保电路的表示不会影响到优化结果。
为了理解本公开如何可以减少量子电路的T计数,理解如何修改克里福德+T电路而不改变克里福德+T电路实现的算法(例如,不改变其黑盒行为)是有帮助的。首先,假设n量子比特系统中的任意酉门U具有克里福德+T门集的精确表示。然后,存在克里福德算子C′0,C′1,…,C′k,使得
Figure BDA00032831522100001012
其中每个mi∈{1,2,...,n},并且各个
Figure BDA00032831522100001013
基于克里福德算子的属性,该算式可以被改写为:
Figure BDA00032831522100001014
再次基于克里福德算子的属性,存在克里福德门C0,C1,...,Ck使得C0=C′0,C1=C′0C′1,…,Ck=C′0C′1…C′k。使用这些新的克里福德门,门U可以被改写为
Figure BDA00032831522100001015
Figure BDA00032831522100001016
为了减少T门(其比其他门昂贵得多)的数量,可以依赖于以下事实:当作用于第i个量子比特的T门(例如,Ti)与任何多量子比特克里福德C结合时,该T门可以保持围绕多量子比特泡利的π/4相位旋转:
Figure BDA0003283152210000101
Figure BDA0003283152210000102
其中
Figure BDA0003283152210000103
根据克里福德组的定义,
Figure BDA0003283152210000104
其中
Figure BDA0003283152210000105
还注意到R(I)=I,R(-I)=eiπ/4I。虽然这些不是π/4旋转,但是它们都包括直到相位的恒等式,因此本公开的实施方式可以在一些电路转换中使用它们。围绕多量子比特泡利R(P)的这些π/4相位旋转门也可称为
Figure BDA0003283152210000106
泡利旋转门。需要注意的是,如果Px=Py,则R(Px)=R(Py)。换言之,
Figure BDA0003283152210000107
泡利旋转门之间仅有的差别在于它们(造成量子比特的值)旋转围绕的泡利算子。因此,为简单起见,R(Px)match可以被简单称为R(Pmatch)。
理解R(P)的另一种方式是集合{R(P)}在与任何克里福德的交换下是不变的:
Figure BDA00032831522100001017
使用该算式,可以将所有克里福德门向后移(例如,最右侧)。这意味着任何克里福德+T电路可以表示为克里福德之后的一系列π/4旋转(忽略全局相位):
Figure BDA0003283152210000108
其中
Figure BDA0003283152210000109
并且m是电路中的T门的数量。虽然将克里福德+T电路U转换为形式
Figure BDA00032831522100001010
自身没有单独减少T-计数,但是这种转换允许几个其它有用规则,这些规则减少待应用的T计数。例如,R(P)R(-P)=I,
Figure BDA00032831522100001011
即两个相反的π/4旋转可以彼此抵消,并且可以将两个相同的π/4旋转组合成一个π/2旋转,其为克里福德门(即
Figure BDA00032831522100001018
对于任何克里福德C使得
Figure BDA00032831522100001019
),并且可以利用其来被移位到电路最右边)。应用上述任一转换可以将电路的T计数减少2。进一步地,当考虑电路优化的其它目标(例如减小T深度)时,重新排序T门可以是独立有用的。
对于克里福德门+T电路来说,具有彼此直接相邻的围绕相同泡利的两个π/4旋转可能是罕见的。然而,许多克里福德+T电路可以具有两个相邻的π/4旋转以彼此交换。特别地,在不同量子比特上操作的T门可以同时执行它们的操作,这意味着它们交换。每组交换T门可以被称为T循环,并且T循环的最小数量通常被定义为T深度。类似地,可以定义CNOT计数。
例如,如果可以并行地执行一组T门(例如,T循环),则它们的对应的π/4旋转通常都成对地交换。在R(P)表示中,以下旋转可以交换:
Figure BDA0003283152210000111
Figure BDA0003283152210000112
当考虑到这一点时,本公开的实施方式可以找到更多的机会来应用。利用两个相邻的T门交换的事实(例如,
Figure BDA0003283152210000113
允许互换相邻的π/4旋转(例如,T门或
Figure BDA0003283152210000114
泡利旋转门)而不影响量子电路的结果。
将该旋转重复地应用于相邻的交换T门可以等效于将一些置换应用于电路中的所有π/4旋转(例如,T门或
Figure BDA0003283152210000115
泡利旋转门)。虽然哪些置换是允许的可能不是立即显而易见的,但是对于通过将π/4旋转的结构视为有向无环图(DAG)而获得的可允许置换的集合,存在简单的描述。更具体地,形式为
Figure BDA0003283152210000116
的电路U的T图可以定义为GT(U)=(V,E),其中,对于j∈{1,2,...,m},V={vj}并且E={(vi,vj)|[Pi,Pj]≠0∧i<j},即GT(U)可以针对U中的每个π/4旋转具有一个顶点,并且针对泡利彼此反交换的每对π/4旋转具有一条边,边的方向是按照两个旋转在原始电路中出现的顺序来确定的。电路的T图GT(U)通常是DAG,因为v1,...,vm的顺序是GT(U)的拓扑排序。实际上,通过仅应用关系
Figure BDA0003283152210000117
当且仅当
Figure BDA0003283152210000118
是GT(U)的拓扑排序,可以将形式为
Figure BDA0003283152210000119
的电路转换为
Figure BDA00032831522100001110
使用T图GT(U)的属性,可以示出,虽然成对地交换π/4旋转的组不能总是被转换为并行应用的T门(或
Figure BDA00032831522100001111
泡利旋转门)的组,但是如果(i)所有Pj彼此交换,并且(2)不存在{1,...,m}的非空子集S使得Πj∈SPj=±I,则π/4旋转的组(例如
Figure BDA00032831522100001112
)可以被转换为T深度1的克里福德+T电路(即,全部T门可以并行应用的电路)。具体地,只要所有Pj彼此交换,π/4旋转的组
Figure BDA00032831522100001113
可以被转换为具有m个辅助的量子比特、T深度1的克里福德+T电路。
然而,为了使用辅助的量子比特来实现酉门,辅助的量子比特应该在电路的末端返回到恒定状态,否则输出状态便会有辅助卷入而不是纯状态。满足这种条件的一种方式是确保当电路被转换为
Figure BDA00032831522100001114
形式时,所有辅助的量子比特在整个电路保持在状态|0>。为了理解这是如何工作的,首先令
Figure BDA00032831522100001115
其中
Figure BDA00032831522100001116
并且
Figure BDA00032831522100001117
然后,下面的陈述是等效的:(1)
Figure BDA00032831522100001118
(2)
Figure BDA00032831522100001119
Figure BDA0003283152210000121
(3)
Figure BDA0003283152210000122
以及(4)
Figure BDA0003283152210000123
通过重复利用
Figure BDA0003283152210000124
暗示
Figure BDA0003283152210000125
(例如
Figure BDA0003283152210000126
形式为
Figure BDA0003283152210000127
的电路可以利用t个辅助的比特扩展为形式
Figure BDA0003283152210000128
其中
Figure BDA0003283152210000129
需要注意的是,该扩展对于所有|ψ>都满足
Figure BDA00032831522100001210
另外,还需要注意的是,使用上述方法将辅助的量子比特添加到电路U并不改变电路的T图GTU)。
对于一些克里福德+T电路,如果所有Pj彼此交换,则交换关系
Figure BDA00032831522100001211
Figure BDA00032831522100001212
与通过仅使用m将电路的T深度减小到1的能力的组合可以提供用于优化T深度的强大工具(具有无限数量的辅助量子比特)。对于不是所有Pj都彼此交换的那些电路,电路U可以实现的最小T深度精确地等于GT(U)中最长路径的长度(即,最长路径上的顶点数)。假设GT(U)中的最长路径为
Figure BDA00032831522100001213
这样可以实现的最小T深度为k,即最长路径的长度。
T深度为k实际上是可以实现的。GT(U)的顶点首先以在每个顶点处结束的最长路径的长度进行升序分类。因为这种路径的最小长度是1,并且最大是k,所以这基本上将GT(U)的顶点划分为k个层。GT(U)的边可以仅从一个层到稍后的层,而不是到任何先前的层,也不是到同一层。因此,这种分类包括拓扑排序,并且π/4旋转可以相应地在U中重新排序。在同一层中的顶点之间不存在任何边也意味着对应于那些顶点的旋转彼此交换,因此每个层可被转换成T层。最终结果是具有T深度为k的克里福德+T电路。需要注意的是,对于电路U可以实现的最小T深度精确地等于GT(U)中的最长路径的长度(即,最长路径的顶点的数量),在GT(U)中转换规则被允许。
因此,本公开的实施方式通过减少电路的T计数可以减少克里福德+T量子电路的空间和时间复杂性。为了实现这种优化,本公开的一些实施方式可以开始于将初始量子电路(待优化的电路)转换成中间量子电路。这可以涉及例如将初始量子电路修改成等效的克里福德+T电路(例如,修改成利用来自集合{H,S,CNOT,T}的量子门的电路),其可以利用来自集合Glnitial的量子门,其中GInitial包含有限数量的量子。将初始量子电路转换为等效的克里福德+T电路可以涉及将电路转换为一系列克里福德门和T门,例如:对于mi∈{1,2,...,n},将初始量子电路转换为
Figure BDA00032831522100001214
并且每个
Figure BDA00032831522100001215
然后,一些实施方式可以进一步将每个T门(例如,每个
Figure BDA00032831522100001216
)转换为对应的
Figure BDA00032831522100001217
泡利旋转门(例如,转换为对应的R(Pj))。然后,一些实施方式可以进一步将克里福德门和
Figure BDA00032831522100001218
泡利旋转门的序列(例如,对于mi∈{1,2,...,n},序列
Figure BDA0003283152210000131
并且每个
Figure BDA0003283152210000132
转换为克里福德门之后的一系列
Figure BDA0003283152210000133
泡利旋转门(例如,系列
Figure BDA0003283152210000134
Figure BDA0003283152210000135
其中
Figure BDA0003283152210000136
并且m是电路中T门的数量。
在一些实施方式中,通过各种方式将初始量子电路转换成对应的中间量子电路(例如
Figure BDA0003283152210000137
形式的量子电路,其实现与初始量子电路相同的算法/功能/程序/转换)。在一些实施方式中,首先可以通过将每个T门转换成围绕单个量子比特泡利Z的
Figure BDA0003283152210000138
泡利旋转门,来将初始量子电路转换成等效的(例如,对其输入量子比特执行相同的旋转/转换)中间量子电路。然后可以使用集合{R(P)}在与任何克里福德C交换时是不变的事实(例如
Figure BDA00032831522100001330
将所有克里福德门移位到算式的后部(例如,最右侧)。由于克里福德+T电路仅使用克里福德门和T门,使所有克里福德门在最右侧意味着该算式包括克里福德门序列之后的T门序列。最后,基于克里福德门电路的属性,总是存在单个克里福德门电路等效于克里福德门电路的序列(例如,如果在量子电路末端的克里福德门电路的序列是C0C1...Ck,则存在克里福德门C′使得C′=C0C1...Ck)。利用这个事实,可以采用单个克里福德门来代替克里福德门的序列,从而将初始量子电路转换为等效的量子电路,该等效的量子电路是克里福德门之后的一系列T门。
在将初始量子电路转换为中间量子电路之后,一些实施方式可以继续生成优化后的量子电路。在一些实施方式中,优化后的量子电路的形式为克里福德门之后的一系列
Figure BDA0003283152210000139
泡利旋转门的形式(例如
Figure BDA00032831522100001310
)。在一些实施方式中,生成优化后的量子电路的过程可以涉及首先初始化空的优化后的量子电路,该空的优化后的量子电路是利用克里福德算子(其实现单位门
Figure BDA00032831522100001311
)之后的
Figure BDA00032831522100001312
泡利旋转门的空的集合(例如,不具有门或者仅有单位门
Figure BDA00032831522100001329
)创建的。换言之,初始化为不对输入进行改变的电路。
在初始化优化后的量子电路之后,一些实施方式可以继续从中间量子电路中选择最左侧的
Figure BDA00032831522100001313
泡利旋转门。然后,一些实施方式可以继续基于所选择的
Figure BDA00032831522100001314
泡利旋转门生成新的
Figure BDA00032831522100001315
泡利旋转门。具体地,一些实施方式可以根据所选择的
Figure BDA00032831522100001316
泡利旋转门R(Pselected)生成新的
Figure BDA00032831522100001317
泡利旋转门R(Pnew),其中,
Figure BDA00032831522100001318
(例如,对所选择的
Figure BDA00032831522100001319
泡利旋转门的泡利算子,在左侧乘上优化后的量子电路的克里福德门
Figure BDA00032831522100001320
泡利旋转门、在右侧乘上优化后的量子电路的克里福德门的共轭转置,从而得到新的
Figure BDA00032831522100001321
泡利旋转门所围绕的泡利算子)。在生成新的
Figure BDA00032831522100001322
泡利旋转门之后,一些实施方式可以将新的
Figure BDA00032831522100001323
泡利旋转门插入到优化后的量子电路的一系列的
Figure BDA00032831522100001324
泡利旋转门的最右侧(例如,在一系列的
Figure BDA00032831522100001325
泡利旋转门的末端,在优化后的量子电路的克里福德门的紧前面)。
在将新的
Figure BDA00032831522100001326
泡利旋转门插入优化后的量子之后,一些实施方式可以继续从右到左扫描优化后的量子电路的
Figure BDA00032831522100001327
泡利旋转门(除了刚插入的新的
Figure BDA00032831522100001328
泡利旋转门)(例如,从最靠近新的
Figure BDA0003283152210000141
泡利旋转门的(并且在新的
Figure BDA0003283152210000142
泡利旋转门左侧的)
Figure BDA0003283152210000143
泡利旋转门开始)。一些实施方式可以扫描优化后的量子电路的
Figure BDA0003283152210000144
泡利旋转门,以查找位于任何非交换的电路的
Figure BDA0003283152210000145
泡利旋转门之前匹配的
Figure BDA0003283152210000146
泡利旋转门。换言之,一些实施方式可以通过非交换的
Figure BDA0003283152210000147
泡利旋转门来搜索匹配的
Figure BDA0003283152210000148
泡利旋转门,该匹配的
Figure BDA0003283152210000149
泡利旋转门没有与新的
Figure BDA00032831522100001410
泡利旋转门分离。在一些实施方式中,匹配的
Figure BDA00032831522100001411
泡利旋转门意味着与新的
Figure BDA00032831522100001412
泡利旋转门相同的
Figure BDA00032831522100001413
泡利旋转门,除了可能具有不同的符号。换言之,如果对于
Figure BDA00032831522100001414
新的
Figure BDA00032831522100001415
泡利旋转门是R(P),(例如,新的
Figure BDA00032831522100001416
泡利旋转门是
Figure BDA00032831522100001417
则对于
Figure BDA00032831522100001418
匹配的
Figure BDA00032831522100001419
泡利旋转门为R(±Q),(例如,匹配的
Figure BDA00032831522100001420
泡利旋转门是
Figure BDA00032831522100001421
在一些实施方式中,如果查找到匹配的
Figure BDA00032831522100001422
泡利旋转门,则从优化后的量子电路中移除匹配的
Figure BDA00032831522100001423
泡利旋转门和新的
Figure BDA00032831522100001424
泡利旋转门。在一些实施方式中,如果匹配的
Figure BDA00032831522100001425
泡利旋转门与新的
Figure BDA00032831522100001426
泡利旋转门具有相同的符号(例如,如果新的
Figure BDA00032831522100001427
泡利旋转门是R(+P),则匹配的
Figure BDA00032831522100001428
泡利旋转门是R(+P),并且如果新的
Figure BDA00032831522100001429
泡利旋转门是R(-P),则匹配的
Figure BDA00032831522100001430
泡利旋转门是R(-P)),则优化后的量子电路的克里福德门可以被修改为新的克里福德门,其中,新的克里福德门等效于当前克里福德门,左乘两次匹配的
Figure BDA00032831522100001431
泡利旋转门(例如,如果(COptimized)new是优化后的量子电路的新的克里福德门,并且(COptimized)Current是优化后的量子电路的当前克里福德门,则(COptimized)new=R(Q)2(COptimized)Current,其中R(Q)2=R(Q)R(Q)))。
在一些实施方式中,针对当前所选择的
Figure BDA00032831522100001432
泡利旋转门,在扫描匹配的
Figure BDA00032831522100001433
泡利旋转门的过程完成之后,接着可以选择来自中间量子电路的次最左侧的
Figure BDA00032831522100001434
泡利旋转门,并且以上过程可以重复。对于来自中间量子电路的每个的
Figure BDA00032831522100001435
泡利旋转门会持续进行上述过程,直至中间量子电路的
Figure BDA00032831522100001436
泡利旋转门全部处理完毕。在一些实施方式中,当查找到匹配的
Figure BDA00032831522100001437
泡利旋转门时,针对匹配的
Figure BDA00032831522100001438
泡利旋转门的扫描过程便会完成(并随后进行寻找匹配的
Figure BDA00032831522100001439
泡利旋转门的过程)。在一些实施方案中,当遇到非交换的
Figure BDA00032831522100001440
泡利旋转门时(还未找到任何匹配的
Figure BDA00032831522100001441
泡利旋转门),上述过程完成。在一些实施方式中,当扫描了整个系列的优化后的量子电路的
Figure BDA00032831522100001442
泡利旋转门而没有发现匹配的
Figure BDA00032831522100001443
泡利旋转门时(在任何非交换的
Figure BDA00032831522100001444
泡利旋转门之前),上述过程完成。需要注意的是,最后这两种情况意味着可能发生一次或更多次迭代没有找到匹配的
Figure BDA00032831522100001445
泡利旋转门的情况。
在一些实施方式中,在中间量子电路的
Figure BDA00032831522100001446
泡利旋转门全部处理完毕之后,优化后的量子电路的克里福德门可以被修改为新的克里福德门,其中,新的克里福德门等效于当前克里福德门。在右侧中间量子电路的克里福德门使当前克里福德门共轭(例如,如果(COptimized)new是优化后的量子电路的新的克里福德门,(COptimized)Current是优化后的量子电路的当前克里福德门,并且(CIntermediate)Current是中间量子电路的当前克福德门,则(COptimized)new=(COptimized)current(CIntermediate)current)。
图3是根据本公开的一些实施方式的如何优化量子电路的示例性方法的流程图。如图3所示,在步骤302中,将初始量子电路(在此示为U1)转换成如下形式:
Figure BDA0003283152210000151
例如转换成围绕泡利算子的克里福德门的一系列旋转门。在步骤302中还示出了(空的)优化的量子电路(这里示出为U0)的初始化,该(空的)优化的量子电路的形式为
Figure BDA0003283152210000152
k初始等于0,例如,旋转门的组最初是空的,并且C0初始等于
Figure BDA0003283152210000153
针对U0和U1的相位因子e被忽略,并且U0U1应该是循环不变的。然后,在步骤303中,从U1中移除最左侧的旋转门(因子)R(P),例如,从初始量子电路中移除剩余的下一旋转门。同样如步骤303所示,在最左侧的旋转门R(P)从U1移除之后,新的旋转门
Figure BDA0003283152210000154
插入到U0中C0的左侧,例如,插入新的旋转门
Figure BDA0003283152210000155
作为U0中的最右侧的旋转门。
在步骤303之后,在步骤304中,评估在U0中最右侧未评估的因子R(Q)(从刚刚插入的旋转门
Figure BDA0003283152210000156
的紧左侧的R(Q)开始)。在步骤305中,确定查找到的因子R(Q)是否具有
Figure BDA0003283152210000157
如果查找到的R(Q)确实具有
Figure BDA0003283152210000158
则在步骤306中,从U0中移除R(Q)和
Figure BDA0003283152210000159
在步骤306之后,该方法进行到步骤311。可选地,如果在步骤305中,如果查找到的因子R(Q)没有
Figure BDA00032831522100001510
则在步骤307中,确定查找到的因子R(Q)是否具有
Figure BDA00032831522100001511
如果查找到的因子R(Q)确实具有
Figure BDA00032831522100001512
则在步骤308中,从U0移除(Q)和
Figure BDA00032831522100001513
并用新的克里福德门R(Q)2C0替换C0(例如C0←R(Q)2C0)。在步骤308之后,该方法进行到步骤311。可选地,如果在步骤307中查找到的因子R(Q)没有
Figure BDA00032831522100001514
则在步骤309中,确定查找到的因子R(Q)是否具有Q使得
Figure BDA00032831522100001515
(或者等同地,
Figure BDA00032831522100001516
如果查找到的因子R(Q)确实具有Q使得
Figure BDA00032831522100001517
则该方法进行到步骤311。可选地,如果在步骤309中确定查找到的因子R(Q)没有Q使得
Figure BDA00032831522100001518
则在步骤310中确定U0中的每个未评估因子R(Q)是否均已处理完毕。如果U0中的每个未评估的因子R(Q)尚未处理完毕,则该方法返回到步骤304以评估U0中的次最右侧的因子R(Q)。可选地,如果在步骤310中确定U0中的每个未评估的因子R(Q)均已处理完毕,则在步骤311中确定U1中的每个乘积部分R(P)是否均已处理完毕。如果U1中的每个乘积部分R(P)尚未处理完毕,则该方法返回到步骤303以管理U1中的次最左侧的因子R(P)。可选地,如果在步骤311中确定U1中的每个乘积部分R(P)均已处理完毕,则在步骤312中,采用新的克里福德门C0C1替换C0(例如,C0←C0C1),并且采用新的克里福德门
Figure BDA00032831522100001519
替换C1(例如,C1←I)。然后,在步骤313中,将U0转换回克里福德+T电路并且作为优化后的量子电路返回。
关于图3中讨论的示例性方法的效率,对于U1中的每个因子R(P)扫描U0中的每个因子R(Q)(直到满足停止条件之一)的动作通常是该示例性算法的效率的限制因素。在最坏的情况下,对于初始量子电路中的每个R(P)因子,该算法可以扫描U0中的每个R(Q)因子,每次检查相等性和可交换性。因此,最坏情况的复杂度是O(m2n),其中n是量子比特的数量,m是原始电路中T门的数量。
图4描绘了本公开(例如,图3中描述的算法)的示例性实施方式在优化量子电路中的基准测试结果。如图4所示,本公开的示例性实施方式的基准测试结果(在最右列中显示为T优化器)表明,与原始的未优化的电路相比,由算法优化的输出电路在T计数上平均减少了42.67%,对于一些电路更是减少了71.43%的。图4还示出了,不同其他T计数优化器,这些T计数优化器通常会导致,与原始未优化电路相比的,优化后电路的CNOT计数显著增加。本公开的实施方式通常在减少T计数的过程中不增加CNOT计数。进一步地,可以将该示例性实施方式应用于由其他量子电路优化工具生成的优化后的量子电路,无论量子电路优化工具是优化CNOT计数还是T计数,在不影响其他性能参数(如CNOT计数)的情况下可以进一步优化该电路(例如,产生甚至更小的T计数)。
图5是与本公开的一些实施方式保持一致的用于优化量子电路的示例性系统501的描绘图。虽然在图5中被描绘为服务器,但是系统500可以包括被配置成执行例如以上在图4中描述的优化方法的任何计算机,诸如台式计算机、膝上型计算机、平板计算机等。如图5所示,系统501可以具有处理器502。处理器502可以包括单个处理器或多个处理器。例如,处理器502可包括CPU、GPU、可重配置阵列(例如,FPGA或其它ASIC)等。处理器502可以与存储器503、输入/输出模块507和网络接口控制器(NIC)509可操作地连接。
存储器503可以包括单个存储器或多个存储器。此外,存储器503可以包括易失性存储器、非易失性存储器,或两者组合。如图5所示,存储器503可以存储一个或多个操作系统504和优化器505。例如,优化器505可以包括用于优化量子电路的指令(例如,如以上所解释的)。因此,优化器505可以根据上述任何方法模拟和优化一个或多个量子电路。输入/输出模块(I/O)507可以存储和提取来自一个或多个数据库508的数据。例如,数据库508可以包括描述量子电路的数据结构和描述在量子电路中用于替换的等效T门和克里福德门组的数据结构。NIC 509可将系统501连接到一个或多个计算机网络。如图5所示,NIC 509可将系统501连接到因特网510。系统501可以使用NIC 509通过网络接收数据和指令,并且可以使用NIC 509通过网络发送数据和指令。
在一些实施方式中,初始量子电路(待优化的量子电路)可以通过各种手段获得。例如,在一些实施方式中,可以获取初始量子电路作为对程序的输入。该输入可以以多种形式出现,包括输入如何表示(例如,所涉及的数据结构)和输入表示什么(例如,该输入使用了什么量子电路表示)。在其他实施方式中,可以在执行优化的程序内直接创建量子电路。另外,如上所述,如何表示量子电路可以变化。例如,量子电路可以表示为量子门和量子门之间的连接的集合、表示为图、或采用一些其它表示。另外,等效量子电路可以通过使用不同类型的门(或相同类型、但不同数量和/或连接的门)来描述。
需要注意的是,如这里所使用的,诸如“转换”、“生成”、“插入”、“移除”等术语不一定意味着对物理量子电路、设备或对象的改变。例如,在一些实施方式中,初始量子电路和优化后的量子电路可以是量子电路的图或其他表示,而不是物理对象。在一些实施方式中,量子电路的表示可以是各种类型。例如,量子电路可以使用各种数据结构来表示,可以用图形表示,可以表示为一系列矩阵等。另外,一些实施方式可以优化物理量子电路的布局,例如通过操控现场可编程门阵列(FPGA)的量子模拟。
另外,一些实施方式可以适当地优化量子电路,而其他实施方式可以使用辅助量子电路作为优化过程的一部分。例如,在一些实施方式中,将初始量子电路转换为中间量子电路可以涉及将初始量子电路改变为中间量子电路(例如,将初始量子电路的表示重写为中间量子电路)。相反,在一些实施方式中,将初始量子电路转换成中间量子电路可以涉及生成新的量子电路,然后,该新的量子电路再被转换成中间量子电路(例如,通过使用初始量子电路作为模板)。类似地,在一些实施方式中,生成优化后的量子电路可以涉及适当地编辑中间量子电路,而在其他实施方式中,生成优化后的量子电路可以涉及生成新的量子电路,然后该新的量子电路再被转换成优化后的量子电路。这个相同的过程可以应用于任何量子电路转换。
相关地,在一些实施方式中,选择来自中间量子电路的最左侧的
Figure BDA0003283152210000171
泡利旋转门可以涉及从中间量子电路移除最左侧的
Figure BDA0003283152210000172
泡利旋转门。在一些实施方式中,最左侧的
Figure BDA0003283152210000173
泡利旋转门不从中间量子电路移除,并且优化继续使用尚未被选择的最左侧的
Figure BDA0003283152210000174
泡利旋转门。类似地,在中间量子电路的
Figure BDA0003283152210000175
泡利旋转门被处理完毕并且优化后的量子电路的克里福德门被修改为新的克里福德门之后,中间量子电路的当前克里福德门可以被修改为单位门(例如,如果(CIntermediate)Current是中间量子电路的当前克里福德门,则
Figure BDA0003283152210000176
在其他实施方式中,中间量子电路的当前克里福德门可以不被修改。在一些实施方式中,如果中间量子电路的
Figure BDA0003283152210000177
泡利旋转门在被选择时被移除,并且中间量子电路的克里福德门被修改为单位门,则中间量子电路可以是空白量子电路(例如,克里福德算子(其实现单位门
Figure BDA0003283152210000178
)之后的
Figure BDA0003283152210000179
泡利旋转门的空的集合(例如,不具有门或仅具有单位门
Figure BDA00032831522100001710
))。
在一些实施方式中,优化后的量子电路可以作为初始量子电路的优化版本返回。在一些实施方式中,这可以涉及采用优化后的量子电路改写初始量子电路。在其他实施方式中,这可以涉及将优化后的量子电路作为新电路写入或以其他方式提供。在一些实施方式中,可以返回优化后的量子电路而无需进一步的转换。在一些实施方式中,可以在返回之前对优化后的量子电路进行转换。在一些实施方式中,优化后的量子电路可以在返回之前应用一些附加优化。例如,在一些实施方式中,优化后的量子电路可以在返回之前被转换为克里福德+T电路。在一些实施方式中,在转换为克里福德+T电路之后,或者代替转换为克里福德+T电路,优化后的量子电路可以转换为预初始化量子电路。
在一些实施方式中,初始量子电路可以在被转换成中间量子电路之前被修改。在一些实施方式中,初始量子电路可以在被转换成中间量子电路之前被转换成不同的表示。另外,在一些实施方式中,初始量子电路可以在被转换为中间量子电路之前应用其他优化。例如,在一些实施方式中,初始量子电路可以表示为(例如,能够近似到任意精度)克里福德+T电路。然而,在一些实施方式中,初始量子电路可以不采用克里福德+T电路精确地表示(例如,不能仅使用克里福德门和T门来近似到任意精度)。
在一些实施方式中,当初始量子电路未采用克里福德+T电路精确地表示时,初始量子电路可以首先被修改为通过使用辅助的量子比特的克里福德+T电路表示的形式。该修改后的初始量子电路然后可以被转换为如上所述的中间量子电路。将未采用克里福德+T电路精确表示的初始量子电路修改成使用辅助量子比特的克里福德+T电路表示形式的这个过程可以包括多种方法。例如,在一些实施方式中,可以采用穷举搜索来查找使用辅助量子比特的克里福德+T电路表示。在一些实施方式中,如果初始量子电路基于相位评估,则相位回扫技巧可以引入辅助量子比特来执行相位门选。另外,在一些实施方式中,可以采用索洛维-基塔耶夫算法来查找使用辅助比特的克里福德+T电路表示,该克里福德+T电路表示可以实现将初始量子电路的精度达到精度
在一些实施方式中,中间量子电路可以在优化过程期间应用转换。在一些实施方式中,中间量子电路可以在优化过程期间应用一些附加优化。在这些实施方式的一些实施例中,在继续优化过程之前将中间量子电路转换回适当的形式。换言之,如果中间量子电路在优化过程期间被转换或以其他方式被优化并且是从形式为
Figure BDA0003283152210000181
中得到的,则在优化过程继续之前,该电路被转换回
Figure BDA0003283152210000182
形式。
一些实施方式可以通过将初始量子电路的表示转换成ZX图,然后再采用相位遥操作技术来减少量子电路中的T门的数目。
一些实施方式可以利用目标量子硬件对量子电路施加的限制来调制量子电路的优化以提高效率(例如,减少初始量子电路的T计数)。例如,一些实施方式可以在优化时主动地考虑目标硬件的特定硬件约束,诸如考虑连通性映射和误差方差,利用额外的辅助量子比特来进一步减少T-计数(因为通常值得牺牲几个量子比特来降低成本并进一步提高硬件上的性能)等。
在一些实施方式中,还提供了一种包括指令的非易失性计算机可读存储介质,并且这些指令可以由用于执行上述方法的设备(例如所公开的编码器和解码器)来执行。非易失性介质的常见形式包括例如软盘、柔性盘、硬盘、固态驱动器、磁带或任何其他磁性数据存储介质、CD-ROM、任何其他光学数据存储介质、具有孔图案的任何物理介质、RAM、PROM和EPROM、FLASH-EPROM或任何其他闪存、NVRAM、高速缓存、寄存器、任何其他存储器芯片或盒,以及它们的联网版本。该设备可以包括一个或多个处理器(CPU)、输入/输出接口、网络接口和/或存储器。
已经出于说明的目的给出了上述描述。它们不是穷举的,并且不限于所公开的精确形式或实施方式。考虑到所公开的实施方式的说明和实践,实施方式的修改和调整将是明显的。例如,所描述的实现包括硬件,但是与本公开一致的系统和方法可以用硬件和软件来实现。此外,虽然某些部件被描述为彼此耦合,但是这些部件可以彼此集成或以任何合适的方式分布。
此外,虽然本文已经描述了说明性实施方式,但范围包括基于本公开内容具有等同要素、修改、省略、组合(例如,各种实施方式的各方面的组合),修改或变更的任何和所有实施方式。权利要求中的元素将基于权利要求中使用的语言被广泛地解释,并且不限于在本说明书中或在申请的过程中描述的示例,这些示例将被解释为非排他性的。此外,可以以任何方式修改所公开的方法的步骤,包括重新排序步骤或插入或删除步骤。
应当注意,这里的诸如“第一”和“第二”的关系术语仅用于区分实体或操作与另一实体或操作,并且不要求或暗示这些实体或操作之间的任何实际关系或顺序。此外,词语“包含”、“具有”、“含有”和“包括”以及其他类似形式旨在在含义上是等同的并且是开放式的,因为这些词语中的任何一个之后的一个或多个项并不意味着是这样的一个或多个项的穷举列表,或者意味着仅限于所列出的一个或多个项。
根据详细的说明书,本公开的特征和优点是明显的。如本文所用,不定冠词“一”和“一个”意指“一个或多个”。类似地,复数术语的使用不一定表示复数,除非其在给定上下文中是明确的。此外,由于通过研究本公开内容,众多修改和变化将容易发生,不希望将本公开内容限制到所说明和描述的确切构造和操作,并且因此,可采用落入本公开内容的范围内的所有合适的修改和等效物。
如本文所用的,除非另外具体说明,否则术语“或”涵盖所有可能的组合,除非不可行。例如,如果声明数据库可以包括A或B,则除非特别声明或不可行,数据库可以包括A或B,或A和B。作为第二个例子,如果声明数据库可以包括A、B或C,那么,除非特别声明或不可行,数据库可以包括A、或B、或C,或A和B,或A和C,或B和C,或A和B和C。
应当理解,上述实施方式可以由硬件或软件(程序代码)或硬件和软件的组合来实现。如果由软件实现,则可以将其存储在上述计算机可读介质中。当由处理器执行时,软件可以执行所公开的方法。本公开中描述的计算单元和其它功能单元可以由硬件、或软件、或硬件和软件的组合来实现。本领域普通技术人员还将理解,上述模块/单元中的多个可以组合为一个模块/单元,并且上述模块/单元中的每一个可以进一步划分为多个子模块/子单元。
在前述说明书中,已参考可随实现方式而变化的许多具体细节描述了实施方式。可以对所描述的实施方式进行某些调整和修改。考虑到本文公开的本公开的说明书和实践,其它实施方案对于本领域技术人员来说是明显的。说明书和实施方式仅被认为是示例性的。附图中所示的步骤顺序也旨在仅用于说明的目的,而不旨在限于任何特定的步骤顺序。因此,本领域技术人员可以理解,这些步骤可以以不同的顺序执行而实现相同的方法。
可以使用以下条款进一步描述实施方式:
1.一种用于优化量子电路的方法,该方法包括以下步骤:
将初始量子电路转换为中间量子电路,其中,所述中间量子电路是第一个克里福德门紧跟着第一组
Figure BDA0003283152210000201
泡利旋转门;并且
通过对所述第一组
Figure BDA0003283152210000202
泡利旋转门中的每个
Figure BDA0003283152210000203
泡利旋转门进行以下操作,生成更新后的量子电路,所述更新后的量子电路是第二个克里福德门之后的第二组
Figure BDA0003283152210000204
泡利旋转门:
在所述第二组
Figure BDA0003283152210000205
泡利旋转门之后插入新的
Figure BDA0003283152210000206
泡利旋转门,其中,所述新的
Figure BDA0003283152210000207
泡利旋转门对应于所述第一组
Figure BDA0003283152210000208
泡利旋转门中的当前
Figure BDA0003283152210000209
泡利旋转门,通过左乘所述第二个克里福德门和右乘所述第二个克里福德门的共轭转置实现,
扫描所述第二组
Figure BDA00032831522100002010
泡利旋转门以确定在非交换的
Figure BDA00032831522100002011
泡利旋转门之前是否存在匹配的
Figure BDA00032831522100002012
泡利旋转门;
响应于确定存在所述匹配的
Figure BDA00032831522100002013
泡利旋转门,从所述第二组
Figure BDA00032831522100002014
泡利旋转门中移除所述匹配的
Figure BDA00032831522100002015
泡利旋转门和所述新的
Figure BDA00032831522100002016
泡利旋转门,并且
如果所述匹配的
Figure BDA00032831522100002017
泡利旋转门和所述新的
Figure BDA00032831522100002018
泡利旋转门具有相反的符号,则采用新的克里福德门替换所述第二个克里福德门,其中,所述新的克里福德门对应于当前第二个克里福德门,通过左乘两次所述新的
Figure BDA00032831522100002019
泡利旋转门实现。
2.根据条款1所述的方法,所述方法还包括:
采用新的第二个克里福德门替换所述第二个克里福德门,其中,所述新的第二个克里福德门是与所述第一个克里福德门共轭的当前第二个克里福德门。
3.根据条款1和2中任一项所述的方法,其中,将所述初始量子电路转换成所述中间量子电路包括:
将所述初始量子电路中的每个T门转换成对应的
Figure BDA0003283152210000211
泡利旋转门;
利用
Figure BDA0003283152210000212
泡利旋转门与克里福德门交换的不变性,将所述初始量子电路中的所有克里福德门移位到算式的后部;并且
将所述初始量子电路中的所有克里福德门合并成单个克里福德门。
4.根据条款1-3中任一项所述的方法,其中,在将所述初始量子电路转换成所述中间量子电路之前,对所述初始量子电路进行转换或优化。
5.根据条款4所述的方法,其中,所述初始量子电路采用非克里福德+T电路来表示,所述方法还包括:
在将所述初始量子电路转换成所述中间量子电路之前,将所述初始量子电路转换成由克里福德+T电路表示的形式。
6.根据条款5所述的方法,其中,将所述初始量子电路转换成由所述克里福德+T电路表示的形式,所述克里福德+T电路使用辅助的量子比特。
7.根据条款1-6中任一项所述的方法,其中,所述方法还包括:
返回的所述更新后的量子电路作为所述初始量子电路的更新版本。
8.根据条款7所述的方法,其中,在返回所述更新后的量子电路之前,对所述更新后的量子电路进行转换或优化。
9.根据条款8所述的方法,所述方法还包括:在将返回的所述更新后的量子电路作为所述初始量子电路的所述更新版本之前,将所述更新后的量子电路转换为等效的克里福德+T电路。
10.根据条款1-6中任一项所述的方法,其中,确定存在所述匹配的
Figure BDA0003283152210000213
泡利旋转门包括:
评估使用与目标量子硬件的约束保持平衡的所述匹配的
Figure BDA0003283152210000214
泡利旋转门带来的效率增益。
11.一种量子电路的更新系统,包括:
存储指令集的存储器:以及
一个或多个处理器,设置为执行所述指令集以使所述系统进行以下处理:
将初始量子电路转换为中间量子电路,其中,所述中间量子电路是第一个克里福德门紧跟着第一组
Figure BDA0003283152210000215
泡利旋转门;并且
通过对所述第一组
Figure BDA0003283152210000216
泡利旋转门中的每个
Figure BDA0003283152210000217
泡利旋转门进行以下操作,生成更新后的量子电路,所述更新后的量子电路是第二个克里福德门之后的第二组
Figure BDA0003283152210000218
泡利旋转门:
在所述第二组
Figure BDA0003283152210000219
泡利旋转门之后插入新的
Figure BDA00032831522100002110
泡利旋转门,其中,所述新的
Figure BDA00032831522100002111
泡利旋转门对应于所述第一组
Figure BDA00032831522100002112
泡利旋转门中的当前
Figure BDA00032831522100002113
泡利旋转门,通过所述第二个克里福德门和所述第二个克里福德门的共轭转置使所述第一组
Figure BDA00032831522100002114
泡利旋转门共轭,
扫描所述第二组
Figure BDA00032831522100002115
泡利旋转门以确定在非交换的
Figure BDA00032831522100002116
泡利旋转门之前是否存在匹配的
Figure BDA0003283152210000221
泡利旋转门;
响应于确定存在所述匹配的
Figure BDA0003283152210000222
泡利旋转门,从所述第二组
Figure BDA0003283152210000223
泡利旋转门中移除所述匹配的
Figure BDA0003283152210000224
泡利旋转门和所述新的
Figure BDA0003283152210000225
泡利旋转门,并且
如果所述匹配的
Figure BDA0003283152210000226
泡利旋转门和所述新的
Figure BDA0003283152210000227
泡利旋转门具有相反的符号,则采用新的克里福德门替换所述第二个克里福德门,其中,所述新的克里福德门对应于当前第二个克里福德门,通过所述新的
Figure BDA0003283152210000228
泡利旋转门使所述当前第二个克里福德门共轭。
12.根据条款11所述的系统,其中,所述指令集由所述一个或多个处理器执行以使所述系统还进行以下处理:
采用新的第二个克里福德门替换所述第二个克里福德门,其中,所述新的第二个克里福德门是与所述第一个克里福德门共轭的当前第二个克里福德门。
13.根据条款所述11和12中任一项的系统,其中,将所述初始量子电路转换成所述中间量子电路包括:
将所述初始量子电路中的每个T门转换成对应的
Figure BDA0003283152210000229
泡利旋转门;
利用
Figure BDA00032831522100002210
泡利旋转门与克里福德门交换的不变性,将所述初始量子电路中的所有克里福德门移位到算式的后部;并且
将所述初始量子电路中的所有克里福德门合并成单个克里福德门。
14.根据条款11-13中任一项所述的系统,其中,所述初始量子电路采用非克里福德+T电路来表示,所述指令集由所述一个或多个处理器执行以使所述系统还进行以下处理:
在将所述初始量子电路转换成所述中间量子电路之前,将所述初始量子电路转换成由克里福德+T电路表示的形式。
15.根据条款11-14中任一项的系统,其中,所述指令集由所述一个或多个处理器执行以使所述系统还进行以下处理:
在将返回的所述更新后的量子电路作为所述初始量子电路的所述更新版本之前,将所述更新后的量子电路转换为等效的克里福德+T电路。
16.一种非易失性计算机可读介质,所述非易失性计算机可读介质存储指令集,所述指令集由计算机系统的至少一个处理器执行以使所述计算机系统执行量子电路的更新方法,所述方法包括:
将初始量子电路转换为中间量子电路,其中,所述中间量子电路是第一个克里福德门接着第一组
Figure BDA00032831522100002211
泡利旋转门;并且
通过对所述第一组
Figure BDA00032831522100002212
泡利旋转门中的每个
Figure BDA00032831522100002213
泡利旋转门进行以下操作,生成更新后的量子电路,所述更新后的量子电路是第二个克里福德门之后的第二组
Figure BDA00032831522100002214
泡利旋转门:
在所述第二组
Figure BDA00032831522100002215
泡利旋转门之后插入新的
Figure BDA00032831522100002216
泡利旋转门,其中,所述新的
Figure BDA00032831522100002217
泡利旋转门对应于所述第一组
Figure BDA00032831522100002218
泡利旋转门中的当前
Figure BDA00032831522100002219
泡利旋转门,通过所述第二个克里福德门和所述第二个克里福德门的共轭转置使所述第一组
Figure BDA0003283152210000231
泡利旋转门共轭,
扫描所述第二组
Figure BDA0003283152210000232
泡利旋转门以确定在非交换的
Figure BDA0003283152210000233
泡利旋转门之前是否存在匹配的
Figure BDA0003283152210000234
泡利旋转门;
响应于确定存在所述匹配的
Figure BDA0003283152210000235
泡利旋转门,从所述第二组
Figure BDA0003283152210000236
泡利旋转门中移除所述匹配的
Figure BDA0003283152210000237
泡利旋转门和所述新的
Figure BDA0003283152210000238
泡利旋转门,并且
如果所述匹配的
Figure BDA0003283152210000239
泡利旋转门和所述新的
Figure BDA00032831522100002310
泡利旋转门具有相反的符号,则采用新的克里福德门替换所述第二个克里福德门,其中,所述新的克里福德门对应于当前第二个克里福德门,通过所述新的
Figure BDA00032831522100002311
泡利旋转门使所述当前第二个克里福德门共轭。
17.根据条款16所述的非易失性计算机可读介质,其中,所述指令集由所述计算机系统的所述至少一个处理器执行以使所述计算机系统还进行以下处理:
采用新的第二个克里福德门替换所述第二个克里福德门,其中,所述新的第二个克里福德门是与所述第一个克里福德门共轭的当前第二个克里福德门。
18.根据条款16和17中任一项所述的非易失性计算机可读介质,其中,将所述初始量子电路转换成所述中间量子电路包括:
将所述初始量子电路中的每个T门转换成对应的
Figure BDA00032831522100002312
泡利旋转门;
利用
Figure BDA00032831522100002313
泡利旋转门与克里福德门交换的不变性,将所述初始量子电路中的所有克里福德门移位到算式的后部;并且
将所述初始量子电路中的所有克里福德门合并成单个克里福德门。
19.根据条款16-18中任一项所述的非易失性计算机可读介质,其中,所述初始量子电路采用非克里福德+T电路来表示,所述指令集由所述计算机系统的所述至少一个处理器执行以使所述计算机系统还进行以下处理:
在将所述初始量子电路转换成所述中间量子电路之前,将所述初始量子电路转换成由克里福德+T电路表示的形式。
20.根据条款16-19中任一项的非易失性计算机可读介质,其中,所述指令集由所述计算机系统的所述至少一个处理器执行以使所述计算机系统还进行以下处理:
在将返回的所述更新后的量子电路作为所述初始量子电路的所述更新版本之前,将所述更新后的量子电路转换为等效的克里福德+T电路。
在附图和说明书中,已经公开了示例性实施方式。然而,可以对这些实施方式进行许多变化和修改。因此,尽管采用了特定的术语,但是它们仅在一般和描述性的意义上使用,而不是为了限制或限定实施方式的范围,该范围由所附权利要求限定。

Claims (20)

1.一种量子电路的优化方法,该方法包括以下步骤:
将初始量子电路转换为中间量子电路,其中,所述中间量子电路是第一个克里福德门接着第一组
Figure FDA0003283152200000011
泡利旋转门;并且
通过对所述第一组
Figure FDA0003283152200000012
泡利旋转门中的每个
Figure FDA0003283152200000013
泡利旋转门进行以下操作,生成更新后的量子电路,所述更新后的量子电路是第二个克里福德门之后的第二组
Figure FDA0003283152200000014
泡利旋转门:
在所述第二组
Figure FDA0003283152200000015
泡利旋转门之后插入新的
Figure FDA0003283152200000016
泡利旋转门,其中,所述新的
Figure FDA0003283152200000017
泡利旋转门对应于所述第一组
Figure FDA0003283152200000018
泡利旋转门中的当前
Figure FDA0003283152200000019
泡利旋转门,通过左乘所述第二个克里福德门和右乘所述第二个克里福德门的共轭转置实现,
扫描所述第二组
Figure FDA00032831522000000110
泡利旋转门以确定在非交换的
Figure FDA00032831522000000111
泡利旋转门之前是否存在匹配的
Figure FDA00032831522000000112
泡利旋转门;
响应于确定存在所述匹配的
Figure FDA00032831522000000113
泡利旋转门,从所述第二组
Figure FDA00032831522000000114
泡利旋转门中移除所述匹配的
Figure FDA00032831522000000115
泡利旋转门和所述新的
Figure FDA00032831522000000116
泡利旋转门,并且
如果所述匹配的
Figure FDA00032831522000000117
泡利旋转门和所述新的
Figure FDA00032831522000000118
泡利旋转门具有相反的符号,则采用新的克里福德门替换所述第二个克里福德门,其中,所述新的克里福德门对应于当前第二个克里福德门,通过左乘两次所述新的
Figure FDA00032831522000000119
泡利旋转门实现。
2.根据权利要求1所述的方法,所述方法还包括:
采用新的第二个克里福德门替换所述第二个克里福德门,其中,所述新的第二个克里福德门是与所述第一个克里福德门共轭的当前第二个克里福德门。
3.根据权利要求1所述的方法,其中,将所述初始量子电路转换成所述中间量子电路包括:
将所述初始量子电路中的每个T门转换成对应的
Figure FDA00032831522000000120
泡利旋转门;
利用
Figure FDA00032831522000000121
泡利旋转门与克里福德门交换的不变性,将所述初始量子电路中的所有克里福德门移位到算式的后部;并且
将所述初始量子电路中的所有克里福德门合并成单个克里福德门。
4.根据权利要求1所述的方法,其中,在将所述初始量子电路转换成所述中间量子电路之前,对所述初始量子电路进行转换或优化。
5.根据权利要求4所述的方法,其中,所述初始量子电路如无法采用非克里福德+T电路来精确表示,所述方法还包括:
在将所述初始量子电路转换成所述中间量子电路之前,将所述初始量子电路转换成可以由克里福德+T电路表示的形式。
6.根据权利要求5所述的方法,其中,将所述初始量子电路转换成由所述克里福德+T电路表示的形式,所述克里福德+T电路使用辅助的量子比特。
7.根据权利要求1所述的方法,其中,所述方法还包括:
返回的所述更新后的量子电路作为所述初始量子电路的更新版本。
8.根据权利要求7所述的方法,其中,在返回所述更新后的量子电路之前,对所述更新后的量子电路进行转换或优化。
9.根据权利要求8所述的方法,所述方法还包括:
在将返回的所述更新后的量子电路作为所述初始量子电路的所述更新版本之前,将所述更新后的量子电路转换为等效的克里福德+T电路。
10.根据权利要求1至9中任一项所述的方法,其中,确定存在所述匹配的
Figure FDA0003283152200000021
泡利旋转门包括:
评估使用与目标量子硬件的约束保持平衡的所述匹配的
Figure FDA0003283152200000022
泡利旋转门带来的效率增益。
11.一种量子电路的更新系统,包括:
存储指令集的存储器:以及
一个或多个处理器,设置为执行所述指令集以使所述系统进行以下处理:
将初始量子电路转换为中间量子电路,其中,所述中间量子电路是第一个克里福德门紧跟第一组
Figure FDA0003283152200000023
泡利旋转门;并且
通过对所述第一组
Figure FDA0003283152200000024
泡利旋转门中的每个
Figure FDA0003283152200000025
泡利旋转门进行以下操作,生成更新后的量子电路,所述更新后的量子电路是第二个克里福德门之后的第二组
Figure FDA0003283152200000026
泡利旋转门:
在所述第二组
Figure FDA0003283152200000027
泡利旋转门之后插入新的
Figure FDA0003283152200000028
泡利旋转门,其中,所述新的
Figure FDA0003283152200000029
泡利旋转门对应于所述第一组
Figure FDA00032831522000000210
泡利旋转门中的当前
Figure FDA00032831522000000211
泡利旋转门,通过左乘所述第二个克里福德门和右乘所述第二个克里福德门的共轭转置实现,
扫描所述第二组
Figure FDA00032831522000000212
泡利旋转门以确定在非交换的
Figure FDA00032831522000000213
泡利旋转门之前是否存在匹配的
Figure FDA00032831522000000214
泡利旋转门;
响应于确定存在所述匹配的
Figure FDA00032831522000000215
泡利旋转门,从所述第二组
Figure FDA00032831522000000216
泡利旋转门中移除所述匹配的
Figure FDA00032831522000000217
泡利旋转门和所述新的
Figure FDA00032831522000000218
泡利旋转门,并且
如果所述匹配的
Figure FDA00032831522000000219
泡利旋转门和所述新的
Figure FDA00032831522000000220
泡利旋转门具有相反的符号,则采用新的克里福德门替换所述第二个克里福德门,其中,所述新的克里福德门对应于当前第二个克里福德门,通过左乘两次所述新的
Figure FDA00032831522000000221
泡利旋转门实现。
12.根据权利要求11所述的系统,其中,所述指令集由所述一个或多个处理器执行以使所述系统还进行以下处理:
采用新的第二个克里福德门替换所述第二个克里福德门,其中,所述新的第二个克里福德门是与所述第一个克里福德门共轭的当前第二个克里福德门。
13.根据权利要求11或12所述的系统,其中,将所述初始量子电路转换成所述中间量子电路包括:
将所述初始量子电路中的每个T门转换成对应的
Figure FDA0003283152200000031
泡利旋转门;
利用
Figure FDA0003283152200000032
泡利旋转门与克里福德门交换的不变性,将所述初始量子电路中的所有克里福德门移位到算式的后部;并且
将所述初始量子电路中的所有克里福德门合并成单个克里福德门。
14.根据权利要求11至13中任一项所述的系统,其中,所述初始量子电路采用非克里福德+T电路来表示,所述指令集由所述一个或多个处理器执行以使所述系统还进行以下处理:
在将所述初始量子电路转换成所述中间量子电路之前,将所述初始量子电路转换成由克里福德+T电路表示的形式。
15.根据权利要求11至14中任一项所述的系统,其中,所述指令集由所述一个或多个处理器执行以使所述系统还进行以下处理:
在将返回的所述更新后的量子电路作为所述初始量子电路的所述更新版本之前,将所述更新后的量子电路转换为等效的克里福德+T电路。
16.一种非易失性计算机可读介质,所述非易失性计算机可读介质存储指令集,所述指令集由计算机系统的至少一个处理器执行以使所述计算机系统执行量子电路的更新方法,所述方法包括:
将初始量子电路转换为中间量子电路,其中,所述中间量子电路是第一个克里福德门跟着第一组
Figure FDA0003283152200000033
泡利旋转门;并且
通过对所述第一组
Figure FDA0003283152200000034
泡利旋转门中的每个
Figure FDA0003283152200000035
泡利旋转门进行以下操作,生成更新后的量子电路,所述更新后的量子电路是第二个克里福德门之后的第二组
Figure FDA0003283152200000036
泡利旋转门:
在所述第二组
Figure FDA0003283152200000037
泡利旋转门之后插入新的
Figure FDA0003283152200000038
泡利旋转门,其中,所述新的
Figure FDA0003283152200000039
泡利旋转门对应于所述第一组
Figure FDA00032831522000000310
泡利旋转门中的当前
Figure FDA00032831522000000311
泡利旋转门,通过左乘所述第二个克里福德门和右乘所述第二个克里福德门的共轭转置实现,
扫描所述第二组
Figure FDA00032831522000000312
泡利旋转门以确定在非交换的
Figure FDA00032831522000000313
泡利旋转门之前是否存在匹配的
Figure FDA00032831522000000314
泡利旋转门;
响应于确定存在所述匹配的
Figure FDA00032831522000000315
泡利旋转门,从所述第二组
Figure FDA00032831522000000316
泡利旋转门中移除所述匹配的
Figure FDA00032831522000000317
泡利旋转门和所述新的
Figure FDA00032831522000000318
泡利旋转门,并且
如果所述匹配的
Figure FDA00032831522000000319
泡利旋转门和所述新的
Figure FDA00032831522000000320
泡利旋转门具有相反的符号,则采用新的克里福德门替换所述第二个克里福德门,其中,所述新的克里福德门对应于当前第二个克里福德门,通过左乘两次所述新的
Figure FDA00032831522000000321
泡利旋转门实现。
17.根据权利要求16所述的非易失性计算机可读介质,其中,所述指令集由所述计算机系统的所述至少一个处理器执行以使所述计算机系统还进行以下处理:
采用新的第二个克里福德门替换所述第二个克里福德门,其中,所述新的第二个克里福德门是与所述第一个克里福德门共轭的当前第二个克里福德门。
18.根据权利要求16所述的非易失性计算机可读介质,其中,将所述初始量子电路转换成所述中间量子电路包括:
将所述初始量子电路中的每个T门转换成对应的
Figure FDA0003283152200000041
泡利旋转门;
利用
Figure FDA0003283152200000042
泡利旋转门与克里福德门交换的不变性,将所述初始量子电路中的所有克里福德门移位到算式的后部;并且
将所述初始量子电路中的所有克里福德门合并成单个克里福德门。
19.根据权利要求16所述的非易失性计算机可读介质,其中,所述初始量子电路采用非克里福德+T电路来表示,所述指令集由所述计算机系统的所述至少一个处理器执行以使所述计算机系统还进行以下处理:
在将所述初始量子电路转换成所述中间量子电路之前,将所述初始量子电路转换成由克里福德+T电路表示的形式。
20.根据权利要求16所述的非易失性计算机可读介质,其中,所述指令集由所述计算机系统的所述至少一个处理器执行以使所述计算机系统还进行以下处理:
在将返回的所述更新后的量子电路作为所述初始量子电路的所述更新版本之前,将所述更新后的量子电路转换为等效的克里福德+T电路。
CN202080025347.5A 2019-03-29 2020-03-16 量子电路的优化方法和系统 Active CN114072817B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201962825949P 2019-03-29 2019-03-29
US62/825,949 2019-03-29
US16/795,416 2020-02-19
US16/795,416 US11049038B2 (en) 2019-03-29 2020-02-19 Methods and systems for optimizing quantum circuits
PCT/US2020/022963 WO2020205218A1 (en) 2019-03-29 2020-03-16 Methods and systems for optimizing quantum circuits

Publications (2)

Publication Number Publication Date
CN114072817A true CN114072817A (zh) 2022-02-18
CN114072817B CN114072817B (zh) 2024-10-01

Family

ID=72606069

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080025347.5A Active CN114072817B (zh) 2019-03-29 2020-03-16 量子电路的优化方法和系统

Country Status (3)

Country Link
US (1) US11049038B2 (zh)
CN (1) CN114072817B (zh)
WO (1) WO2020205218A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114861927A (zh) * 2022-07-04 2022-08-05 深圳市永达电子信息股份有限公司 基于冯氏计算机布尔数字逻辑的数字量子态的操作方法
CN115618955A (zh) * 2022-12-19 2023-01-17 量子科技长三角产业创新中心 一种量子线路优化方法、装置、设备及存储介质

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210406753A1 (en) * 2020-06-19 2021-12-30 Michele MOSCA System and Method for Optimizing Quantum Circuit Synthesis
EP3965022A1 (en) * 2020-09-02 2022-03-09 Bull SAS Method for synthesizing product of pauli rotations in a quantum circuit and process for synthesizing quantum circuits for trotter-suzuki n-order expansion
CN115310614B (zh) * 2021-04-21 2024-07-16 本源量子计算科技(合肥)股份有限公司 量子线路构建方法、装置及量子计算机操作系统
US20230141379A1 (en) * 2021-04-29 2023-05-11 Alibaba Singapore Holding Private Limited Implementing qubit gates using phase-shifted microwave pulses
CN117651955A (zh) * 2021-06-03 2024-03-05 Qc韦尔公司 用于量子计算机的指数自旋嵌入
WO2024015689A2 (en) * 2022-06-27 2024-01-18 The University Of Chicago System and method of improving fidelity in execution of quantum programs
CN115907025B (zh) * 2022-12-06 2023-08-22 北京百度网讯科技有限公司 量子网络协议仿真方法、装置及电子设备

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140280427A1 (en) * 2013-03-15 2014-09-18 Microsoft Corporation Method and system for decomposing single-qubit quantum circuits into a discrete basis
US20140264288A1 (en) * 2013-03-14 2014-09-18 Microsoft Corporation Method and system that implement a v-gate quantum circuit
CN106164942A (zh) * 2014-04-09 2016-11-23 微软技术许可有限责任公司 在Clifford+T基础上的“重复直到成功”电路的有效合成
CN106462808A (zh) * 2014-06-06 2017-02-22 微软技术许可有限责任公司 用于算术和函数合成的量子算法
CN107004161A (zh) * 2014-11-21 2017-08-01 微软技术许可有限责任公司 针对clifford+t基上的对角算子的高效实现的方法
US20170308803A1 (en) * 2015-11-20 2017-10-26 Joel J. Wallman Randomized Compiling for Quantum Computation
CN108334952A (zh) * 2017-11-24 2018-07-27 南京航空航天大学 一种新型通用量子门及量子线路优化方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7018852B2 (en) 2002-08-01 2006-03-28 D-Wave Systems, Inc. Methods for single qubit gate teleportation
US9018971B2 (en) 2012-10-26 2015-04-28 Northrop Grumman Systems Corporation Efficient resource state distillation
US10171088B1 (en) * 2017-07-12 2019-01-01 Electronics And Telecommunications Research Institute Quantum circuit for shifting phase of target qubit based on control qubit
US11250190B2 (en) 2017-09-22 2022-02-15 International Business Machines Corporation Simulating quantum circuits
US10997337B2 (en) * 2018-10-30 2021-05-04 Microsoft Technology Licensing, Llc Trading t-gates for qubits in arbitrary state and unitary synthesis

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140264288A1 (en) * 2013-03-14 2014-09-18 Microsoft Corporation Method and system that implement a v-gate quantum circuit
US20140280427A1 (en) * 2013-03-15 2014-09-18 Microsoft Corporation Method and system for decomposing single-qubit quantum circuits into a discrete basis
CN106164942A (zh) * 2014-04-09 2016-11-23 微软技术许可有限责任公司 在Clifford+T基础上的“重复直到成功”电路的有效合成
CN106462808A (zh) * 2014-06-06 2017-02-22 微软技术许可有限责任公司 用于算术和函数合成的量子算法
CN107004161A (zh) * 2014-11-21 2017-08-01 微软技术许可有限责任公司 针对clifford+t基上的对角算子的高效实现的方法
US20170308803A1 (en) * 2015-11-20 2017-10-26 Joel J. Wallman Randomized Compiling for Quantum Computation
CN108334952A (zh) * 2017-11-24 2018-07-27 南京航空航天大学 一种新型通用量子门及量子线路优化方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ANDREW M. CHILDS 等: "Toward the first quantum simulation with quantum speedup", 《PNAS》, 18 September 2018 (2018-09-18), pages 9456 - 9461, XP055628279, DOI: 10.1073/pnas.1801723115 *
范洪强 等: "用经典计算机模拟量子计算机", 《密码学报》, vol. 5, no. 3, 31 December 2018 (2018-12-31), pages 249 - 261 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114861927A (zh) * 2022-07-04 2022-08-05 深圳市永达电子信息股份有限公司 基于冯氏计算机布尔数字逻辑的数字量子态的操作方法
CN114861927B (zh) * 2022-07-04 2022-11-15 深圳市永达电子信息股份有限公司 基于冯氏计算机布尔数字逻辑的数字量子态的操作方法
CN115618955A (zh) * 2022-12-19 2023-01-17 量子科技长三角产业创新中心 一种量子线路优化方法、装置、设备及存储介质

Also Published As

Publication number Publication date
US11049038B2 (en) 2021-06-29
CN114072817B (zh) 2024-10-01
WO2020205218A1 (en) 2020-10-08
US20200311590A1 (en) 2020-10-01

Similar Documents

Publication Publication Date Title
CN114072817B (zh) 量子电路的优化方法和系统
Huang et al. Gamepad: A learning environment for theorem proving
JP6989387B2 (ja) 古典的なプロセッサで量子類似計算をエミュレートするためのquanton表現
Ghosh et al. The journey of graph kernels through two decades
JP7246392B2 (ja) ニューラルネットワークの関数サブネットワークの同時トレーニング
CN112232512B (zh) 量子计算模拟平台及线性方程组量子求解模拟方法、系统
Kaiser et al. Neural gpus learn algorithms
US10824373B2 (en) Effective quantum RAM architecture for quantum database
EP3674999A1 (en) Method of classification of images among different classes
TW201602813A (zh) 用於特徵搜尋之系統,裝置及方法
CN112836787B (zh) 通过高效混合并行化减少深度神经网络训练次数
CN111291892B (zh) 一种量子并行搜索方法
CN114175060A (zh) 用于量子计算设备的测量序列确定
CN108025911B (zh) 用于使用量子计算机求解3sat的系统和方法
Schuld et al. Representing data on a quantum computer
Schalkers et al. Efficient and fail-safe quantum algorithm for the transport equation
Bernard et al. Stochastic L-system inference from multiple string sequence inputs
EP4242936A1 (en) Reducing resources in quantum circuits
Sharma The Development of an Automated Approach for Designing Quantum Algorithms Using Circuits Generated By Generative Adversarial Networks (Gans)
Julian Deep learning with pytorch quick start guide: learn to train and deploy neural network models in Python
Zhao et al. Full State Quantum Circuit Simulation Beyond Memory Limit
Lu et al. Survey on quantum noise-aware machine learning
Abellán et al. Simulating and executing circuits employing the quantum computing paradigm
Ganguly et al. Quantum Computing with Silq Programming: Get up and running with quantum computing with the simplicity of this new high-level programming language
Patel et al. Quantum Inspired Image Classification: A Hybrid SVM Framework

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant