# Demo 2:模幂 U_7 > 第 9 章 高等代数与数论量子算法 · [本章演示](index.md) · [代码演示总索引](../index.md) **可视化**:3 子图 —— 16 输入态全测 + QPE **对应教程**:[第 9 章 高等代数与数论量子算法 中相关小节](https://tutorial.chenzhaoyun.com/quantum-tutorial/ch09-algebra-number-theory/) · 依赖安装:`pip install "unified-quantum[visualization,simulation]"` ## 实现要点 模型: 取 N=15, a=7. U_7 在 Z_15 上的轨道结构 (用于 Shor 周期查找): 固定点: 0, 5, 10, 15 (其中 15 -> 0, 不是真正的"不动"而是溢出折叠). 3 个不相交 4-cycle: (1,7,4,13), (2,14,8,11), (3,6,12,9). 所以周期 r = 4. 量子部分: 因为 uniqc 不支持 add_gate('U', matrix=...), 这里用"单输入目标" 的等价实现: 对每个 x in [0, 15], 构造多受控 X 门, 只在输入为 |x> 时将 diff 位置翻转, 把 |x> 映射到 |7x mod 15>. 控制只用"非 diff"位, 避免互相干扰. 对其它输入态, 电路作用为 identity (按基态正交, 不会污染 |x> 那一支). 16 次独立测量验证全部 a*x mod N 映射. QPE 部分: 用 1-qubit S 门 eigenstate |1> (与 ch04 demo 1 一致的简化路径), 4-qubit 精度寄存器测相位 1/4 -> r=4. ## 完整源码 ```{literalinclude} 02_modular_exp.py :language: python :linenos: :caption: demos/ch09-algebra-number-theory/02_modular_exp.py ``` ## 运行结果 ![Demo 2:模幂 U_7](02_modular_exp.png) ## 运行方式 ```bash # 仓库根目录执行;输出 PNG 到 demos/ch09-algebra-number-theory/02_modular_exp.png,关键统计到 stdout .venv/bin/python3 demos/ch09-algebra-number-theory/02_modular_exp.py ``` --- [← 本章演示](index.md) · [↑ 代码演示总索引](../index.md) · [⌂ 教程门户](https://tutorial.chenzhaoyun.com/)