Skip to main content
IBM Quantum Platform

Agrupamento observável

qiskit_addon_cutting.utils.observable_grouping

Módulo para conduzir o agrupamento observável de Pauli.

observables_restricted_to_subsystem

observables_restricted_to_subsystem(qubits, global_observables, /)

GitHub

Restringir cada observável ao seu suporte em um determinado subsistema.

A PauliList será retornado se um PauliList for fornecido; caso contrário, um list[Pauli] será retornado.

Qualquer informação de fase será descartada, de acordo com o comportamento padrão ao cortar um Pauli.

Parâmetros

  • qubits (Sequence[int]) – Os qubits em um subsistema
  • global_observables (Sequence[Pauli] | PauliList) – A lista de observáveis

Tipo de retorno

[listaPauli] PauliList

Retorna

Cada Pauli restrito ao 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 observáveis mutuamente comutáveis em termos de qubit.

Parâmetros

commuting_observables

Tipo: list[Pauli]

Observáveis que podem ser medidos simultaneamente.

general_observable

Tipo: Pauli

Uma única cadeia de Pauli que contém todas as medições de qubit-wise necessárias para medir tudo em commuting_observables.

pauli_bitmasks

Tipo: list[int]

Uma máscara de bits para cada observável em commuting_observables; dado um elemento, cada bit corresponde a se a entrada correspondente em pauli_indices é relevante para esse observável.

pauli_indices

Tipo: list[int]

Os índices de não identidade Paulis em general_observable.

ObservableCollection

class ObservableCollection(observables, /)

GitHub

Bases: object

Coleção de observáveis organizada para a realização eficiente de medições.

Os observáveis são organizados automaticamente em conjuntos de observáveis mutuamente comutáveis em termos de qubit, cada um representado por um CommutingObservableGroup.

Atribuir variáveis de membro.

Parâmetros

observables (PauliList | Iterable[Pauli]) – Observáveis de interesse

construct_general_observables

static construct_general_observables(commuting_subobservables, /)

Construa o observável mais geral a partir de cada conjunto de observáveis mutuamente comutáveis.

Em casos especiais, os usuários avançados podem querer subclasse e substituir este staticmethod para medir qubits adicionais além do padrão para cada observável geral.

Tipo de retorno

list[Pauli]

Parâmetros

commuting_subobservables (list[list[Pauli]])

groups

Tipo: list[CommutingObservableGroup]

Lista de CommutingObservableGroups que, juntas, contêm todos os observáveis desejados.

lookup

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

Obter um ditado que mapeia cada Pauli observável para uma lista de índices, (i, j), para observáveis comutáveis em groups.

Para cada elemento da lista, isso significa que o Pauli é dado pelo j-ésimo observável comutável no i-ésimo grupo.

Essa lista terá, no mínimo, 1 de comprimento, mas poderá ser maior se vários CommutingObservableGroup forem compatíveis com o objeto Pauli.

Esta página foi útil?
Relate um bug, erro de digitação ou solicite conteúdo no GitHub.