qml.pauli.is_pauli_word¶
-
is_pauli_word
(observable)[source]¶ Checks if an observable instance consists only of Pauli and Identity Operators.
A Pauli word can be either:
A single pauli operator (see
PauliX
for an example).A
Tensor
instance containing Pauli operators.A
Prod
instance containing Pauli operators.A
SProd
instance containing a valid Pauli word.A
Hamiltonian
instance with only one term.
Warning
This function will only confirm that all operators are Pauli or Identity operators, and not whether the Observable is mathematically a Pauli word. If an Observable consists of multiple Pauli operators targeting the same wire, the function will return
True
regardless of any complex coefficients.- Parameters
observable (Operator) – the operator to be examined
- Returns
true if the input observable is a Pauli word, false otherwise.
- Return type
bool
Example
>>> is_pauli_word(qml.Identity(0)) True >>> is_pauli_word(qml.PauliX(0) @ qml.PauliZ(2)) True >>> is_pauli_word(qml.PauliZ(0) @ qml.Hadamard(1)) False >>> is_pauli_word(4 * qml.PauliX(0) @ qml.PauliZ(0)) True