Skip to main content
IBM Quantum Platform

Agrupación observable

qiskit_addon_cutting.utils.observable_grouping

Módulo para realizar la agrupación observable de Pauli.

observables_restricted_to_subsystem

observables_restricted_to_subsystem(qubits, global_observables, /)

GitHub

Restringir cada observable a su soporte en un subsistema determinado.

A PauliList si se proporciona un PauliList en caso contrario, se devolverá list[Pauli] .

Cualquier información de fase será descartada, de acuerdo con el comportamiento estándar al cortar un Pauli.

Parámetros

  • qubits (Sequence[int]) – Los qubits de un subsistema
  • global_observables (Sequence[Pauli] | PauliList) – La lista de observables

Tipo de retorno

[listPauli] | PauliList

Devuelve

Cada Pauli restringido al subsistema.

>>> observables_restricted_to_subsystem([1, 3], PauliList(["IXYZ", "iZZXX"]))
PauliList(['IY', 'ZX'])

CommutingObservableGroup

class CommutingObservableGroup(general_observable, commuting_observables)

GitHub

Bases: object

Conjunto de observables mutuamente conmutables entre qubits.

Parámetros

commuting_observables

Tipo: list[Pauli]

Observables que pueden medirse simultáneamente.

general_observable

Tipo: Pauli

Una única cadena de Pauli que contiene todas las mediciones qubit-sabias necesarias para medirlo todo en commuting_observables.

pauli_bitmasks

Tipo: list[int]

Una máscara de bits para cada observable en commuting_observables; dado un elemento, cada bit corresponde a si la entrada correspondiente en pauli_indices es relevante para ese observable.

pauli_indices

Tipo: list[int]

Los índices de no identidad Paulis en general_observable.

ObservableCollection

class ObservableCollection(observables, /)

GitHub

Bases: object

Recogida de observables organizada para una toma de medidas eficaz.

Los observables se organizan automáticamente en conjuntos de observables mutuamente conmutables qubit-sabios, cada uno representado por un CommutingObservableGroup.

Asignar variables miembro.

Parámetros

observables (PauliList | Iterable[Pauli]) – Observables de interés

construct_general_observables

static construct_general_observables(commuting_subobservables, /)

Construir el observable más general a partir de cada conjunto de observables mutuamente conmutables.

En casos especiales, los usuarios avanzados pueden querer subclasificar y anular este staticmethod para medir qubits adicionales a los predeterminados para cada observable general.

Tipo de retorno

list[Pauli]

Parámetros

commuting_subobservables (list[list[Pauli]])

groups

Tipo: list[CommutingObservableGroup]

Lista de CommutingObservableGroups que, en conjunto, contienen todos los observables deseados.

lookup

Tipo: dict[Pauli, list[tuple[int, int]]]

Obtener dict que asigna cada Pauli observable a una lista de índices, (i, j), a observables conmutables en groups.

Para cada elemento de la lista, significa que el Pauli viene dado por el j-ésimo observable conmutado en el i-ésimo grupo.

Esta lista tendrá como mínimo una longitud de 1, pero puede ser más larga si varios objetos CommutingObservableGroup son compatibles con el objeto Pauli.

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