MCMTVChain
class qiskit.circuit.library.MCMTVChain(gate, num_ctrl_qubits, num_target_qubits)
Basi: MCMT
L'implementazione di MCMT con la catena a V CCX.
Questa implementazione richiede gli ancillas, ma è scomposta in un circuito molto più superficiale rispetto all'implementazione predefinita in MCMT.
Circuito ampliato:

Esempi
>>> 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 ├─────
└───┘ └───┘
La classe qiskit.circuit.library.generalized_gates.mcmt.MCMTVChain è deprecata a partire da Qiskit 1.4. Verrà rimosso non prima di 3 mesi dalla data di rilascio. Utilizzate invece MCMTGate con il plugin per la sintesi di catene a V.
Attributi
Parametri
- gate (Gate | Callable[[QuantumCircuit, circuit.Qubit, circuit.Qubit], circuit.Instruction])
- num_ctrl_qubits (int)
- num_target_qubits (int)
num_ancilla_qubits
Restituisce il numero di qubit ancilla necessari.
name
Tipo: str
Un nome leggibile per il circuito.
Esempio
from qiskit import QuantumCircuit
qc = QuantumCircuit(2, 2, name="my_circuit")
print(qc.name)my_circuit