mindquantum.core.circuit.QubitNumberConstrain
- class mindquantum.core.circuit.QubitNumberConstrain(n_qubits: int, with_ctrl: bool = True, add_after: bool = True)[源代码]
只将噪声信道作用在比特数为
n_qubits
的量子门上。- 参数:
n_qubits (int) - 量子门的比特数目。
with_ctrl (bool) - 控制比特是否算在总比特数目之内。默认值:
True
。add_after (bool) - 在量子门前面或者后面添加量子信道。默认值:
True
。
样例:
>>> from mindquantum.core.circuit import QubitNumberConstrain, Circuit, BitFlipAdder, MixerAdder >>> circ = Circuit().h(0).x(1, 0) >>> circ ┏━━━┓ q0: ──┨ H ┠───■───── ┗━━━┛ ┃ ┏━┻━┓ q1: ────────┨╺╋╸┠─── ┗━━━┛ >>> adder = MixerAdder([ ... QubitNumberConstrain(2), ... BitFlipAdder(0.1) ... ]) >>> adder(circ) ┏━━━┓ ╔═════════════╗ q0: ──┨ H ┠───■───╢ BFC(p=1/10) ╟─── ┗━━━┛ ┃ ╚═════════════╝ ┏━┻━┓ ╔═════════════╗ q1: ────────┨╺╋╸┠─╢ BFC(p=1/10) ╟─── ┗━━━┛ ╚═════════════╝