University Physics V · Introduction to Quantum Information · 20.2
Bloch Sphere, Density Operators & Mixed States
Stop carrying a qubit as two complex amplitudes and start carrying it as one arrow. The density operator is what a measurement actually sees, the Bloch vector is its picture, and the arrow's length separates a state you have prepared from a state you only know statistically.
Build the model
Connect the measurement to the mechanism.
A ket describes a qubit you prepared; it cannot describe a source that hands you |0⟩ on half its runs and |1⟩ on the rest, because no single vector in C² gives those statistics. The object that does is the density operator ρ = Σ pᵢ|ψᵢ⟩⟨ψᵢ|, Hermitian, positive and of unit trace, with every expectation value ⟨A⟩ = Tr(ρA). For a qubit it has a picture.
The four matrices I, σₓ, σy, σz span the 2 × 2 Hermitian matrices and are orthogonal under Tr(σᵢσⱼ) = 2δᵢⱼ, so unit trace leaves ρ = (I + r⋅σ)/2 with rᵢ = Tr(ρσᵢ) = ⟨σᵢ⟩. The eigenvalues (1 ± |r|)/2 must be non-negative, so r lives in the closed unit ball: pure states are the surface, |r| = 1, and the purity Tr ρ² = (1 + |r|²)/2 measures the distance from the centre I/2. A unitary U = exp(−iα n⋅σ/2) turns r about n by α, so U and −U give the same rotation and SU(2) covers SO(3) twice.
The price is deliberate: ρ predicts every outcome probability and forgets how the mixture was made, and the ball itself is a two-dimensional accident — a qutrit's state space is not a ball in R⁸.
- Simple definition
- A density operator is a Hermitian, positive, unit-trace operator whose expectation values Tr(ρA) reproduce every measurement; for one qubit it is ρ = (I + r⋅σ)/2, and the Bloch vector r fills the unit ball with the pure states on its surface.
- Example
- Preparing |0⟩ with probability 0.8 and |1⟩ with 0.2 gives ρ = diag(0.8, 0.2), so r = (0, 0, 0.6): eigenvalues 0.8 and 0.2, purity (1 + 0.36)/2 = 0.68, and a σₓ measurement returns +1 with probability (1 + 0)/2 = 0.5.
The half-angle is why orthogonal kets sit at antipodes: |0⟩ and |1⟩ are 180° apart on the sphere but 90° apart in Hilbert space.
θ ∈ [0, π] measured from the z axis, φ ∈ [0, 2π); both dimensionless angles in radians; |0⟩ is the north pole
The object measurement sees. A pure state is the special case ρ = |ψ⟩⟨ψ| with ρ² = ρ.
pᵢ are preparation probabilities summing to 1; ρ and A are operators on C², ρ itself dimensionless
Three Pauli expectation values are the whole state — measuring them is one-qubit tomography.
σ = (σₓ, σy, σz) the Pauli matrices with Tr(σᵢσⱼ) = 2δᵢⱼ; r a dimensionless real vector, |r| ≤ 1
Positivity of λ₋ is what confines r to the ball; only |r| = 1 makes ρ a projector.
uses (r⋅σ)² = |r|² I; purity is dimensionless and runs from ½ at the centre to 1 on the surface
Every qubit statistic is a dot product of two arrows — which is why r fixes all of them at once.
n a unit vector naming the Pauli observable n⋅σ; P± its two projectors; probabilities dimensionless
Unitaries preserve |r| and therefore purity; only non-unitary evolution can shorten the arrow.
α in radians about the unit axis n; U and −U give the same R, and α = 2π gives U = −I
Two amplitudes, one arrow: parametrising the pure state
A ket α|0⟩ + β|1⟩ holds four real numbers. Normalisation |α|² + |β|² = 1 removes one; the global phase, which no measurement can see, removes another. Spend the two that remain as α = cos(θ/2) and β = e(iφ) sin(θ/2) and compute the three Pauli expectation values: ⟨σz⟩ = |α|² − |β|² = cos θ, ⟨σₓ⟩ = 2 Re(α*β) = sin θ cos φ, ⟨σy⟩ = 2 Im(α*β) = sin θ sin φ. Those are the Cartesian components of a unit vector at polar angle θ and azimuth φ — the Bloch vector r. The half-angle matters: |0⟩ sits at θ = 0 and |1⟩ at θ = π, so states orthogonal in C² are antipodal on the sphere, and |+⟩ = (|0⟩ + |1⟩)/√2 lands on the equator at r = (1, 0, 0). A σz measurement of |+⟩ gives ±1 with equal probability, but that is a fact about the z axis, not a sign that the state is uncertain: along x it reads +1 every time.
When no ket exists: the density operator
Take a source that emits |0⟩ on half its runs and |1⟩ on the rest. No vector in C² reproduces its statistics: any α|0⟩ + β|1⟩ with |α|² = |β|² = ½ has a definite axis along which it reads +1 with certainty, while this source gives 50/50 along every axis. The description that works is the density operator ρ = Σ pᵢ|ψᵢ⟩⟨ψᵢ|, the preparation-weighted sum of projectors. Averaging ⟨ψᵢ|A|ψᵢ⟩ over the pᵢ gives ⟨A⟩ = Σ pᵢ Tr(|ψᵢ⟩⟨ψᵢ|A) = Tr(ρA), so ρ carries every expectation value. It is Hermitian because each projector is, positive because each pᵢ ≥ 0, and of unit trace because Σ pᵢ = 1. For the 50/50 source, ρ = ½|0⟩⟨0| + ½|1⟩⟨1| = I/2. For |+⟩ prepared on every run, ρ = |+⟩⟨+| = ½[[1, 1], [1, 1]] = (I + σₓ)/2. The difference between the two lives entirely in the off-diagonal entries — the coherences — and ρ² = ρ holds only for the second.
Expand ρ in Pauli matrices and the ball appears
The 2 × 2 Hermitian matrices form a four-dimensional real vector space, and (I, σₓ, σy, σz) is an orthogonal basis for it under the Hilbert–Schmidt product: Tr(σᵢσⱼ) = 2δᵢⱼ and Tr σᵢ = 0. Expand ρ = (a I + r⋅σ)/2; unit trace forces a = 1, and taking Tr(ρσᵢ) picks out rᵢ = ⟨σᵢ⟩. So ρ = (I + r⋅σ)/2 for a real three-vector r, and positivity decides how long r may be. Because (r⋅σ)² = |r|² I, the operator r⋅σ has eigenvalues ±|r| and ρ has eigenvalues (1 ± |r|)/2; the smaller one is non-negative only for |r| ≤ 1. Every state is a point of the closed unit ball: the surface |r| = 1 is exactly the pure states of the previous section, the centre is I/2. The purity Tr ρ² = ¼ Tr(I + 2 r⋅σ + |r|² I) = (1 + |r|²)/2 rises from ½ at the centre to 1 on the surface. For ρ = diag(0.8, 0.2), r = (0, 0, 0.6), the eigenvalues are 0.8 and 0.2, the purity is 0.68, and the von Neumann entropy −0.8 log₂ 0.8 − 0.2 log₂ 0.2 = 0.72 bits says how much is unknown.
The arrow fixes every statistic and hides the ensemble
Measuring the Pauli observable n⋅σ along a unit vector n uses the projectors P± = (I ± n⋅σ)/2, and Tr(ρP±) = ½ Tr ρ ± ½ Tr(ρ n⋅σ) = (1 ± r⋅n)/2. The whole predictive content of a qubit is one dot product, so two preparations with the same r are indistinguishable by any measurement, however many copies you are given. That is the cost of the description. The centre I/2 is ½|0⟩⟨0| + ½|1⟩⟨1|, and equally ½|+⟩⟨+| + ½|−⟩⟨−|, and equally a pure state drawn uniformly from the whole sphere. The state r = (0, 0, 0.6) is 0.8|0⟩⟨0| + 0.2|1⟩⟨1| and also an equal mixture of the two pure states at r = (±0.8, 0, 0.6), whose average is the same arrow. Any convex combination of surface points that lands on r is a legitimate ensemble for it. The same ρ even arises with no ensemble at all, as the partial trace of an entangled pair — the improper mixture of Topic 20.4 — and no local experiment tells the cases apart. ρ fixes statistics, not its origin.
Gates rotate the arrow, and SU(2) covers SO(3) twice
A unitary acts as ρ → UρU†, and for U = exp(−iα n⋅σ/2) = cos(α/2) I − i sin(α/2) n⋅σ the Pauli algebra gives U(r⋅σ)U† = (R r)⋅σ with R the SO(3) rotation about n by α. Every gate is a rotation of the arrow. X = i⋅exp(−iπσₓ/2) is a half-turn about x, sending (rₓ, ry, rz) to (rₓ, −ry, −rz); the Hadamard is a half-turn about (x̂ + ẑ)/√2, swapping rₓ with rz; S and T are quarter- and eighth-turns about z. Rotations preserve |r|, so no gate changes purity: a qubit at r = (0, 0, 0.6) leaves a Hadamard at (0.6, 0, 0) with purity still 0.68. The map U → R is two-to-one, since U and −U conjugate ρ identically, and α = 2π gives U = −I — a full turn returns the arrow but flips the ket's sign, a sign only interference can see, as neutron interferometry confirmed. Shortening the arrow needs non-unitary evolution: pure dephasing multiplies rₓ and ry by e(−t/T₂) while leaving rz, so |+⟩ after one T₂ sits at (0.37, 0, 0) with purity 0.57, sliding into the ball along a path no gate can reverse.
Computing it, and where the ball stops
In NumPy the whole construction is four lines: build ρ as np.outer(ψ, psi.conj()) or as a weighted sum of projectors, read r off as [np.trace(ρ @ s).real for s in (sx, sy, sz)], take np.linalg.eigvalsh(ρ) for the eigenvalues and np.trace(ρ @ ρ).real for the purity — then check that |r| ≤ 1 and that the eigenvalues agree with (1 ± |r|)/2 to floating precision. The picture, though, is a two-dimensional accident. A qutrit's ρ has eight real parameters, expanding on the Gell-Mann matrices, and positivity does not carve out a ball: the pure states form a four-dimensional subset of the seven-sphere, and most points of that sphere are not states at all. The Bloch ball is the exact geometry of one qubit and nothing larger — which is why this unit builds every protocol from qubits and tensor products of them, where each factor still has its arrow.
Change one variable at a time
Make the relationship visible.
Slide |r| from 1 to 0 and watch the purity bar fall from 1 to ½ as the arrow shrinks into the centre I/2; then set n along the arrow (a equal to θ) so p(+1) reads the larger eigenvalue (1 + |r|)/2, and swing n perpendicular to it to see p(+1) drop to exactly ½ whatever the length.
PURITY Tr ρ²0.820
EIGENVALUE λ₊0.900
p(+1) ALONG n0.846
ENTROPY S0.469 bits
Live interpretationPURITY Tr ρ²: 0.820. EIGENVALUE λ₊: 0.900. p(+1) ALONG n: 0.846. ENTROPY S: 0.469 bits
Catch the common trap
Explain before calculating.
A qubit is prepared in ρ = 0.8|0⟩⟨0| + 0.2|1⟩⟨1|, so its Bloch vector is r = (0, 0, 0.6). Which statement about it is correct?
Choose an answer to test the model.
Practice & worked examples
Reason from the model, then test the result.
EasyFind the Bloch vector, the density matrix and the purity of |ψ⟩ = (|0⟩ + i|1⟩)/√2, and give the probability of the +1 outcome for a σy measurement and for a σz measurement.
- Match to cos(θ/2)|0⟩ + e(iφ) sin(θ/2)|1⟩: cos(θ/2) = sin(θ/2) = 1/√2 gives θ = π/2, and e(iφ) = i gives φ = π/2.
- So r = (sin θ cos φ, sin θ sin φ, cos θ) = (0, 1, 0). Check directly with α = 1/√2, β = i/√2: ⟨σₓ⟩ = 2 Re(α*β) = 2 Re(i/2) = 0, ⟨σy⟩ = 2 Im(α*β) = 2 Im(i/2) = 1, ⟨σz⟩ = |α|² − |β|² = 0.
- ρ = (I + σy)/2 = ½[[1, −i], [i, 1]], which is exactly |ψ⟩⟨ψ| = ½ (1, i)ᵀ (1, −i).
- |r| = 1, so Tr ρ² = (1 + 1)/2 = 1: pure, on the surface. Along y, p(+1) = (1 + r⋅ŷ)/2 = (1 + 1)/2 = 1; along z, p(+1) = (1 + 0)/2 = ½.
Answerr = (0, 1, 0), ρ = ½[[1, −i], [i, 1]], purity 1; σy gives +1 with certainty and σz gives +1 with probability ½.
MediumA source emits |0⟩ with probability 0.7 and |+⟩ = (|0⟩ + |1⟩)/√2 with probability 0.3. Find ρ, its Bloch vector, its eigenvalues and purity, the probability that a σₓ measurement returns +1, and a second ensemble that gives the same ρ.
- ρ = 0.7|0⟩⟨0| + 0.3|+⟩⟨+| = 0.7[[1, 0], [0, 0]] + 0.3 × ½[[1, 1], [1, 1]] = [[0.85, 0.15], [0.15, 0.15]]; the trace is 1.
- Bloch vectors add with the same weights: r = 0.7(0, 0, 1) + 0.3(1, 0, 0) = (0.3, 0, 0.7), so |r| = √(0.09 + 0.49) = √0.58 = 0.762 — inside the ball, because mixing two surface points lands on the chord between them.
- Eigenvalues λ± = (1 ± 0.762)/2 = 0.881 and 0.119. Check: they sum to the trace 1 and multiply to the determinant 0.85 × 0.15 − 0.15² = 0.105.
- Purity Tr ρ² = (1 + 0.58)/2 = 0.79, or directly 0.85² + 2(0.15²) + 0.15² = 0.7225 + 0.045 + 0.0225 = 0.79.
- p(σₓ = +1) = (1 + rₓ)/2 = (1 + 0.3)/2 = 0.65.
- The eigen-ensemble gives the same ρ: the eigenstate along +r̂ with weight 0.881 and the one along −r̂ with weight 0.119 — a different preparation no measurement can distinguish from the original.
Answerρ = [[0.85, 0.15], [0.15, 0.15]], r = (0.3, 0, 0.7), λ = 0.881 and 0.119, purity 0.79, p(σₓ = +1) = 0.65; the eigenstates along ±r̂ weighted 0.881 and 0.119 form an indistinguishable second ensemble.
HardA qubit starts in |+⟩. A T gate is applied, then pure dephasing acts for a time t = T₂ ln 2, multiplying rₓ and ry by e(−t/T₂) and leaving rz. Find r, the purity and the von Neumann entropy afterwards, then show that rotating the qubit back onto the x axis with T† cannot restore the purity.
- |+⟩ has r = (1, 0, 0). T = diag(1, e(iπ/4)) equals e(iπ/8) exp(−iπσz/8), a rotation about z by α = π/4 up to a global phase, so r → (cos 45°, sin 45°, 0) = (0.707, 0.707, 0) with |r| still 1.
- Dephasing is not unitary. With t = T₂ ln 2 the factor is e(−ln 2) = ½, so r → (0.354, 0.354, 0) and |r| = 0.5. The off-diagonal entry of ρ in the z basis, (rₓ − i ry)/2, has shrunk to magnitude 0.25.
- Purity Tr ρ² = (1 + 0.25)/2 = 0.625, and the eigenvalues are λ± = (1 ± 0.5)/2 = 0.75 and 0.25.
- Entropy S = −0.75 log₂ 0.75 − 0.25 log₂ 0.25 = 0.311 + 0.500 = 0.811 bits: from zero entropy the qubit has lost most of its distinguishability from I/2.
- T† is the rotation by −π/4 about z, so T†ρT has r = (0.5, 0, 0): the arrow is back on the x axis but still half-length, with purity 0.625 and entropy 0.811 bits unchanged. Rotations preserve |r|; the only way back to the surface is a non-unitary step such as a fresh preparation.
AnswerAfter dephasing r = (0.354, 0.354, 0), |r| = 0.5, purity 0.625, S = 0.811 bits; T† returns r to (0.5, 0, 0) with purity still 0.625 — no unitary shortens or lengthens the arrow.