arXivDaily arXiv每日学术速递 周一至周五更新
arXiv周末暂无论文更新,休息一下吧,周末愉快~~
arXiv 2609.33255quant-phcs.SE

N×M版本编程用于量子软件:跨框架与引擎的高层组件

NxM-Version Programming for Quantum Software: High-Level Components across Frameworks and Engines

  • School of Arts, Sciences, and Humanities, University of São Paulo(圣保罗大学艺术、科学与人文学院)
  • Polytechnic School, University of São Paulo(圣保罗大学理工学院)
  • University of São Paulo(圣保罗大学)
  • Federal University of São Carlos(圣卡洛斯联邦大学)

机构由 AI 辅助整理,请以论文原文为准。

Neilson Carlos Leite Ramalho, Higor Amario de Souza, Anthony Accioly, Valter Vieira de Camargo, Marcos Lordello Chaim

AI总结:

本文提出Quanifi,将量子框架高层例程封装为NiFi组件,实现N×M跨框架引擎执行,并成功发现三个真实缺陷。

AI中文摘要:

近年来,量子计算已从纯粹的理论领域演变为学术界和工业界的活跃领域。因此,量子软件工程作为一个旨在组织量子软件构建、测试和运行过程的新兴领域应运而生。然而,编写量子软件仍然需要使用量子门和量子比特进行编程,并且需要掌握Qiskit、Cirq、Qrisp、pyQuil和PennyLane等量子软件框架的特定知识,每个框架都通过自己的工具链访问量子硬件。我们提出了Quanifi,它将这些框架的高层例程打包为Apache NiFi数据流画布上的组件。这些组件以OpenQASM 2.0格式交换电路,因此一个框架构建的电路可以由另一个框架执行。这允许两种类型的冗余:多个框架实现同一算法,多个引擎(模拟器或真实硬件)执行同一电路。我们描述了N×M程序执行,它交叉了这两种冗余:单个NiFi流程在每个M个引擎上运行每个N个实现,并且由于每个结果都标记有其实现和引擎,因此分歧可以追溯到实现、引擎或单个实现-引擎对。我们使用三个框架构建的Grover算法在来自IBM、IQM和Quantum Inspire的三台量子计算机上运行,以及一个由三个加法器构建器组成的矩阵在一个通过两条路径访问的IQM设备上运行。N×M执行帮助我们发现了三个真实缺陷:Quantum Inspire适配器中不正确的门集声明、在Tuna-17上执行与取反的Rx角度一致的行为,以及通过Open Quantum进行的电路修改。后两者返回了错误答案而未报告错误。我们报告了所有三个缺陷,Open Quantum的提供商确认并修复了其QASM解析缺陷。

英文摘要:

Quantum computing has in recent years evolved from a purely theoretical field to an active area in both academia and industry. As a result, Quantum Software Engineering has emerged as an area that aims to organize the process of building, testing, and running quantum software. However, writing quantum software still requires programming with quantum gates and qubits, as well as knowledge specific to quantum software frameworks such as Qiskit, Cirq, Qrisp, pyQuil and PennyLane, each of which reaches quantum hardware through its own toolchain. We present Quanifi, which packages the high-level routines of these frameworks as components on the Apache NiFi dataflow canvas. The components exchange circuits as OpenQASM 2.0, so a circuit built by one framework can be executed by another. This allows for two types of redundancy: several frameworks implement the same algorithm, and several engines (simulators or real hardware) execute the same circuit. We describe N$\times$M program execution, which crosses the two: a single NiFi flow runs each of the $N$ implementations on each of the $M$ engines, and because every result is labelled with its implementation and its engine, a disagreement can be linked to an implementation, to an engine, or to a single implementation-engine pair. We ran Grover's algorithm built by three frameworks on three quantum computers from IBM, IQM and Quantum Inspire, and a matrix of three adder builders on one IQM device reached through two routes. N$\times$M execution helped us discover three real defects: an incorrect gate-set declaration in the Quantum Inspire adapter, execution consistent with negated $R_x$ angles on Tuna-17, and circuit modification through Open Quantum. The latter two returned wrong answers without reporting an error. We reported all three defects and Open Quantum's provider confirmed and fixed its QASM parsing defect.

↑