Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Lab 7 · Noise channels and the Bloch ball

Levels 5–6 · Quantum information → Quantum causal models · Prerequisite lessons: L5-05 (Density operators and reduced states), L5-06 (Quantum channels and complete positivity), L5-10 (Noise, encoding, and error correction), L6-02 (Channels in the Choi representation).

What you’ll learn

  • How to write a quantum channel with Kraus operators. What the completeness condition ∑kKk†Kk=I\sum_k K_k^\dagger K_k=I guarantees.

  • How depolarizing, dephasing, and amplitude-damping noise squash and shift the Bloch ball.

  • How purity decays under repeated noise, and why amplitude damping behaves differently.

  • What the Choi matrix is, and why its positivity is the test for complete positivity (CP).

Channels, Kraus operators, and the Choi representation are standard material Watrous, 2018Preskill, n.d..

Open in Colab

1 · Kraus operators and trace preservation

A channel acts as E(ρ)=∑kKkρKk†\mathcal E(\rho)=\sum_k K_k\rho K_k^\dagger. It preserves the trace for every ρ\rho exactly when ∑kKk†Kk=I\sum_k K_k^\dagger K_k=I. The engine has three channels:

channelstrengthKraus operators
depolarizingpp1−3p/4 I, p/4 X, p/4 Y, p/4 Z\sqrt{1-3p/4}\,I,\ \sqrt{p/4}\,X,\ \sqrt{p/4}\,Y,\ \sqrt{p/4}\,Z
dephasingpp1−p/2 I, p/2 Z\sqrt{1-p/2}\,I,\ \sqrt{p/2}\,Z
amplitude dampingγ\gammaK0, K1K_0,\ K_1 below
K0=(1001−γ),K1=(0γ00).K_0=\begin{pmatrix}1&0\\0&\sqrt{1-\gamma}\end{pmatrix},\qquad K_1=\begin{pmatrix}0&\sqrt\gamma\\0&0\end{pmatrix}.
depolarizing      : completeness holds for 11 strengths in [0, 1]
dephasing         : completeness holds for 11 strengths in [0, 1]
amplitude damping : completeness holds for 11 strengths in [0, 1]
depolarizing      : E(I/2) Bloch vector = [0. 0. 0.]
dephasing         : E(I/2) Bloch vector = [0. 0. 0.]
amplitude damping : E(I/2) Bloch vector = [0.  0.  0.6]

Explain. Depolarizing and dephasing are unital: they leave I/2I/2 unchanged. Amplitude damping is not unital. It models energy loss. It pulls every state towards ∣0⟩|0\rangle, and that state is its fixed point.

2 · How noise deforms the Bloch ball

Every qubit channel acts on Bloch vectors as an affine map r⃗↦Mr⃗+c⃗\vec r\mapsto M\vec r+\vec c. For these three channels:

  • depolarizing: r⃗↦(1−p) r⃗\vec r\mapsto(1-p)\,\vec r (uniform shrink);

  • dephasing: (x,y,z)↦((1−p)x, (1−p)y, z)(x,y,z)\mapsto\big((1-p)x,\ (1-p)y,\ z\big) (squash towards the zz axis);

  • amplitude damping: (x,y,z)↦(1−γ x, 1−γ y, γ+(1−γ)z)(x,y,z)\mapsto\big(\sqrt{1-\gamma}\,x,\ \sqrt{1-\gamma}\,y,\ \gamma+(1-\gamma)z\big) (shrink and shift towards the north pole).

The code applies the Kraus operators to every point on the sphere and checks each formula. In the figure, pick the channel with the buttons and set the strength with the slider. The faint grey wireframe is the original sphere.

Kraus action matches the closed-form Bloch maps at
 33 (channel, strength) pairs.
Loading...

Explain. Depolarizing shrinks the ball uniformly towards the centre. Dephasing flattens it into a cigar along zz. Populations in the ZZ basis survive; coherences do not. Amplitude damping shrinks the ball and moves it up. At strength 1 the whole ball collapses onto the north pole ∣0⟩|0\rangle.

3 · Purity decay under repeated noise

Apply the same channel nn times to the pure state ∣+⟩|+\rangle. Under depolarizing and dephasing, the Bloch vector shrinks geometrically, so the purity is 12(1+(1−p)2n)\tfrac{1}{2}\big(1+(1-p)^{2n}\big). Under amplitude damping, let a=(1−γ)na=(1-\gamma)^n. The Bloch vector is then (a, 0, 1−a)(\sqrt a,\,0,\,1-a) and the purity is 12(1+a+(1−a)2)\tfrac{1}{2}\big(1+a+(1-a)^2\big).

amplitude damping, gamma = 0.3: purity falls to 0.8750 at n = 2, then rises to 0.9999 at n = 25
Loading...

