Pauli
In mathematical physics and mathematics, the Pauli matrices are a set of three 2 × 2 complex matrices which are Hermitian, involutory and unitary.
The Pauli matrices, also called the Pauli spin matrices, are complex matrices that arise in Pauli's treatment of spin in quantum mechanics. They are defined by:
σ1=σx=[0110]\sigma_1 = \sigma_x = \begin{bmatrix} 0 && 1 \\ 1 && 0 \end{bmatrix}
σ2=σy=[0ii0]\sigma_2 = \sigma_y = \begin{bmatrix} 0 && -i \\ i && 0 \end{bmatrix}
σ3=σz=[1001]\sigma_3 = \sigma_z = \begin{bmatrix} 1 && 0 \\ 0 && -1 \end{bmatrix}
In quantum mechanics, pauli matrices occur in the Pauli equation which takes into account the interaction of the spin of a particle with an external electromagnetic field.
Pauli matrices also represent the interaction states of two polarization filters for horizontal / vertical polarization, 45º polarization, and circular polarization.
Each Pauli matrix is Hermitian, and together with the identity matrix
II
, the Pauli matrices form a basis for the real vector space of 2 × 2 Hermitian matrices. This means that any 2 × 2 Hermitian matrix can be written in a unique way as a linear combination of Pauli matrices, with all coefficients being real numbers.
The identity matrix
II
is sometimes considered as the zero
th^{th}
Pauli matrix or
σ0\sigma_0
The Pauli matrices are important in the context of quantum mechanics, and quantum information more generally, as they can be used to describe the quantum states, as well as the evolution of the quantum states, of 2 Dimensional quantum systems, called qubits. They are also involved in fundamental quantum information processing protocols such as quantum teleportation.

Generating Pauli-X for n qubits,
To define
X=σx(111)X = \sigma_x( 111 )
using numpy, one need to define the entire matrix .
import numpy as np
# Define Pauli-X for [ 1 1 1 ] using numpy
X = np.array([
[0, 0, 0, 0, 0, 0, 0, 1],
[0, 0, 0, 0, 0, 0, 1, 0],
[0, 0, 0, 0, 0, 1, 0, 0],
[0, 0, 0, 0, 1, 0, 0, 0],
[0, 0, 0, 1, 0, 0, 0, 0],
[0, 0, 1, 0, 0, 0, 0, 0],
[0, 1, 0, 0, 0, 0, 0, 0],
[1, 0, 0, 0, 0, 0, 0, 0]
])
These kind of definition for
X=σx(111)X = \sigma_x( 111 )
can be obtained easily using QuTIpy.
from qutipy.Pauli import generate_nQubit_Pauli_X
# Define Pauli-X for [ 1 1 1 ] using qutipy
X = generate_nQubit_Pauli_X([1, 1, 1])
Copy link