EquivalenceLibrary
class qiskit.circuit.EquivalenceLibrary(base=None)
Bases: BaseEquivalenceLibrary
Una biblioteca que proporciona un mapeo unidireccional de Gates a sus implementaciones equivalentes como QuantumCircuits.
Atributos
graph
Devuelve el gráfico que representa los datos de la biblioteca de equivalencias.
Esta propiedad debe tratarse como de sólo lectura, ya que proporciona una referencia al estado interno del objeto EquivalenceLibrary objeto. Si el gráfico devuelto por esta propiedad muta podría corromper el contenido del objeto. Si necesita modificar la salida PyDiGraph asegúrese de hacer una copia antes de cualquier modificación.
Devuelve
Un objeto gráfico con datos de equivalencia en cada nodo.
Tipo de retorno
PyDiGraph
Métodos
add_equivalence
add_equivalence(gate, equivalent_circuit)
Añade una nueva equivalencia a la biblioteca. Las futuras consultas de la Puerta incluirán el circuito dado, además de todas las equivalencias existentes (incluidas las de la base).
Las puertas parametrizadas (las que incluyen qiskit.circuit.Parameters en su Gate.params ) pueden marcarse como equivalentes a circuitos parametrizados, siempre que los parámetros coincidan.
Parámetros
- gate (Gate) – Una instancia de Gate.
- equivalent_circuit (QuantumCircuit) – Un circuito que implemente de forma equivalente la Puerta dada.
draw
draw(filename=None)
Dibuja las relaciones de equivalencia disponibles en la biblioteca.
Esta función ejecutará la herramienta Graphviz del sistema sobre un archivo que contenga cadenas de texto modificables por el usuario (como los nombres de las puertas). Se recomienda llamar a esta función únicamente con datos de confianza.
Parámetros
filename (str) – Una ruta opcional donde guardar la imagen resultante. Si no se especifica, se mostrará la imagen.
Devuelve
Si filename es None, entonces la imagen renderizada.
Tipo de retorno
PIL.Image
Eleva
InvalidFileError - si el nombre del archivo no es válido.
get_entry
get_entry(gate)
Obtiene el conjunto de QuantumCircuit circuitos de instancias de la biblioteca que implementan de forma equivalente la instancia Gate.
Los circuitos parametrizados tendrán sus parámetros sustituidos por las entradas correspondientes de Gate.params.
Parámetros
gate (Gate) – Una instancia de Gate.
Devuelve
Una lista de instancias equivalentes de QuantumCircuit .
Si está vacía, la biblioteca no contiene ninguna descomposición conocida de Gate.
Los circuitos devueltos se ordenarán según su inserción en la biblioteca, de más antiguo a más reciente, de arriba a abajo. El orden de StandardEquivalenceLibrary no suele ser el mismo en todas las versiones de Qiskit.
Tipo de retorno
Lista[ QuantumCircuit ]
has_entry
has_entry(gate)
Comprueba si una biblioteca contiene alguna descomposición para puerta.
Parámetros
gate (Gate) – Una instancia de Gate.
Devuelve
True si la puerta tiene una descomposición conocida en la biblioteca.
De lo contrario, False.
Tipo de retorno
keys
keys()
Devuelve la lista de claves del mapa de índices de nodos.
Devuelve
Claves del mapa de índices de clave a nodo.
Tipo de retorno
Lista
node_index
node_index(key)
Devuelve el índice del nodo para una clave dada.
Parámetros
key (Key) – Clave de una equivalencia.
Devuelve
Índice del nodo del grafo correspondiente a la clave dada.
Tipo de retorno
Int
set_entry
set_entry(gate, entry)
Establece el registro de equivalencia de una Puerta. Las futuras consultas de la Puerta devolverán sólo los circuitos proporcionados.
Las puertas parametrizadas (las que incluyen qiskit.circuit.Parameters en su Gate.params ) pueden marcarse como equivalentes a circuitos parametrizados, siempre que los parámetros coincidan.
Parámetros
- gate (Gate) – Una instancia de Gate.
- entry (List['QuantumCircuit']) – Una lista de
QuantumCircuitinstancias, cada una de las cuales implementa de forma equivalente el Gate dado.