Skip to main content
IBM Quantum Platform

MCMTVCadena

class qiskit.circuit.library.MCMTVChain(gate, num_ctrl_qubits, num_target_qubits)

GitHub

Bases: MCMT

La implementación de MCMT utilizando la cadena en V CCX.

Esta implementación requiere ancillas pero se descompone en un circuito mucho menos profundo que la implementación por defecto en MCMT.

Circuito ampliado:

Diagrama que ilustra el circuito descrito anteriormente.

Ejemplos

>>> 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 ├─────

└───┘ └───┘

Obsoleto desde la versión 1.4

La clase qiskit.circuit.library.generalized_gates.mcmt.MCMTVChain está obsoleta a partir de Qiskit 1.4. Se retirará como muy pronto 3 meses después de la fecha de publicación. En su lugar, utilice MCMTGate con el complemento de síntesis de cadena en V.


Atributos

Parámetros

num_ancilla_qubits

Devuelve el número de qubits ancilla necesarios.

name

Tipo: str

Un nombre legible para el circuito.

Ejemplo

from qiskit import QuantumCircuit

qc = QuantumCircuit(2, 2, name="my_circuit")
print(qc.name)
my_circuit

Métodos

inverse

inverse(annotated=False)

GitHub

Devuelve el circuito MCMT inverso, que es él mismo.

Parámetros

annotated (bool)

¿Le ha resultado útil esta página?
Informe de un error, de una errata o solicite contenido en GitHub.