量子计算 - 软件工具
以下是量子计算中使用的软件工具:
ProjectQ
ProjectQ是一个开源的量子计算框架软件,由苏黎世联邦理工学院启动。它使用Python编程。ProjectQ允许用户利用其简单的语法用Python语言编写他们的量子问题程序。之后,它可以将这些程序实现到任何类型的后端,无论是像IBM量子体验平台这样的真实量子芯片,还是在任何经典计算机上运行的模拟器。FermiLib是ProjectQ中用于分析费米子模拟问题的库。
Cirq
Cirq是一个Python框架,用于创建、编辑和调用NISQ(即噪声中等规模量子)电路。它可在git仓库中找到。OpenFemion-Cirq是一个用于开发量子算法的平台。Openfemion-Cirq通常可以与cirq一起使用。
Q-CTRL Python开放控制
Q-CTRL Python开放控制是由澳大利亚量子创业公司Q-CTRL开发的开源量子计算工具包。它简化了从现有文献中创建和部署已建立的抗误差量子控制协议的过程。该软件包的目标是成为社区开发的最广泛的已发表和测试的量子控制技术库,具有用户友好的导出功能。
Quantify
Quantify是一个基于BSD 4许可的开源平台,由荷兰创业公司Qblox和Orange Quantum Systems创建。该平台的功能在Read-the-Docs中有详细文档,并提供基本教程,以便快速设置和启动测量。此外,还提供高级排序教程,用于更复杂的实验。
英特尔量子模拟器
英特尔量子模拟器,以前被称为更有趣的qHiPSTER。这个开源的高性能模拟器可以用作单节点或分布式系统,并且能够模拟一般的单量子比特门和双量子比特受控门。
Mitiq工具
Mitiq由Unitary Fund(一个致力于培养造福最多人的量子技术生态系统的非营利组织)开发,是一个Python工具包,用于在量子计算机上实现误差缓解技术。
Mitiq兼容为IBM Q的Qiskit、谷歌的Cirq、Rigetti的PyQuil和其他量子电路形式编写的量子程序,通过转换为OpenQASM。8. 伯克利量子合成工具包。
Yao
Yao被设计为“面向人类的可扩展、高效的量子算法设计”,是一个Julia语言包,用作构建和操作量子电路的中间表示。它允许用户使用原生Julia在量子电路中创建自己的抽象。
Silq
Silq是一种新的用于量子计算的高级编程语言,具有强大的静态类型系统,由苏黎世联邦理工学院开发,最初在PLDI’20发表。它的创建是为了解决当前量子语言要求程序员在较低的抽象级别工作的问题,导致代码不直观且混乱。Silq是第一种旨在通过支持安全的自动计算来克服这一挑战的量子语言,它允许使用隐式删除临时值的直观语义,类似于经典计算。为了确保Silq语义的物理性,其类型系统使用新颖的注释来拒绝非物理程序。
Qulacs
Qulacs是由京都大学开发并在日本初创公司QunaSys维护的变分量子电路模拟器,旨在用于量子计算研究。它针对大型、嘈杂或参数化量子电路的快速模拟进行了优化。
伯克利量子合成工具包
伯克利量子合成工具包是一个高度优化的量子编译器和研究平台,它将来自各种LBNL项目的概念集成到一个用户友好且易于扩展的量子计算软件套件中。
该套件具有用于最多四个量子比特的最优深度合成的QSearch;用于最多六个量子比特的高质量解决方案合成的LEAP;用于最多八个量子比特的扩展良好解决方案质量合成的QFAST;QGO,一个结合了分区和合成的优化编译器;以及QFactor,一个使用张量网络的最快的量子电路优化器。
伯克利量子合成工具包中的所有软件都是免费和开源的。该工具包提供了多种免费的量子开发工具,用于合成和优化,并且正在不断改进。
QCircuits
QCircuits作为GitHub仓库提供,是一个Python软件工具,用于模拟和研究基于量子电路模型的量子计算机。它设计了一个简单、轻量级的界面,易于使用,尤其适合量子计算新手。
QCircuits中的主要类是State,它表示计算机的(量子)状态作为复向量空间中的单位向量,以及Operator,它表示量子门作为这些向量空间上的酉算子。
QuEST
QuEST,或量子精确模拟工具包,是一个用于量子电路、状态向量和密度矩阵的高性能模拟器。它利用多线程、GPU加速和分布式计算,在笔记本电脑、台式机和联网超级计算机上提供快速性能。QuEST作为一个独立工具运行,无需安装,并且易于编译和运行。
QuEST支持超过140种运算,从基本的命名门到具有针对最佳模拟效率的专业算法的高级运算符,它还适应用户指定的酉变换和退相干通道。它处理任意数量的控制和目标量子比特,并提供用于Pauli字符串、对角运算符和QASM的数据结构。