5个版本
新 0.0.6 | 2024年8月13日 |
---|---|
0.0.5 | 2024年8月6日 |
0.0.3 | 2024年8月6日 |
0.0.2 | 2024年7月5日 |
0.0.1 | 2024年7月5日 |
#1194 在 算法
324 每月下载量
210KB
5.5K SLoC
基于Rust的量子电路综合库
如果您想快速使用这些算法,您可能想查看这个库的 Python包装器。
lib.rs
:
rustiq-core
是一个量子电路综合库。
它包含表示各种数学对象的数据结构,以及能够生成针对2比特门计数或深度的有效电路的综合方法。
数据结构
- CliffordCircuit 和 CliffordGate - 用来表示克立夫顿门和电路的数据结构。
- PauliSet - 用于存储Pauli算子列表的数据结构。该列表可以通过
CliffordGate
或CliffordCircuit
对象高效地共轭。 - Tableau - 基于
PauliSet
构建的克立夫顿表格实现。 - IsometryTableau - 扩展表格数据结构,用于描述应用于部分稳定输入的克立夫顿算子。
- GraphState - 表示图态的数据结构
综合算法
所有综合算法都位于 [synthesis] 子模块中。
- 克立夫顿算子的综合由 isometry_synthesis 方法处理。此方法可以处理将
IsometryTableau
对象综合到CliffordCircuit
。 - 可以使用 synthesize_graph_state 和 synthesize_stabilizer_state 来综合图态和守恒态。
- 方法 codiagonalize 可以用于生成一个对给定的成对共轭Pauli算子进行对角化的
CliffordCircuit
。 - 方法 greedy_pauli_network 可以用于实现一系列Pauli旋转。
依赖关系
~5–10MB
~96K SLoC