Explain. For the unital channels, purity falls monotonically to 1/21/2. For amplitude damping it first falls, as coherence is lost, but never below 7/87/8 for this input. Then it rises back to 1, because the channel drives the state to the pure fixed point ∣0⟩|0\rangle. Purity loss and “noise” are not the same thing.

4 · The Choi matrix and complete positivity

A map must stay valid when it acts on part of a larger system. That property is called complete positivity. The Choi matrix

J(E)=∑i,j∣i⟩⟨j∣⊗E(∣i⟩⟨j∣)J(\mathcal E)=\sum_{i,j}|i\rangle\langle j|\otimes\mathcal E(|i\rangle\langle j|)

turns the question into linear algebra. E\mathcal E is CP if and only if J≥0J\ge0, and trace preserving if and only if Tr⁡outJ=I\operatorname{Tr}_{\text{out}}J=I. A map with both properties is CPTP.

The transpose map ρ↦ρ⊤\rho\mapsto\rho^{\top} is the classic warning. It maps every single-qubit state to a valid state, so it is positive. It is not completely positive.

depolarizing      : Choi eigenvalues [0.25 0.25 0.25 1.25]
dephasing         : Choi eigenvalues [0.  0.  0.5 1.5]
amplitude damping : Choi eigenvalues [0.  0.  0.5 1.5]
transpose map     : Choi eigenvalues [-1.  1.  1.  1.]
eigenvalues after transposing half of |Phi+>: [-0.5  0.5  0.5  0.5]
<Figure size 900x360 with 1 Axes>

Explain. All three channels have positive semidefinite Choi matrices with Tr⁡outJ=I\operatorname{Tr}_{\text{out}}J=I, so they are CPTP. The transpose has a Choi eigenvalue -1. Applied to half of ∣Φ+⟩|\Phi^+\rangle, it outputs an operator with eigenvalue −1/2-1/2. That is not a state. A physical noise process can never do this.

Going deeper: from Choi back to Kraus

Diagonalise J=∑kλk∣vk⟩⟨vk∣J=\sum_k \lambda_k |v_k\rangle\langle v_k| with λk≥0\lambda_k\ge0. Take each λk ∣vk⟩\sqrt{\lambda_k}\,|v_k\rangle, a vector in Cd⊗Cd\mathbb C^{d}\otimes\mathbb C^{d}, and reshape it into a d×dd\times d matrix. The result is a valid set of Kraus operators. Kraus operators are not unique, but the channel is. The number of nonzero λk\lambda_k (the Choi rank) is the minimum number of Kraus operators. The next cell rebuilds each channel from its Choi matrix and checks that the action is identical.

depolarizing       p=0.2: Choi rank 4 (engine uses 4 Kraus operators)
depolarizing       p=0.7: Choi rank 4 (engine uses 4 Kraus operators)
dephasing          p=0.2: Choi rank 2 (engine uses 2 Kraus operators)
dephasing          p=0.7: Choi rank 2 (engine uses 2 Kraus operators)
amplitude damping  p=0.2: Choi rank 2 (engine uses 2 Kraus operators)
amplitude damping  p=0.7: Choi rank 2 (engine uses 2 Kraus operators)

Exercises

Solution

Each application multiplies the Bloch vector by 1−p1-p. Twice gives (0.7)2=0.49=1−p′(0.7)^2=0.49=1-p', so p′=0.51p'=0.51.

Solution

r⃗=0\vec r=0 maps to (0,0,γ)=(0,0,0.6)(0,0,\gamma)=(0,0,0.6). The output is 12(I+0.6Z)=diag(0.8,0.2)\tfrac12(I+0.6Z)=\mathrm{diag}(0.8,0.2).

Solution

xx and yy are erased and zz survives: (0,0,0.8)(0,0,0.8). Purity =(1+0.64)/2=0.82=(1+0.64)/2=0.82.

Check yourself

All checks passed.

Limits of this model

The noise is memoryless (Markovian): each application is independent. Real devices show drift and correlated errors across time and qubits.

The model covers one qubit. Multi-qubit noise includes correlated Kraus operators that these single-qubit channels cannot express.

The parameters are idealized. We chose the strengths pp and γ\gamma by hand; they are not fitted to any device.

There is no error correction. We only describe the damage. Lesson L5-10 discusses how encoding can protect information.

References
  1. Watrous, J. (2018). The Theory of Quantum Information. https://cs.uwaterloo.ca/~watrous/TQI/
  2. Preskill, J. (n.d.). Course Information for Physics 219/Computer Science 219 Quantum Computation (Formerly Physics 229). California Institute of Technology course page with lecture notes. https://www.preskill.caltech.edu/ph219/