Raggruppamento osservabile
qiskit_addon_cutting.utils.observable_grouping
Modulo per la realizzazione del raggruppamento osservabile di Pauli.
observables_restricted_to_subsystem
observables_restricted_to_subsystem(qubits, global_observables, /)
Limitare ogni osservabile al suo supporto su un determinato sottosistema.
A PauliList viene restituito se viene fornito un oggetto PauliList è fornito; altrimenti, verrà restituito un list[Pauli] .
Qualsiasi informazione di fase sarà scartata, in conformità con il comportamento standard quando si affetta un Pauli.
Parametri
- qubits (Sequence[int]) – I qubit in un sottosistema
- global_observables (Sequence[Pauli] | PauliList) – L'elenco degli osservabili
Tipo di restituzione
[elencoPauli] | PauliList
Risultati
Ciascuna Pauli limitato al sottosistema.
>>> observables_restricted_to_subsystem([1, 3], PauliList(["IXYZ", "iZZXX"]))
PauliList(['IY', 'ZX'])CommutingObservableGroup
class CommutingObservableGroup(general_observable, commuting_observables)
Basi: object
Insieme di osservabili mutuamente qubit-wise commutanti.
Parametri
commuting_observables
Tipo: list[Pauli]
Osservabili che possono essere misurati simultaneamente.
general_observable
Tipo: Pauli
Una singola stringa di Pauli che contiene tutte le misure qubit-wise necessarie per misurare tutto in commuting_observables.
pauli_bitmasks
Tipo: list[int]
Una maschera di bit per ogni osservabile in commuting_observables; dato un elemento, ogni bit corrisponde al fatto che la voce corrispondente in pauli_indices sia rilevante per quell'osservabile.
pauli_indices
Tipo: list[int]
Gli indici di non identità Pauliin general_observable.
ObservableCollection
class ObservableCollection(observables, /)
Basi: object
Raccolta di osservabili organizzata per un'efficiente esecuzione delle misure.
Le osservabili sono organizzate automaticamente in insiemi di osservabili mutuamente commutativi, ciascuno rappresentato da una CommutingObservableGroup.
Assegnare le variabili membro.
Parametri
observables (PauliList | Iterable[Pauli]) – Osservabili di interesse
construct_general_observables
static construct_general_observables(commuting_subobservables, /)
Costruire l'osservabile più generale da ciascun insieme di osservabili mutuamente commutanti.
In casi particolari, gli utenti avanzati potrebbero voler sottoclasse e sovrascrivere questo staticmethod per misurare qubit aggiuntivi rispetto a quelli predefiniti per ogni osservabile generale.
Tipo di restituzione
Parametri
groups
Tipo: list[CommutingObservableGroup]
Elenco di CommutingObservableGroupche, insieme, contengono tutte le osservabili desiderate.
lookup
Tipo: dict[Pauli, list[tuple[int, int]]]
Ottenere un dict che mappa ogni Pauli a una lista di indici, (i, j), a osservabili pendolari in groups.
Per ogni elemento dell'elenco, significa che l'elemento Pauli è dato dalla j-esima osservabile commutativa nel i-esimo gruppo.
Questo elenco avrà una lunghezza minima di 1, ma può essere potenzialmente più lungo se più oggetti CommutingObservableGroup sono compatibili con l'oggetto Pauli.