|
| 1 | +\begin{MintedVerbatim}[commandchars=\\\{\},codes={\catcode`\$=3\catcode`\^=7\catcode`\_=8\relax}] |
| 2 | +\PYG{k+kn}{import}\PYG{+w}{ }\PYG{n+nn}{math} |
| 3 | + |
| 4 | +\PYG{k}{def}\PYG{+w}{ }\PYG{n+nf}{outer}\PYG{p}{(}\PYG{n}{v}\PYG{p}{)}\PYG{p}{:} |
| 5 | + \PYG{n}{n} \PYG{o}{=} \PYG{n+nb}{len}\PYG{p}{(}\PYG{n}{v}\PYG{p}{)} |
| 6 | + \PYG{k}{return} \PYG{p}{[}\PYG{p}{[}\PYG{n}{v}\PYG{p}{[}\PYG{n}{i}\PYG{p}{]}\PYG{o}{*}\PYG{n}{v}\PYG{p}{[}\PYG{n}{j}\PYG{p}{]}\PYG{o}{.}\PYG{n}{conjugate}\PYG{p}{(}\PYG{p}{)} \PYG{k}{for} \PYG{n}{j} \PYG{o+ow}{in} \PYG{n+nb}{range}\PYG{p}{(}\PYG{n}{n}\PYG{p}{)}\PYG{p}{]} \PYG{k}{for} \PYG{n}{i} \PYG{o+ow}{in} \PYG{n+nb}{range}\PYG{p}{(}\PYG{n}{n}\PYG{p}{)}\PYG{p}{]} |
| 7 | + |
| 8 | +\PYG{k}{def}\PYG{+w}{ }\PYG{n+nf}{partial\PYGZus{}trace\PYGZus{}B}\PYG{p}{(}\PYG{n}{rho}\PYG{p}{)}\PYG{p}{:} |
| 9 | + \PYG{c+c1}{\PYGZsh{} 2 qubits, basis: |00\PYGZgt{},|01\PYGZgt{},|10\PYGZgt{},|11\PYGZgt{}} |
| 10 | + \PYG{n}{rhoA} \PYG{o}{=} \PYG{p}{[}\PYG{p}{[}\PYG{l+m+mi}{0}\PYG{n}{j}\PYG{p}{,} \PYG{l+m+mi}{0}\PYG{n}{j}\PYG{p}{]}\PYG{p}{,}\PYG{p}{[}\PYG{l+m+mi}{0}\PYG{n}{j}\PYG{p}{,} \PYG{l+m+mi}{0}\PYG{n}{j}\PYG{p}{]}\PYG{p}{]} |
| 11 | + \PYG{k}{for} \PYG{n}{a} \PYG{o+ow}{in} \PYG{p}{(}\PYG{l+m+mi}{0}\PYG{p}{,}\PYG{l+m+mi}{1}\PYG{p}{)}\PYG{p}{:} |
| 12 | + \PYG{k}{for} \PYG{n}{c} \PYG{o+ow}{in} \PYG{p}{(}\PYG{l+m+mi}{0}\PYG{p}{,}\PYG{l+m+mi}{1}\PYG{p}{)}\PYG{p}{:} |
| 13 | + \PYG{n}{s} \PYG{o}{=} \PYG{l+m+mi}{0}\PYG{n}{j} |
| 14 | + \PYG{k}{for} \PYG{n}{b} \PYG{o+ow}{in} \PYG{p}{(}\PYG{l+m+mi}{0}\PYG{p}{,}\PYG{l+m+mi}{1}\PYG{p}{)}\PYG{p}{:} |
| 15 | + \PYG{n}{i} \PYG{o}{=} \PYG{l+m+mi}{2}\PYG{o}{*}\PYG{n}{a} \PYG{o}{+} \PYG{n}{b} |
| 16 | + \PYG{n}{j} \PYG{o}{=} \PYG{l+m+mi}{2}\PYG{o}{*}\PYG{n}{c} \PYG{o}{+} \PYG{n}{b} |
| 17 | + \PYG{n}{s} \PYG{o}{+}\PYG{o}{=} \PYG{n}{rho}\PYG{p}{[}\PYG{n}{i}\PYG{p}{]}\PYG{p}{[}\PYG{n}{j}\PYG{p}{]} |
| 18 | + \PYG{n}{rhoA}\PYG{p}{[}\PYG{n}{a}\PYG{p}{]}\PYG{p}{[}\PYG{n}{c}\PYG{p}{]} \PYG{o}{=} \PYG{n}{s} |
| 19 | + \PYG{k}{return} \PYG{n}{rhoA} |
| 20 | + |
| 21 | +\PYG{c+c1}{\PYGZsh{} Bell states as length\PYGZhy{}4 vectors} |
| 22 | +\PYG{n}{inv} \PYG{o}{=} \PYG{l+m+mi}{1}\PYG{o}{/}\PYG{n}{math}\PYG{o}{.}\PYG{n}{sqrt}\PYG{p}{(}\PYG{l+m+mi}{2}\PYG{p}{)} |
| 23 | +\PYG{n}{Phi\PYGZus{}plus} \PYG{o}{=} \PYG{p}{[}\PYG{n}{inv}\PYG{p}{,} \PYG{l+m+mi}{0}\PYG{n}{j}\PYG{p}{,} \PYG{l+m+mi}{0}\PYG{n}{j}\PYG{p}{,} \PYG{n}{inv}\PYG{p}{]} |
| 24 | +\PYG{n}{Phi\PYGZus{}minus} \PYG{o}{=} \PYG{p}{[}\PYG{n}{inv}\PYG{p}{,} \PYG{l+m+mi}{0}\PYG{n}{j}\PYG{p}{,} \PYG{l+m+mi}{0}\PYG{n}{j}\PYG{p}{,} \PYG{o}{\PYGZhy{}}\PYG{n}{inv}\PYG{p}{]} |
| 25 | +\PYG{n}{Psi\PYGZus{}plus} \PYG{o}{=} \PYG{p}{[}\PYG{l+m+mi}{0}\PYG{n}{j}\PYG{p}{,} \PYG{n}{inv}\PYG{p}{,} \PYG{n}{inv}\PYG{p}{,} \PYG{l+m+mi}{0}\PYG{n}{j}\PYG{p}{]} |
| 26 | +\PYG{n}{Psi\PYGZus{}minus} \PYG{o}{=} \PYG{p}{[}\PYG{l+m+mi}{0}\PYG{n}{j}\PYG{p}{,} \PYG{n}{inv}\PYG{p}{,} \PYG{o}{\PYGZhy{}}\PYG{n}{inv}\PYG{p}{,} \PYG{l+m+mi}{0}\PYG{n}{j}\PYG{p}{]} |
| 27 | + |
| 28 | +\PYG{k}{for} \PYG{n}{name}\PYG{p}{,} \PYG{n}{psi} \PYG{o+ow}{in} \PYG{p}{[}\PYG{p}{(}\PYG{l+s+s2}{\PYGZdq{}}\PYG{l+s+s2}{Phi+}\PYG{l+s+s2}{\PYGZdq{}}\PYG{p}{,} \PYG{n}{Phi\PYGZus{}plus}\PYG{p}{)}\PYG{p}{,} \PYG{p}{(}\PYG{l+s+s2}{\PYGZdq{}}\PYG{l+s+s2}{Phi\PYGZhy{}}\PYG{l+s+s2}{\PYGZdq{}}\PYG{p}{,} \PYG{n}{Phi\PYGZus{}minus}\PYG{p}{)}\PYG{p}{,} |
| 29 | + \PYG{p}{(}\PYG{l+s+s2}{\PYGZdq{}}\PYG{l+s+s2}{Psi+}\PYG{l+s+s2}{\PYGZdq{}}\PYG{p}{,} \PYG{n}{Psi\PYGZus{}plus}\PYG{p}{)}\PYG{p}{,} \PYG{p}{(}\PYG{l+s+s2}{\PYGZdq{}}\PYG{l+s+s2}{Psi\PYGZhy{}}\PYG{l+s+s2}{\PYGZdq{}}\PYG{p}{,} \PYG{n}{Psi\PYGZus{}minus}\PYG{p}{)}\PYG{p}{]}\PYG{p}{:} |
| 30 | + \PYG{n}{rhoAB} \PYG{o}{=} \PYG{n}{outer}\PYG{p}{(}\PYG{n}{psi}\PYG{p}{)} |
| 31 | + \PYG{n}{rhoA} \PYG{o}{=} \PYG{n}{partial\PYGZus{}trace\PYGZus{}B}\PYG{p}{(}\PYG{n}{rhoAB}\PYG{p}{)} |
| 32 | + \PYG{c+c1}{\PYGZsh{} convert to plain real for the eig solver} |
| 33 | + \PYG{n}{rhoA\PYGZus{}real} \PYG{o}{=} \PYG{p}{[}\PYG{p}{[}\PYG{n}{rhoA}\PYG{p}{[}\PYG{l+m+mi}{0}\PYG{p}{]}\PYG{p}{[}\PYG{l+m+mi}{0}\PYG{p}{]}\PYG{o}{.}\PYG{n}{real}\PYG{p}{,} \PYG{n}{rhoA}\PYG{p}{[}\PYG{l+m+mi}{0}\PYG{p}{]}\PYG{p}{[}\PYG{l+m+mi}{1}\PYG{p}{]}\PYG{o}{.}\PYG{n}{real}\PYG{p}{]}\PYG{p}{,} |
| 34 | + \PYG{p}{[}\PYG{n}{rhoA}\PYG{p}{[}\PYG{l+m+mi}{1}\PYG{p}{]}\PYG{p}{[}\PYG{l+m+mi}{0}\PYG{p}{]}\PYG{o}{.}\PYG{n}{real}\PYG{p}{,} \PYG{n}{rhoA}\PYG{p}{[}\PYG{l+m+mi}{1}\PYG{p}{]}\PYG{p}{[}\PYG{l+m+mi}{1}\PYG{p}{]}\PYG{o}{.}\PYG{n}{real}\PYG{p}{]}\PYG{p}{]} |
| 35 | + \PYG{n}{lams} \PYG{o}{=} \PYG{n}{eigvals\PYGZus{}2x2}\PYG{p}{(}\PYG{n}{rhoA\PYGZus{}real}\PYG{p}{)} |
| 36 | + \PYG{n+nb}{print}\PYG{p}{(}\PYG{n}{name}\PYG{p}{,} \PYG{l+s+s2}{\PYGZdq{}}\PYG{l+s+s2}{rhoA eigenvalues:}\PYG{l+s+s2}{\PYGZdq{}}\PYG{p}{,} \PYG{n}{lams}\PYG{p}{,} \PYG{l+s+s2}{\PYGZdq{}}\PYG{l+s+s2}{S(rhoA)=}\PYG{l+s+s2}{\PYGZdq{}}\PYG{p}{,} \PYG{n}{S\PYGZus{}vn\PYGZus{}from\PYGZus{}eigs}\PYG{p}{(}\PYG{n}{lams}\PYG{p}{)}\PYG{p}{)} |
| 37 | + |
| 38 | +\end{MintedVerbatim} |
0 commit comments