2 个版本
使用旧的 Rust 2015
0.1.2 | 2016 年 7 月 26 日 |
---|---|
0.1.0 | 2016 年 7 月 22 日 |
#331 在 模拟 中
37KB
753 行
量子
高级 Rust 量子计算机模拟器。
动机
Quantum 是一个量子计算机模拟器,其设计目标如下:
-
实用性:我们可以模拟一个 5 个量子比特的寄存器,足以运行有趣的算法。
-
效率:我们从头开始使用原语实现所有重要操作。
-
教育价值:文档是对如何在 Rust 中实现量子计算机的散文描述。
-
正确性:它完全用安全 Rust 编写,具有明确的状态。
阅读此理论的不错起点是 维基百科文章,您可以按照我们的门、矢量、常见操作 和 量子寄存器 的实现文档进行。
用法
# Cargo.toml
[dependencies]
quantum = "0.1.2"
// main.rs
use computer::QuantumComputer;
use gates;
// Let's do something simple of a 3-qubit system.
let mut c1 = QuantumComputer::new(3);
c1.initialize(5);
c1.apply(gates::identity(3));
c1.collapse();
assert_eq!(5, c1.value());
// Now let's perform a Hadamard transform.
let mut c2 = QuantumComputer::new(1);
c2.initialize(0);
c2.apply(gates::hadamard());
c2.collapse();
let result = if 1 == c2.value() { "heads" } else { "tails" };
println!("coin flip: {}", result);
贡献
- 创建或拥有一个问题
- 分叉 开发 分支
- 编写代码和测试
rust 测试
- 提交带有合理信息的 提交 并推送
- 提交拉取请求
依赖项
~0.5–0.8MB
~12K SLoC