MCMTVChain
class qiskit.circuit.library.MCMTVChain(gate, num_ctrl_qubits, num_target_qubits)
Bases: MCMT
A implementação do MCMT usando a cadeia em V do CCX.
Essa implementação requer ancillas, mas é decomposta em um circuito muito mais raso do que a implementação padrão em MCMT.
Circuito expandido:

Exemplos
>>> from qiskit.circuit.library import HGate
>>> MCMTVChain(HGate(), 3, 2).draw()q_0: ──■────────────────────────■──
│ │
q_1: ──■────────────────────────■──
│ │
q_2: ──┼────■──────────────■────┼──
│ │ ┌───┐ │ │
q_3: ──┼────┼──┤ H ├───────┼────┼──
│ │ └─┬─┘┌───┐ │ │
q_4: ──┼────┼────┼──┤ H ├──┼────┼──
┌─┴─┐ │ │ └─┬─┘ │ ┌─┴─┐
q_5: ┤ X ├──■────┼────┼────■──┤ X ├
└───┘┌─┴─┐ │ │ ┌─┴─┐└───┘
q_6: ─────┤ X ├──■────■───┤ X ├─────
└───┘ └───┘
A classe qiskit.circuit.library.generalized_gates.mcmt.MCMTVChain está obsoleta desde o Qiskit 1.4. Ele não será removido antes de 3 meses após a data de lançamento. Em vez disso, use o MCMTGate com o plug-in de síntese de cadeia em V.
Atributos
Parâmetros
- gate (Gate | Callable[[QuantumCircuit, circuit.Qubit, circuit.Qubit], circuit.Instruction])
- num_ctrl_qubits (int)
- num_target_qubits (int)
num_ancilla_qubits
Retorna o número de qubits ancilla necessários.
name
Tipo: str
Um nome legível por humanos para o circuito.
Exemplo
from qiskit import QuantumCircuit
qc = QuantumCircuit(2, 2, name="my_circuit")
print(qc.name)my_circuit