用于读、写、编译、模拟量子计算机电路的python工具。
qubiter的Python项目详细描述
Github的Qubiter
教程
下面的Jupyter笔记本是 很好地介绍了Qubiter的基本特性。其他笔记本 在Qubiter的Jupyter笔记本文件夹里 讨论更多高级功能:
安装
避免的最简单的事情 安装过程中的许多麻烦是获得一个帐户 在我们的亚马逊云服务上 www.bayesforge.com。免费一年。 Bayesforge已经有了 安装了所有python和qubiter(尽管您可能需要 使用git更新qubiter)。 bayesforge也可以在腾讯云上使用。
当然,您也可以克隆最新版本或更新 计算机上的旧版本的Qubiter 通过使用git命令从这个repo。
或者,您可以安装一个较旧但更稳定的版本
来自python包的qubiter
管理器pip
使用:
pip install qubiter --user
如果您使用的是Jupyter笔记本,请使用:
!pip install qubiter --user
重新启动内核。
库比特是什么?
qubiter项目的目标是最终提供一整套工具,主要用python编写,用于在经典计算机上设计和模拟量子电路。(因此,它将只解决门模型的需要,而不是退火,量子计算机工程师)。我们或其他人可以为退火厂启动类似的项目。
<>一个早期的C++计算机程序,也称为QuiTever(参见http://www.ar-tiste.com/qubiter.html),由Robert R. Tucci编写,只进行量子编译。这个较新的项目包括一个类似于早期qubiter的quantum csd编译器,它基于线性代数(cosine sine)cs分解,但用python编写。但这个新项目也包含了更多的内容。我们包括了读写量子电路文件的课程。也可用于将具有多个控制的栅极的电路扩展为仅具有CNOT和单量子比特旋转栅极的电路。也用于将电路嵌入较大的电路中。最后但并非最不重要的是,我们还提供了一个模拟器。
模拟器没有经过测试,但是应该非常快,因为它依赖于numpy,这是一个用于c代码的python包装器。
除了用docstrings详细记录外,每个类在最后都有一个main方法,给出了它的使用示例(并对其进行了测试)。此外,我们还收藏了大量不断增加的jupyter笔记本,这些笔记本可以同时教授一些物理知识和如何使用qubiter。
量子电路被保存为文本文件,这使得qc工程师之间的交换变得容易。
量子电路是用ascii(而不是postscript或专有格式)绘制的。我们希望我们能让你相信,量子电路的ascii绘图是出奇的清晰,表达,和方便,真的所有你需要的,另外,不同于其他格式,他们是超级容易编辑。使用其他格式可能需要掌握诸如postscript之类的困难科目才能编写/编辑电路文件。这完全没有必要!
github的quantum fog(参见https://github.com/artiste-qb-net/quantum-fog)是一个由同一个人发起的孪生项目。我们希望量子雾最终会调用qubiter来执行一些任务,比如量子编译和模拟。
github上的所有qubiter,除了quantum_csd_编译器文件夹的内容外,都是根据bsd许可证(3子句版本)授权的,在末尾添加了一个子句,几乎是从apache 2.0许可证一字不差地获取的,授予了额外的专利权。见LICENSE.md
。
Qubiter的Quantum CSD_编译器文件夹的内容在GPLV2(Linux)许可下获得许可。
贡献者
(按字母顺序)
- 德坎特,亨宁
- 特雷吉勒斯,亨利
- 图奇,罗伯特
- 尹,陶