【技术实现步骤摘要】
一种基于酉运算的量子程序自动修复方法
[0001]本专利技术属于软件工程与量子计算的交叉领域,具体涉及一种基于酉运算的量子程序自动修复方法。
技术介绍
[0002]作为一种新兴的且不断发展的计算形式,量子计算利用其量子并行的优势,有潜力解决极其复杂的计算问题以及执行特定领域的模拟任务。量子计算具有广泛的应用前景,算法能够解决多领域中的关键问题,例如Shor算法能够在多项式时间内分解整数,进而使得破解密码学中的加密协议RSA成为可能;在机器学习中,Grover算法能够使搜索过程的时间复杂度O(N)降低至量子支持向量机能够使得训练时间复杂度从经典算法的O(M2N)降低至O(logMN)。如今,已有多种语言可供进行量子程序的编写以执行量子算法,例如IBM的Qiskit,Google的Cirq,Microsoft的Q#和本源量子的Qpanda。
[0003]与经典程序类似,量子程序也存在可能导致会程序运行失效的缺陷。为了确保量子程序的质量和可靠性,在软件工程中,常用软件测试技术来评估和分析被测程序的行为,然后采用程序修复技术通过生成正确的补丁来消除程序中的缺陷。然而,目前关于量子程序测试领域的研究仅仅关注于如何测试量子程序以及如何将程序中出现的缺陷进行分类和总结,而如何进行程序修复仍然未解决。与经典计算不同的是,量子测量是在真实量子系统中获取量子信息的唯一手段。这样的操作会导致量子态坍缩,使得原始量子比特完全被改变。因此,将经典计算中的程序修复技术直接应用于量子计算似乎不切实际且无效的。因为大多数之前的研究都关注于代 ...
【技术保护点】
【技术特征摘要】
1.一种基于酉运算的量子程序自动修复方法,其特征在于:该方法包括以下步骤:步骤1)、将量子程序视为黑盒模型并对其进行建模,建立初态、末态以及演化过程之间合理的方程,对演化算子进行初步求解;步骤2)、定义前置修复和后置修复两种修复模式,并建立合理的数学关系;步骤3)、采用由足够充分的正交基的测试用例集,以输出和期望概率分布的K
‑
L散度作为评判基准作为测试预言;步骤4)、根据测试结果对演化算子进行修正和进一步估计,并对等价的估计算子进行约简。步骤5)、计算候选的补丁,并对非酉的补丁就行酉化修正。2.根据权利要求1所述的一种基于酉运算的量子程序自动修复方法,其特征在于:在步骤1中,对于有n个量子比特的量子程序,进行量子比特运算之前和之后的状态称为初态和末态|ψ>,量子计算中任意的量子态均由矢量表示。3.根据权利要求1或2所述的一种基于酉运算的量子程序自动修复方法,其特征在于:在步骤1中,对于一个量子程序,把从初态到末态的演化过程抽象为一个酉线性变换U:U∈U(2
n
),其中U(2
n
)表示2
n
×2n
维的酉群,每个酉算子都具有性质符号表示对计算子进行共轭转置,符号|
·
>和<
·
|分别表示列向量和行向量,并且存在关系4.根据权利要求3所述的一种基于酉运算的量子程序自动修复方法,其特征在于:在步骤1中,设期望的程序和含缺陷的程序演化过程的对应的酉算子分别为U
e
,U
d
;对于含有n量子比特的量子程序,其量子态给定2
n
个正交的初态两种程序对应的末态分别为其中上标(i)表示第i(i=0,1,,2
n
‑
1)个作为测试用例的初态及其对应作为输出结果的末态;那么通过输入
‑
输出的线性关系和求解得到,求解得到,5.根据权利要求1所述的一种基于酉运算的量子程序自动修复方法,其特征在于:在步骤2中,定义前置修复和后置修复两种修复模式,采用酉算子作为修复含缺陷程序的补丁U
p
;前置修复通过引入修复算子U
ep
使得U
r
=U
d
U
ep
,后置修复通过引入修复算子U
op
使得U
r
=U
op
U
d
。6.根据权利要求5所述的一种基于酉运算的量子程序自动修复方法,其特征在于:在步骤2...
【专利技术属性】
技术研发人员:殷蓓蓓,李玥辰,裴翰宇,黄麟植,蔡开元,
申请(专利权)人:北京航空航天大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。