Implementierung der Quanten-Uhlmann-Treue in Mathematica

Sep 05 2020

Ich möchte die Quanten-Uhlmann-Treue implementieren $$F(\rho, \sigma) := \mathrm{tr} \left[\sqrt{\sqrt{\rho} \sigma \sqrt{\rho}} \right]^2.$$ in Mathematica als Maß für die "Nähe" zwischen zwei Dichtematrizen.

Ich denke jedoch, dass meine Implementierung falsch ist.

$$fidelity[\rho\_, \sigma\_] := (\mathrm{Tr} \left[\sqrt{(\sqrt{\rho}).\sigma.(\sqrt{\rho})} \right])^2$$

Wenn ich es auf Test teste$\rho$ = {{1/9, 2/3, 2/9}, {1/3, 4/9, 4/9}, {2/9, 4/9, 4/9}};

Prüfung$\sigma$ = {{1/9, 1/3, 2/9}, {1/3, 4/9, 4/9}, {2/9, 4/9, 4/9}};

Ich bekomme eine Wiedergabetreue von 1, was offensichtlich nicht korrekt ist, da diese Matrizen nicht gleich sind. Ich würde erwarten, dass die Wiedergabetreue genau dann 1 ist$\rho=\sigma$.

Antworten

9 Roman Sep 05 2020 at 16:55

Hier ist eine Definition, die unempfindlich gegenüber der Normalisierung der Dichtematrix ist:

F[ρ_, σ_] := Tr[MatrixPower[MatrixPower[ρ, 1/2].σ.MatrixPower[ρ, 1/2], 1/2]]^2/(Tr[ρ]*Tr[σ])

Tests mit positivem Semi-Definitiv $3\times3$ Matrizen:

testρ = {{1/5, 1/5, 0}, {1/5, 3/5, 1/5}, {0, 1/5, 1/5}};
testσ = {{1/3, -1/6, 1/6}, {-1/6, 1/3, -1/6}, {1/6, -1/6, 1/3}};

F[testρ, testρ] // FullSimplify
(*    1    *)

F[testρ, testσ] // FullSimplify
(*    8/15    *)

F[testσ, testρ] // FullSimplify
(*    8/15    *)

F[testσ, testσ] // FullSimplify
(*    1    *)