University Physics V · Quantum Uncertainty and Commutation Relations · 8.7
Compatible Observables & Simultaneous Eigenbases
Two observables can be sharp at once exactly when their operators commute. The proof is four lines, and the payoff is a working method: use each new commuting observable to break the degeneracy the last one left, until the labels |n, l, m⟩ name a single vector rather than a subspace.
Build the model
Connect the measurement to the mechanism.
Compatibility is the whole content of [A, B] = 0, and the proof is short enough to hold in your head. Let A|a⟩ = a|a⟩. Then A(B|a⟩) = B(A|a⟩) = a(B|a⟩), so B maps the eigenspace Vₐ into itself.
If a is non-degenerate, Vₐ is a line and B|a⟩ can only be a multiple of |a⟩: the joint eigenvector was already there. If a is degenerate, the basis inside Vₐ was never fixed by A, and the restriction of B to Vₐ is a Hermitian operator on that d-dimensional space, so the spectral theorem diagonalises it there; do this in every eigenspace and collect the results, and you have a complete orthonormal basis carrying both labels. Degeneracy is not a nuisance in this argument, it is the resource — it is exactly the freedom A left over, and each further commuting observable spends some of it.
Keep going until every label list (a, b, c, …) names one ray, and you have a complete set of commuting observables: |n, l, m⟩ for spinless hydrogen. Three costs come attached. The theorem produces a basis, not a fact about any state you happen to hold; a mean commutator that vanishes in one state is not compatibility, so the Robertson bound going quiet proves nothing; and for unbounded operators AB and BA need not even share a domain, so commuting has to be restated on the unitary groups e(isA) and e(itB).
- Simple definition
- Two observables are compatible when their Hermitian operators commute, which is precisely the condition for a complete orthonormal basis of simultaneous eigenvectors — states with a definite value of both — to exist.
- Example
- In spinless hydrogen the level n = 2 has E = −3.40 eV four times over, so energy is not a label; L² and Lz commute with Ĥ and with each other, and the four states separate as (l, m) = (0, 0), (1, −1), (1, 0) and (1, 1).
Converts one matrix product each way into an existence claim about a basis — the only claim a measurement can act on.
A, B Hermitian on one space; a in A's units, b in B's. Neither spectrum need be non-degenerate.
The engine of the proof: it shrinks an N-dimensional problem down to one of size dim Vₐ.
B|a⟩ stays inside the eigenspace Vₐ. If dim Vₐ = 1 it must be a multiple of |a⟩.
One 9 × 9 diagonalisation becomes blocks of 1, 3 and 5 — the numerical recipe, not just the proof.
a ≠ a′ are eigenvalues of A; the element carries B's units. Off-block entries are forced to zero.
Complete is testable: every joint eigenvalue list must name one ray, with no degeneracy left over.
Spinless hydrogen: (Ĥ, L², Lz) → |n, l, m⟩; adding Sz gives |n, l, m, mₛ⟩.
Shows the labels working: each new commuting observable partitions the eigenspaces the last one left.
n = 3 gives 9 = 1 + 3 + 5; each l block then splits into 2l + 1 values of m. Spin doubles it to 2n².
The definition that survives x̂ and p̂: [A, B]ψ = 0 on a dense domain is not enough, as Nelson's example shows.
sA and tB dimensionless. These unitaries are bounded and defined on all of H, unlike AB and BA.
Compatible is a statement about the pair
Two Hermitian operators A and B on the same space are compatible when [A, B] = AB − BA = 0. One direction of the theorem is immediate. Suppose an orthonormal basis (|k⟩) exists with A|k⟩ = aₖ|k⟩ and B|k⟩ = bₖ|k⟩. Then AB|k⟩ = aₖ bₖ|k⟩ = BA|k⟩ for every k, and two linear operators that agree on a basis agree on every vector, so [A, B] = 0. Notice what is not required: neither spectrum has to be non-degenerate, and the lists aₖ and bₖ may repeat as often as they like. The contrast is sharp in C². [σz, σₓ] = 2iσy ≠ 0, and σz has eigenvectors |↑⟩ and |↓⟩; but σₓ|↑⟩ = |↓⟩, which is orthogonal to |↑⟩ rather than proportional to it, so that pair shares not one eigenvector, let alone a basis.
The hard direction starts with an invariant subspace
Now assume [A, B] = 0 and let A|a⟩ = a|a⟩. Act with A on the vector B|a⟩: A(B|a⟩) = B(A|a⟩) = a(B|a⟩). So B|a⟩ is either the zero vector or another eigenvector of A with the same eigenvalue — B maps the eigenspace Vₐ into itself, and it does so for every a at once. If a is non-degenerate, Vₐ is a line, B|a⟩ has nowhere else to go, and B|a⟩ = b|a⟩: the joint eigenvector was already sitting there, with no choice to make. Keep the corollary. If A has a completely non-degenerate spectrum, then every B commuting with A is diagonal in A's eigenbasis and is therefore a function of A, so A on its own is a complete set. That is why Ĥ alone labels every state of the one-dimensional box, and why in three dimensions it never does.
Degeneracy is the freedom, and B is what spends it
If dim Vₐ = d > 1, A has not chosen a basis inside Vₐ and any orthonormal set will do. Because B maps Vₐ into itself, the restriction of B to Vₐ is a Hermitian operator on a d-dimensional space, and the spectral theorem hands you an orthonormal eigenbasis of Vₐ for it. Do that in every eigenspace of A and collect the results: a complete joint basis, built by diagonalising blocks. The matrix statement is the same fact. Write B in any eigenbasis of A; then (a − a′)⟨a|B|a′⟩ = ⟨a|[A, B]|a′⟩ = 0, so every element linking different eigenvalues of A vanishes and B is block diagonal, one block per distinct a. Take A = diag(1, 1, 4) and B with rows (2, 1, 0), (1, 2, 0) and (0, 0, 7). The a = 1 block is [[2, 1], [1, 2]], whose eigenvalues are 3 and 1, so the joint labels are (1, 3), (1, 1) and (4, 7) — three distinct pairs, and no degeneracy left.
Getting the joint basis out of NumPy
np.linalg.eigh(A) returns an orthonormal eigenbasis, but inside a degenerate eigenspace LAPACK's choice is arbitrary: run it on diag(1, 1, 4) and you get e₁ and e₂, neither of which is an eigenvector of the B above. Two recipes fix that. Take a generic combination and diagonalise A + λB, choosing λ so that no two joint labels collide in a + λb; λ = 0.618 sends (1, 3), (1, 1) and (4, 7) to 2.854, 1.618 and 8.326, so the eigenvectors of A + λB are joint eigenvectors, and you read a and b back as ⟨k|A|k⟩ and ⟨k|B|k⟩. Or work block by block: group the eigenvalues of A within a tolerance you state out loud, project with P, diagonalise the small matrix P†BP, and map back. Audit either route with np.linalg.norm(A@B − B@A). At 1e−14 the pair commutes; at 1e−2 you have a physics error, not a rounding one.
A complete set of commuting observables
Keep adding pairwise-commuting observables until every list of eigenvalues names one ray. For any central potential [Ĥ, L²] = [Ĥ, Lz] = [L², Lz] = 0, so the three can be diagonalised together. Spinless hydrogen at n = 3: E₃ = −1.512 eV is nine-fold degenerate, so energy alone names a nine-dimensional subspace. L² splits it into l = 0, 1, 2 with eigenvalues 0, 2ℏ² and 6ℏ² and multiplicities 1, 3 and 5, summing to 9 but still leaving degeneracy standing; Lz, whose eigenvalues mℏ run from −lℏ to +lℏ, then separates the states inside each block. Every triple (n, l, m) now occurs exactly once, so (Ĥ, L², Lz) is complete — and restoring spin with Sz gives 2n² = 18. Complete does not mean unique: (Ĥ, L², S², J², Jz) is an equally good set, the unitary between the two bases is the Clebsch–Gordan matrix, and which one you want is decided by the next term in the Hamiltonian, not by the states.
Three things the theorem does not say
First, it produces a basis, not a property of a state: (|a₁, b₁⟩ + |a₂, b₂⟩)/√2 is an ordinary state of a compatible pair with a definite value of neither. Second, non-commuting operators can still share isolated eigenvectors. Lₓ, Ly and Lz pairwise fail to commute, yet all three annihilate |l = 0, m = 0⟩, which is a joint eigenvector of every one of them; what commuting supplies is a complete common basis, not the first shared vector. The Robertson bound carries the same warning: in |l = 1, m = 0⟩ we have ⟨Lz⟩ = 0, so σ(Lₓ)σ(Ly) ≥ ½|⟨[Lₓ, Ly]⟩| = 0, while the true product is ℏ². Third, for unbounded operators AB and BA need not share a domain, and Nelson's example gives two essentially self-adjoint operators commuting on a dense invariant domain whose spectral projections do not commute. The definition that survives is that the unitary groups commute: e(isA)e(itB) = e(itB)e(isA) for all real s, t.
Change one variable at a time
Make the relationship visible.
Set βₓ = 0: the arrows fall on one line, B is already diagonal in A's basis, the area collapses and both eigenvectors are shared. Reopen βₓ, then drag αz to 0 — A becomes a multiple of the identity, every direction is an A eigenvector, and B alone supplies the labels.
ANGLE β TO α51 deg
AREA |α × β|0.30
MULTIPLICITY IN A1
COMMON EIGENVECTORS0 of 2
Live interpretationANGLE β TO α: 51 deg. AREA |α × β|: 0.30. MULTIPLICITY IN A: 1. COMMON EIGENVECTORS: 0 of 2
Catch the common trap
Explain before calculating.
A and B are Hermitian on a four-dimensional space and [A, B] = 0. A has eigenvalue 2 with multiplicity three and eigenvalue 5 once. Which statement is guaranteed?
Choose an answer to test the model.
Practice & worked examples
Reason from the model, then test the result.
EasyTake A = diag(1, 1, 4) and B with rows (2, 1, 0), (1, 2, 0) and (0, 0, 7), both Hermitian on C³. Verify [A, B] = 0, then find the joint eigenbasis and the label pair (a, b) of each vector. Is {A, B} a complete set here?
- AB scales the rows of B by A's diagonal (1, 1, 4), giving rows (2, 1, 0), (1, 2, 0) and (0, 0, 28). BA scales the columns of B by the same three numbers and returns the identical matrix, so [A, B] = 0.
- A's spectrum is a = 1 twice and a = 4 once, so A alone is not a complete set: it names a two-dimensional subspace and a line, not three states. Note that B is already block diagonal in A's eigenbasis — the theorem guarantees it must be.
- Diagonalise B inside the a = 1 block, [[2, 1], [1, 2]]: trace 4 and determinant 3 give b = 3 and b = 1, with eigenvectors (1, 1)/√2 and (1, −1)/√2.
- The eigenvalue a = 4 is non-degenerate, so nothing is left to choose there: (0, 0, 1) is automatically a B eigenvector, with b = 7.
- Joint basis and labels: (1, 1, 0)/√2 → (1, 3); (1, −1, 0)/√2 → (1, 1); (0, 0, 1) → (4, 7). All three pairs are distinct, so {A, B} is complete. The naive A eigenvector (1, 0, 0) is not on the list, because B(1, 0, 0) = (2, 1, 0) is not a multiple of it.
Answer[A, B] = 0. The joint basis is (1, 1, 0)/√2, (1, −1, 0)/√2 and (0, 0, 1), with labels (a, b) = (1, 3), (1, 1) and (4, 7); the three distinct pairs make {A, B} a complete set.
MediumSpinless hydrogen, level n = 3. Show that energy alone cannot label a state, then count how (Ĥ, L², Lz) resolves the level. Take E₁ = −13.606 eV. Finish by showing why Lz can never equal |L| for l = 2.
- E₃ = E₁/n² = −13.606/9 = −1.512 eV, and the Coulomb level is n² = 9-fold degenerate once spin is set aside. So the label E = −1.51 eV names a nine-dimensional subspace: Ĥ on its own is not a complete set.
- For any central potential [Ĥ, L²] = 0 and [Ĥ, Lz] = 0, since the angular dependence enters Ĥ only through L²/2mr², and [L², Lz] = 0 from the ladder algebra. The three are pairwise compatible, so a joint eigenbasis exists.
- L² has eigenvalues ℏ²l(l + 1) with l = 0, 1, 2 available at n = 3: that is 0, 2ℏ² and 6ℏ². Their eigenspaces have dimensions 2l + 1 = 1, 3 and 5, and 1 + 3 + 5 = 9, so L² partitions the level but leaves a 3-fold and a 5-fold degeneracy standing.
- Lz has eigenvalues mℏ with m = −l, …, +l, all distinct inside each block, so it finishes the job. Every triple (n, l, m) occurs exactly once and (Ĥ, L², Lz) is complete: nine labels for nine states. Restoring spin and adding Sz gives 2n² = 18.
- For l = 2, |L| = √(l(l + 1)) ℏ = √6 ℏ = 2.449ℏ, while the largest Lz is 2ℏ. The gap is not sloppiness: Lₓ and Ly are incompatible with Lz, so a state with Lz = |L| would need all three components sharp at once, and only l = 0 manages that.
AnswerE₃ = −1.512 eV is 9-fold degenerate; L² splits it as 1 + 3 + 5 and Lz separates each block, so (Ĥ, L², Lz) labels all nine states uniquely. For l = 2 the largest Lz is 2ℏ against |L| = 2.449ℏ.
HardThe hydrogen 2p level (l = 1, s = 1/2, six states) acquires a spin–orbit term Hₛₒ = ξ L⋅S. Show which commuting set survives, find the two shifts and their degeneracies, and fix ξℏ² from the measured 2p(3/2)–2p(1/2) interval of 10.97 GHz.
- L⋅S = LₓSₓ + LySy + LzSz does not commute with Lz: [Lz, L⋅S] = [Lz, Lₓ]Sₓ + [Lz, Ly]Sy = iℏ(LySₓ − LₓSy) ≠ 0, and by the same algebra [Sz, L⋅S] ≠ 0. So the uncoupled labels |mₗ, mₛ⟩ stop being good the moment ξ ≠ 0.
- But J = L + S gives [Jz, L⋅S] = 0, and writing L⋅S = (J² − L² − S²)/2 shows at once that L², S² and J² commute with it too. The surviving complete set is (Ĥ, L², S², J², Jz), so relabel the level as |l, s; j, mⱼ⟩.
- Adding l = 1 and s = 1/2 gives j = 3/2 and j = 1/2, with 2j + 1 = 4 and 2 states — six in total, as required. The shift is ξ⟨L⋅S⟩ with ⟨L⋅S⟩ = (ℏ²/2)[j(j + 1) − l(l + 1) − s(s + 1)].
- For j = 3/2: (ℏ²/2)(15/4 − 2 − 3/4) = +ℏ²/2, a shift of +ξℏ²/2 on four states. For j = 1/2: (ℏ²/2)(3/4 − 2 − 3/4) = −ℏ², a shift of −ξℏ² on two. The weighted sum 4(+1/2) + 2(−1) = 0 checks the trace of L⋅S, which must vanish.
- The splitting is ΔE = ξℏ²(1/2 + 1) = (3/2)ξℏ². With Δf = 10.97 GHz, ΔE = hΔf = (4.1357 × 10⁻¹⁵ eV s)(1.097 × 10¹⁰ s⁻¹) = 4.54 × 10⁻⁵ eV, so ξℏ² = 3.02 × 10⁻⁵ eV.
- Hence 2p(3/2) sits +1.51 × 10⁻⁵ eV and 2p(1/2) sits −3.02 × 10⁻⁵ eV relative to the unperturbed 2p energy of −3.40 eV — a structure 10⁻⁵ of the level itself, and a relabelling forced entirely by which observables still commute.
AnswerThe uncoupled |mₗ, mₛ⟩ labels fail; (Ĥ, L², S², J², Jz) survives. The level splits 4 + 2 with shifts +ξℏ²/2 and −ξℏ², and Δf = 10.97 GHz gives ΔE = 4.54 × 10⁻⁵ eV, hence ξℏ² = 3.02 × 10⁻⁵ eV.