Deutsch-Jozsa算法
# Deutsch-Jozsa 算法 - 判断函数是常数还是平衡
# 2-qubit 版本: f(x) = x XOR 1 (平衡函数)
# 预期: 测量结果为 |1> 当且仅当函数是平衡的
init 2
# 初始化第二个量子比特为 |-> 态
H 1
# 对第一个量子比特创建叠加态
H 0
# Oracle: 实现 f(x) = x XOR 1
# 这相当于在 qubit 0 上应用 X 门
X 0
# 再次对第一个量子比特应用 H
H 0
# 测量
MEASURE 0 0
# 判断: 如果结果是 1,则函数是平衡的; 如果结果是 0,则函数是常数的
PRINT 0
STOP