Lean, informalized

Nielsen & Chuang · Chapter 4, Quantum circuits · p. 175

Exercise 4.6 - Conjugating a qubit state by a rotation gate rotates its Bloch vector in space

Rotation gates turn the Bloch vector about their axis.

Hover over a blue or green term in the text, or a node in the graph, to find it in the other. Select it to read its declaration both in Lean and in words.

The Exercise

A state of a single qubit is given by its Bloch vector r→\vec r, a real vector in three dimensions of length at most one. A rotation gate Rnˆ(θ)R_{\hat n}(\theta) is fixed by a unit vector nˆ\hat n and an angle θ\theta. The exercise asks to show that applying the gate to the qubit turns its Bloch vector through the angle θ\theta about the axis nˆ\hat n in ordinary space.

The library states this as an equality between two states of the qubit: the state after the gate, and the state whose Bloch vector is the rotated one.

The Qubit

A quantum system SS is a physical system whose state space is a finite dimensional complex Hilbert space, and any such space HH is the state space of a system. The qubit is the system whose state space is ℂ2\mathbb{C}^2.✦

A state ρ\rho of SS is a positive operator of unit trace on the state space of SS.✦ A unitary UU of SS is an operator on the state space of SS with U†U=UU†=IU^\dagger U = U U^\dagger = I.✦ Under UU a state ρ\rho of SS evolves to the state ρ↦UρU†.\rho \mapsto U \rho U^\dagger .(1)✦

Bloch States

The Pauli matrices are X=(0110),Y=(0−ii0),Z=(100−1),X = \begin{pmatrix} 0 & 1 \\ 1 & 0 \end{pmatrix}, \qquad Y = \begin{pmatrix} 0 & -i \\ i & 0 \end{pmatrix}, \qquad Z = \begin{pmatrix} 1 & 0 \\ 0 & -1 \end{pmatrix},(2) and for a real vector n→=(nx,ny,nz)\vec n = (n_x, n_y, n_z) in three dimensions, n→⋅σ→\vec n \cdot \vec\sigma is the complex 2×22 \times 2 matrix nxX+nyY+nzZn_x X + n_y Y + n_z Z. The Bloch matrix of a real vector r→\vec r in three dimensions is 12(I+r→⋅σ→).\tfrac12 \left( I + \vec r \cdot \vec\sigma \right).(3)✦

The Bloch state ρr→\rho_{\vec r} of a real vector r→\vec r of length |r→|≤1|\vec r| \le 1 is the state of the qubit whose matrix is the Bloch matrix (3).✦

Rotations

For a real vector n→\vec n in three dimensions and a real angle θ\theta, the rotation gate Rn→(θ)R_{\vec n}(\theta) is the unitary of the qubit whose matrix is the rotation operator Rn→(θ)=exp⁡(−iθ2n→⋅σ→).R_{\vec n}(\theta) = \exp\left( -\frac{i\theta}{2}\, \vec n \cdot \vec\sigma \right).(4)✦ For a unit vector nˆ\hat n the gate is written Rnˆ(θ)R_{\hat n}(\theta).

In ordinary space, for real vectors n→\vec n and v→\vec v in three dimensions and an angle θ\theta, the vector ℛn→(θ)v→\mathcal{R}_{\vec n}(\theta)\, \vec v is ℛn→(θ)v→=cos⁡θv→+sin⁡θn→×v→+(1−cos⁡θ)(n→⋅v→)n→.\mathcal{R}_{\vec n}(\theta)\, \vec v = \cos\theta\, \vec v + \sin\theta\, \vec n \times \vec v + (1 - \cos\theta)(\vec n \cdot \vec v)\, \vec n .(5)✦ When n→\vec n is a unit vector nˆ\hat n, this is Rodrigues’ formula: ℛnˆ(θ)v→\mathcal{R}_{\hat n}(\theta)\, \vec v is v→\vec v rotated through the angle θ\theta about the axis nˆ\hat n.

The Claim

Theorem 1. Let nˆ\hat n be a unit vector in three dimensions, θ\theta a real angle, and r→\vec r a real vector in three dimensions with |r→|≤1|\vec r| \le 1. Then the rotation gate Rnˆ(θ)R_{\hat n}(\theta) takes the Bloch state ρr→\rho_{\vec r} to the Bloch state of the rotated vector ℛnˆ(θ)r→\mathcal{R}_{\hat n}(\theta)\, \vec r: Rnˆ(θ)ρr→Rnˆ(θ)†=ρℛnˆ(θ)r→.R_{\hat n}(\theta)\, \rho_{\vec r}\, R_{\hat n}(\theta)^\dagger = \rho_{\mathcal{R}_{\hat n}(\theta) \vec r} .(6)✦

What Is Checked

The claim is stated over the qubit and its Bloch states, built from the Pauli matrices (2) through the Bloch matrix (3); over the rotation gate (4) as a unitary of the qubit and the evolution (1) it drives; and over the rotation of space (5).

The library proves what makes both sides of (6) states of the qubit. The Bloch matrix of r→\vec r is positive exactly when |r→|≤1|\vec r| \le 1, and its trace is one, so ρr→\rho_{\vec r} is a state. The rotation operator (4) is a unitary matrix, so the gate is a unitary of the qubit, and conjugating a state by a unitary gives a state, so the evolved state (1) is again a state. For a unit axis the rotation (5) keeps lengths, |ℛnˆ(θ)v→|=|v→||\mathcal{R}_{\hat n}(\theta)\, \vec v| = |\vec v|, so the rotated Bloch vector lies in the unit ball and the right side of (6) is a state.