qml.pauli.pauli_word_to_matrix¶
- pauli_word_to_matrix(pauli_word, wire_map=None)[source]¶
Convert a Pauli word from a tensor to its matrix representation.
The matrix representation of a Pauli word has dimension \(2^n \times 2^n\), where \(n\) is the number of qubits provided in
wire_map
. For wires that the Pauli word does not act on, identities must be inserted into the tensor product at the correct positions.- Parameters
pauli_word (Observable) – an observable, either a
Tensor
,Prod
or single-qubit observable representing a Pauli group element.wire_map (dict[Union[str, int], int]) – dictionary containing all wire labels used in the Pauli word as keys, and unique integer labels as their values
- Returns
The matrix representation of the multi-qubit Pauli over the specified wire map.
- Return type
array[complex]
- Raises
TypeError – if the input observable is not a proper Pauli word.
Example
>>> wire_map = {'a' : 0, 'b' : 1} >>> pauli_word = qml.X('a') @ qml.Y('b') >>> pauli_word_to_matrix(pauli_word, wire_map=wire_map) array([[0.+0.j, 0.-0.j, 0.+0.j, 0.-1.j], [0.+0.j, 0.+0.j, 0.+1.j, 0.+0.j], [0.+0.j, 0.-1.j, 0.+0.j, 0.-0.j], [0.+1.j, 0.+0.j, 0.+0.j, 0.+0.j]])