Real trace pairing for finite matrix operators #
This module records the continuous real-linear trace pairing
X ↦ Re Tr(ZX), the representation of every continuous real-linear
functional by such a pairing, and the finite-dimensional Hilbert--Schmidt
positivity facts used in weak duality and complementary slackness.
Instances For
Real trace pairing #
The continuous real-linear functional X ↦ Re Tr(ZX).
Equations
- MIPStarRE.Quantum.realTracePairingCLM Z = { toFun := fun (X : MIPStarRE.Quantum.Op d) => (Z * X).trace.re, map_add' := ⋯, map_smul' := ⋯, cont := ⋯ }
Instances For
The trace pairing against a single matrix unit reads the transposed coordinate of Z.
The matrix representing a continuous real-linear functional under the real trace pairing.
Equations
- MIPStarRE.Quantum.tracePairingMatrixOfRealCLM ψ i j = ↑(ψ (Matrix.single j i 1)) - ↑(ψ (Matrix.single j i Complex.I)) * Complex.I
Instances For
Every continuous real-linear functional on finite complex matrices is a real trace pairing.
On Hermitian inputs, the Hermitian part has the same real trace pairing.
The Hermitian representative of a real-linear functional.
Equations
Instances For
The Hermitian representative is Hermitian.
On Hermitian inputs, the Hermitian representative gives the same functional.
The real trace pairing of two positive semidefinite operators is nonnegative.
This is the finite-dimensional Hilbert-Schmidt positivity fact used in weak duality arguments: if (A,B\geq 0), then (\operatorname{Re}\operatorname{Tr}(AB)\geq 0).
For a Hermitian operator, nonnegativity is equivalent to nonnegative real trace pairing against every positive semidefinite operator.
If two positive semidefinite operators have zero trace pairing, then their product is zero.
This is the finite-dimensional complementary-slackness algebra used after a
zero duality gap has been obtained: for PSD operators A and B, the equality
Re Tr(A * B) = 0 forces A * B = 0.