Quantum Channels for QI
A quantum channel describes one input–output transformation, but there are several useful ways to calculate with it. Kraus operators propagate states; a Choi matrix tests complete positivity; a transfer matrix makes circuit composition ordinary matrix multiplication. Choosing coordinates should not change the predicted probabilities. This page explains the conversions in finite dimensions, including rectangular maps and selected measurement outcomes, using small examples that can be checked by hand.
Helpful background. Density operators describe mixed and subnormalized states; quantum channels introduces complete positivity and instruments. Familiarity with tensor-product order and Pauli matrices helps with the matrix examples.
Channels act on operators
Section titled “Channels act on operators”Let the input and output dimensions be and . A channel is a linear, completely positive, trace-preserving map
The dimensions need not match: an encoding can map a qubit into a qutrit. Although density matrices are the physical inputs, linearity defines the map on all operators. In particular, its action on every matrix unit determines the whole map, including coherence. Checking only computational-basis states tests and misses the off-diagonal .
A selected outcome instead gives a completely positive, trace-nonincreasing operation . Its output and probability are
An instrument is a collection of such operations whose sum is a channel. The conditional state alone loses and generally depends nonlinearly on . Keep the subnormalized branches when composing measurements and feedforward. The same coordinate methods below apply to each linear branch, with its trace condition changed appropriately.
Kraus operators and the output–input Choi matrix
Section titled “Kraus operators and the output–input Choi matrix”Kraus operators have shape and give
Complete positivity is automatic in this form. Trace preservation requires ; trace nonincrease requires the corresponding operator inequality . Kraus families are not unique: isometric mixing of their labels leaves the unread map unchanged. A label is therefore not automatically an experimentally observed environmental event.
We use the unnormalized, output–input Choi convention
Rows are ordered as and columns as , with output indices and input indices . Thus its flattened row is . For a trace-preserving channel, . Using a normalized maximally entangled input instead gives ; all partial-trace and reconstruction formulas must carry that factor.
The action can be recovered without Kraus operators:
The transpose in the first expression produces the ordinary contraction in the second. Both refer to the same chosen input basis.
For finite-dimensional maps, the Choi criterion gives complete positivity exactly when (Choi; Jamiołkowski). Among CP maps,
The partial trace equals the transpose of the input effect:
Transposing the identity leaves the TP condition unchanged, which can hide this distinction in deterministic examples. For the filter , where , one has but . The filter accepts with probability one; using the untransposed partial trace as its effect would incorrectly predict zero.
To obtain Kraus operators from , diagonalize and set
Here reshaping uses the output–input order just defined. The smallest number of Kraus operators is . Their individual entries remain nonunique, especially in degenerate eigenspaces. See Kraus, Choi and Stinespring views for the corresponding environmental realization.
Column stacking and channel composition
Section titled “Column stacking and channel composition”Column stacking means
The Liouville superoperator satisfies
It has shape . Notice the complex conjugate, not adjoint, in the first Kronecker factor. Also notice that column stacking a Kraus matrix orders its entries differently from the output–input Choi ket above. A real symmetric example may conceal either mistake; complex rectangular examples are better checks.
Choi and Liouville matrices contain the same four-index coefficients, but group them differently. Using zero-based array indices,
This reshuffling is not a matrix similarity transformation and does not preserve eigenvalues. Testing is not a complete-positivity test. For example, unitary conjugation has Liouville eigenvalues while its Choi matrix is positive with rank one. Conversion procedures are discussed by Havel and by Wood, Biamonte and Cory.
If acts first and second, then
Kraus operators compose as . For independent local channels, the state map is , but the numerical Liouville matrix is generally a permuted version of under global column stacking. The subsystem and operator indices must be regrouped. Directly applying local Kraus operators to a matrix unit is a simple way to determine the correct placement.
Noise placement matters too: and are unequal unless they commute. A fitted channel must be tied to its circuit location, frame and duration.
Process matrices, Pauli coordinates and qubit geometry
Section titled “Process matrices, Pauli coordinates and qubit geometry”Choose a complete, linearly independent operator basis of matrices. A process matrix writes
Let have columns equal to the output–input flattened . Then
This formula works for a nonorthogonal basis as well; replacing by is justified only for an orthonormal basis. In this independent basis, is equivalent to complete positivity. An overcomplete operator list makes coefficients nonunique and needs separate care.
For a qubit, fix and . Define the Pauli transfer matrix
If , then . For a density operator, . Trace preservation fixes the first row, so a qubit channel has the block form
Unitality, , means . Amplitude damping translates the Bloch ball; Pauli noise is unital. The detailed geometry is developed by Ruskai, Szarek and Werner.
Mapping the Bloch ball into itself establishes positivity, not complete positivity. Transposition sends to and preserves the whole ball, yet its Choi matrix is the swap operator, with an eigenvalue on the antisymmetric two-qubit state. It cannot act on one part of every entangled state. Correct TP and unital PTM rows and columns do not remove this obstruction.
| Representation | Particularly useful for |
|---|---|
| Kraus operators | direct propagation, rectangular maps and selected branches |
| Choi matrix | complete positivity, trace constraints and minimum Kraus rank |
| Process matrix | coefficients in a specified operator basis |
| Pauli transfer matrix | qubit coordinates and circuit composition |
| Liouville matrix | linear action and composition in a vectorization convention |
Worked example: one Pauli channel in several coordinates
Section titled “Worked example: one Pauli channel in several coordinates”Take probabilities and . Each Kraus operator contributes to the completeness sum, so this is a channel. In the unnormalized Pauli basis,
Conjugating by preserves it, whereas conjugating by reverses it. Thus its contraction is . The same calculation for gives
The other two arrays are
The vectors obtained by flattening and dividing by are orthonormal Choi eigenvectors, with eigenvalues . They are nonnegative and sum to two; tracing out the output gives .
For a genuinely complex input,
all representations give
Its Bloch vector changes from to . The minus sign on follows from the stated convention.
A small calculation to check the conversions
Section titled “A small calculation to check the conversions”This NumPy example constructs the Choi matrix by applying the map to matrix units, independently of its Kraus-vector factorization. The final loop checks action on every matrix unit, not only on one density matrix.
import numpy as np
I = np.eye(2, dtype=complex)X = np.array([[0, 1], [1, 0]], dtype=complex)Y = np.array([[0, -1j], [1j, 0]])Z = np.diag([1, -1])K = [np.sqrt(p)*P for p, P in zip([.55, .15, .10, .20], [I, X, Y, Z])]
def apply(A): return sum(k @ A @ k.conj().T for k in K)
units = [np.outer(I[:, i], I[:, j]) for i in range(2) for j in range(2)]J = sum(np.kron(apply(E), E) for E in units)S = sum(np.kron(k.conj(), k) for k in K)np.testing.assert_allclose(J, J.conj().T, atol=1e-12)assert np.linalg.eigvalsh(J).min() >= -1e-12np.testing.assert_allclose(np.einsum('aiaj->ij', J.reshape(2,2,2,2)), I)for E in units: via_S = (S @ E.flatten(order='F')).reshape(2,2,order='F') via_J = np.einsum('aibj,ij->ab', J.reshape(2,2,2,2), E) np.testing.assert_allclose(via_S, apply(E), atol=1e-12) np.testing.assert_allclose(via_J, apply(E), atol=1e-12)print('All four matrix units agree.')For a fitted matrix, first check Hermiticity, then use a Hermitian eigensolver and tolerances reflecting numerical and experimental uncertainty. Clipping substantial negative eigenvalues changes an estimate; it does not demonstrate that the original map was CP. Constraining a fit to CPTP maps likewise does not establish its predictive accuracy.
Dense superoperators require complex entries. For qubits that is : complex128 storage is 16 MiB at five qubits and 16 TiB at ten, before temporary arrays. Direct Kraus action can avoid this storage. For pure-state trajectories, a Kraus branch has probability , generally dependent on the current state; only special random-unitary decompositions have fixed branch probabilities. Noise simulation develops scalable choices.
What a channel representation does not determine
Section titled “What a channel representation does not determine”A matrix describes a particular input–output map, not its microscopic cause. The same channel can arise from different environments or controls. Common noise models connects standard parameterizations to assumptions, and noise mechanisms explains context and temporal correlations.
Composing fixed powers assumes that the same map remains valid across uses, including after intermediate operations. Initial correlations, environmental memory, drift or neighboring drives may invalidate that assumption. A process matrix describes one map; a process tensor accepts a sequence of interventions and contains additional temporal information (Pollock et al.). A coordinate change cannot supply it. See Markovian and non-Markovian noise.
Finally, process tomography estimates channel coordinates from preparations and measurements. Their calibration, gauge freedom and uncertainty remain part of the inference problem, whichever coordinates are reported (Nielsen et al.). Compare predictions with circuits excluded from fitting; a positive Choi matrix alone cannot show that the experimental model is correct.
Exercises
Section titled “Exercises”1. Test a dephasing Choi family
Section titled “1. Test a dephasing Choi family”For real , consider
Determine when it defines a CPTP map under this page’s Choi convention. Test unitality, find its spectrum and a Kraus family, and give its PTM.
Solution
Tracing over the output gives for every real , so the represented map is TP whenever it is CP. Tracing over the input also gives , so it is unital. The only nonzero block is
with eigenvalues and and normalized eigenvectors . The other two eigenvalues are zero. Hence exactly when .
Reshaping the two weighted eigenvectors gives the Kraus family
The weights are nonnegative precisely in the CP interval and sum to one. Conjugation by leaves every Pauli component fixed, while conjugation by reverses and . Therefore
At the map is identity; at it is conjugation; and at it completely dephases in the computational basis.
2. A rectangular encoding
Section titled “2. A rectangular encoding”Let
Show that is a qubit-to-qutrit channel. Find the Choi rank, Choi trace and Liouville dimensions. What does it do to ? Is it unital onto the qutrit space?
Solution
The columns are orthonormal, so . The output–input Choi ket is ; its outer product is a positive matrix of rank one and trace two. The Liouville matrix has rows and columns. The input becomes
The map is not unital onto the qutrit space: is a rank-two projector, not . Preserving input trace does not require filling every output level.
3. Reshuffle rather than relabel
Section titled “3. Reshuffle rather than relabel”Starting from the worked Pauli example superoperator, reconstruct the output–input Choi matrix using . Explain why this is not direct equality and verify the entries and .
Solution
Interpret each Liouville row as a pair and each column as . Move the middle indices so that the Choi row is and its column is . Index explicitly as J[a*dIn+i][b*dIn+j] = S[a+dOut*b][i+dIn*j]. Equivalently, a row-major reshape views with axes , which are transposed to ; a column-major reshape uses .
For Choi entry , the composite indices are and . The corresponding Liouville entry is row and column , which carries . Hence . By contrast, directly means row and column , and equals .
The mismatch is expected: reshuffling changes which elementary indices are paired into a row and column. Applying the inverse reshuffle recovers , so no information was lost. Testing would confuse coordinate layout with channel equality.
4. Compose dephasing and a Hadamard
Section titled “4. Compose dephasing and a Hadamard”For and input , compute dephasing after a Hadamard and a Hadamard after dephasing. Find both purities, their trace distance, and the corresponding superoperator products.
Solution
Hadamard first produces . Dephasing preserves its populations and multiplies its off-diagonal entries by , so
Dephasing first leaves the computational-basis state unchanged; Hadamard then produces the pure plus state,
For the first matrix, . The second is a rank-one projector and has purity one. Their difference has eigenvalues , so half its trace norm is .
Because the rightmost operation acts first, the first result is generated by and the second by . The products are unequal. This output difference reveals a reversed composition order immediately.
5. Retain instrument probabilities
Section titled “5. Retain instrument probabilities”Apply the operators and to . Compute both subnormalized branches, probabilities, conditional states, and the unread channel. State exactly what premature normalization erases.
Solution
Direct multiplication gives
and
The probabilities sum to one because . Dividing each branch by its own trace yields
If the result is unread, sum before normalization:
Replacing immediately by sets every stored trace to one. It erases , so later code cannot reproduce outcome frequencies, likelihoods, or correctly weighted feedforward branches.
6. Change the process-matrix basis
Section titled “6. Change the process-matrix basis”First replace the Pauli basis by . Then consider a nonorthogonal basis change whose first two columns express and , with , . Find the new process matrices for the worked Pauli channel.
Solution
Scaling every basis element by requires , since each product supplies a factor . For the second change write , where
Then , giving
The cross terms cancel the unwanted and terms introduced by . Substituting reproduces the original Pauli channel. An adjoint in place of would not. Neither basis change creates the extra intervention slots of a multitime process tensor.
7. Propagate an observable backward
Section titled “7. Propagate an observable backward”For the worked Pauli example channel and , find . Verify forward and backward expectation values on the worked input state.
Solution
The Pauli channel is self-adjoint in the Hilbert–Schmidt inner product because each Pauli is Hermitian and the weights are real. Its adjoint has the same Pauli contractions . Therefore
The output state’s Bloch vector is . For , the expectation is , giving
Using the original input vector with the adjoint coefficients gives
Hence in the explicit fixture. Agreement checks the PTM orientation as well as the adjoint action.
8. Price a full superoperator
Section titled “8. Price a full superoperator”For an -qubit channel with equal input and output spaces, compute the number of entries and complex128 storage of a dense Liouville superoperator. Evaluate the result at five and ten qubits and explain why direct Kraus action can save memory.
Solution
The Hilbert-space dimension is . Liouville space has dimension , so a square dense superoperator contains
complex entries. Complex128 stores 16 bytes per entry before allocator overhead, decompositions, or scratch arrays.
At five qubits, entries require bytes, exactly 16 MiB. At ten qubits, entries require bytes, exactly 16 TiB. Increasing the register from five to ten qubits multiplies storage by .
These figures exclude temporary matrices used in composition, eigendecomposition, or reshuffling. Large-system work should use matrix-free Kraus action, locality, tensor-network structure, trajectories, or another problem-specific representation. Noise Simulation explains those scalable algorithms and their numerical checks.
References
Section titled “References”- M.-D. Choi, “Completely Positive Linear Maps on Complex Matrices,” Linear Algebra and its Applications 10, 285–290 (1975), doi:10.1016/0024-3795(75)90075-0.
- T. F. Havel, “Robust Procedures for Converting among Lindblad, Kraus and Matrix Representations of Quantum Dynamical Semigroups,” Journal of Mathematical Physics 44, 534–557 (2003), doi:10.1063/1.1518555.
- A. Jamiołkowski, “Linear Transformations Which Preserve Trace and Positive Semidefiniteness of Operators,” Reports on Mathematical Physics 3, 275–278 (1972), doi:10.1016/0034-4877(72)90011-0.
- E. Nielsen, J. K. Gamble, K. Rudinger, T. Scholten, K. Young, and R. Blume-Kohout, “Gate Set Tomography,” Quantum 5, 557 (2021), doi:10.22331/q-2021-10-05-557.
- F. A. Pollock, C. Rodríguez-Rosario, T. Frauenheim, M. Paternostro, and K. Modi, “Non-Markovian Quantum Processes: Complete Framework and Efficient Characterization,” Physical Review A 97, 012127 (2018), doi:10.1103/PhysRevA.97.012127.
- M. B. Ruskai, S. Szarek, and E. Werner, “An Analysis of Completely-Positive Trace-Preserving Maps on M2,” Linear Algebra and its Applications 347, 159–187 (2002), doi:10.1016/S0024-3795(01)00547-X.
- J. Watrous, The Theory of Quantum Information, Cambridge University Press (2018), doi:10.1017/9781316848142.
- C. J. Wood, J. D. Biamonte, and D. G. Cory, “Tensor Networks and Graphical Calculus for Open Quantum Systems,” Quantum Information and Computation 15, 759–811 (2015), doi:10.26421/QIC15.9-10-3.