You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

sympy.physics.quantum.gate中ZGate工作原理及运算结果疑问

问题原因

你看到的结果不是ZGate实现错误,是对SymPy量子模块的比特位编号规则理解有偏差:

  • SymPy量子门传入的位置参数遵循小端序编号规则:参数0对应量子比特字符串最右侧的最低有效位(LSB),不是多数人直觉里字符串最左侧的最高位。
  • 泡利Z门的作用逻辑本身是对的:仅对作用位为|1⟩的态乘相位系数-1,作用位为|0⟩时态保持不变。

结果对应验证

你运行得到的所有输出完全符合规则:

  1. 单比特场景(你认为正确的1a、1b):只有1位比特,位序差异体现不出来,结果和直觉一致。
  2. 双比特场景Z(0)(作用于最右侧比特位):
    • Qubit('00')最右位是0 → 输出|00⟩
    • Qubit('01')最右位是1 → 输出-|01⟩
    • Qubit('10')最右位是0 → 输出|10⟩
    • Qubit('11')最右位是1 → 输出-|11⟩
  3. 双比特场景Z(1)(作用于从右往左数第二位,即字符串左数第一位):
    • Qubit('00')目标位是0 → 输出|00⟩
    • Qubit('01')目标位是0 → 输出|01⟩
    • Qubit('10')目标位是1 → 输出-|10⟩
    • Qubit('11')目标位是1 → 输出-|11⟩

这种小端位序是量子计算编程框架里的常见设计,只是和日常从左到右读二进制串的习惯相反,不属于实现bug。

内容的提问来源于stack exchange,提问作者Klaus Rohe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.30 20:21:07