Delen via


Dirac notatie in kwantumcomputing

Dirac notatie is een beknopte en krachtige manier om kwantumstatussen en -bewerkingen te beschrijven. Het is vernoemd naar de fysicus Paul Dirac, die de notatie in de jaren 1930 ontwikkelde. Dirac-notatie wordt gebruikt in kwantumcomputing om kwantumtoestanden, kwantumbewerkingen en kwantummetingen te beschrijven.

In dit artikel maakt u kennis met dirac-notatie en leert u hoe u deze kunt gebruiken om kwantumstatussen en -bewerkingen te beschrijven.

Vectoren in Dirac-notatie

Er zijn twee soorten vectoren in Dirac-notatie: de bra vector, die overeenkomt met een rijvector en de ket vector, die overeenkomt met een kolomvector. Daarom wordt Dirac notatie ook wel bra-ket notatie genoemd.

Als $\psi$ een kolomvector is, kunt u deze in Dirac-notatie schrijven als $\ket{\psi}$, waarbij de $\ket{\cdot}$ aangeeft dat het een ket vector is.

Op dezelfde manier wordt de rijvector $\psi^\dagger$ uitgedrukt als $\bra{\psi}$, dat een bra vector is. Met andere woorden, $\psi^\dagger$ wordt verkregen door invoergewijze complexe samenvoeging toe te passen op de elementen van de transponering van $\psi$. De bra-ket-notatie impliceert rechtstreeks dat $\braket{\psi|\psi}$ het binnenste product van vector $\psi$ met zichzelf is, dat per definitie $1$ is.

Meer in het algemeen, als $\psi$ en $\phi$ kwantumtoestand vectoren zijn, dan is $\braket{\phi|\psi}$hun binnenste product . Dit binnenste product impliceert dat de waarschijnlijkheid van het meten van de $\ket{\psi}$ toestand $\ket{\phi}$ ^2$|\braket{\phi|\psi}| is$.

De berekeningsbasistoestanden $0$ en $1$ worden weergegeven als respectievelijk $\begin{bmatrix} 1 \ 0 \end{bmatrix}=\ket{{0}$ en $\begin{bmatrix} 0 \ 1 \end{bmatrix}=\ket{1}$.

Voorbeeld: De Hadamard-bewerking weergeven met dirac-notatie

Laten we de Hadamard-poort $H-$ toepassen op de kwantumstatussen $\ket{0}$ en $\ket{1}$ met behulp van dirac-notatie:

$$ \frac{1}{\sqrt{2}}\begin{bmatrix} 1 \\ 1 \end{bmatrix}=H\ket{{0}=\ket{+}$$

$$ \frac{1}{\sqrt{2}}\begin{bmatrix} 1 \\ -1 \end{bmatrix}=H-\ket{{1}=\ket{-}$$

De resulterende toestanden komen overeen met de eenheidsvectoren in de $+x$ en $-x$ richtingen op de Bloch-bol. Deze statussen kunnen ook worden uitgebreid met behulp van Dirac-notatie als som van $\ket{0}$ en $\ket{1}$:

$$ \ket{+}=\frac{{1}{\sqrt{2}}(\ket{0} + \ket{1}) $$

$$ \ket{-} = \frac{1}{\sqrt{ {2}}(\ket{0} - \ket{1}) $$

Rekenkundige basisvectoren

Elke kwantumtoestand kan altijd worden uitgedrukt als som van rekenkundige basisvectoren en dergelijke sommen worden eenvoudig uitgedrukt met dirac notatie. Het omgekeerde is ook waar omdat de toestanden $\ket{+}$ en $\ket{-}$ ook een basis vormen voor kwantumtoestanden. U kunt dit zien uit het feit dat

$$ \ket{0} = \frac{1}{\sqrt{2}}(\ket{+} + \ket{-}) $$

$$ $$ \ket{1} = \frac{1}{\sqrt{2}}(\ket{+} - \ket{-})

Als voorbeeld van Dirac-notatie kunt u de rem $\braket{0 | 1}$ beschouwen, wat het binnenste product tussen $0$ en $1$ is. Het kan worden geschreven als

$$ \braket{0 | 1 1 }=\begin{bmatrix}& amp; 0 \end{bmatrix}\begin{bmatrix}0\\ 1\end{bmatrix}=0. $$

In dit voorbeeld wordt aangegeven dat $\ket{{0}$ en $\ket{{1}$ orthogonale vectoren zijn, wat betekent dat $\braket{0 | 1 1 }=\braket{|0 0.}=$ Met definitie $\braket{0 0|}=\braket{ 1 1 | 1}=1$, wat betekent dat de twee rekenkundige basisvectoren ook orthonormaal kunnen worden genoemd.

Deze orthonormale eigenschappen worden in het volgende voorbeeld gebruikt. Als u een toestand $\ket{\psi}={\frac{3}{5}}\ket{{1}+{\frac{{4}{5}}\ket{0}$ hebt, dan is de $\braket{kans op het meten |van 1} 0 0=$$$

$$ \big|\braket{1 |^2\psi}\big|=\left|\frac{1 {3}{5}\braket{ 1| +}\frac{1 {4}{5}\braket{ 0|^2}\right|=\frac{{9}{.{25} $$

Tensor-product notatie

Dirac notatie is zeer nuttig om de tensor productuit te drukken. Tensorproduct is belangrijk in kwantumcomputing, omdat de toestandsvector die wordt beschreven door twee ongecorreleerde kwantumregisters het tensorproduct van de twee toestandsvectoren is.

Het tensorproduct $\psi\otimes\phi$ voor twee kwantumtoestandsvectoren $\phi$ en $\psi$ is geschreven in Dirac notatie als $\ket{\psi}\otimes\ket{\phi}$. Standaard kunt u het tensor-product ook schrijven als $\ket{\psi}\ket{\phi}=\ket{\psi\phi}$.

De status met twee qubits die zijn geïnitialiseerd naar de nulstatus, is bijvoorbeeld $\ket{{0}\otimes\ket{0}=\ket{0}\ket{0}=\ket{00}$.

Voorbeeld: Superpositie beschrijven met dirac-notatie

Als een ander voorbeeld van hoe u Dirac-notatie kunt gebruiken om een kwantumtoestand te beschrijven, kunt u de volgende equivalente manieren overwegen om een kwantumtoestand te schrijven die een gelijke superpositie is voor elke mogelijke bittekenreeks met lengte $n$

$$H^{\otimes n}\ket{0}=\frac{1}{2^{n/2}}\sum_{j=0}^{2^n-1}\ket{j}=\ket{+}^{\otimes n.} $$

Hier vraagt u zich misschien af waarom de som van $0$ tot $2^{n-1}$ gaat voor $n$ bits. Houd er eerst rekening mee dat er 2^$n{ verschillende configuraties zijn }$die $n$ bits kunnen nemen. U kunt dit zien door te noteren dat één bit 2$ waarden kan aannemen$, maar twee bits kunnen vier$ waarden nemen$, enzovoort. Over het algemeen betekent dit dat er 2^n$ verschillende mogelijke bittekenreeksen zijn$, maar dat de grootste waarde die in een van deze $tekenreeksen is gecodeerd 1\cdots 1=2^n-1$ en daarom de bovengrens voor de som is. In dit voorbeeld hebt u in dit voorbeeld geen +^ n+ gebruikt in analogie met$\ket{} ^{\otimes n}=\ket{}$$\ket{{0}.{\otimes}=\ket{{0}$ Deze notatieconventie is gereserveerd voor de rekenkundige basisstatus, waarbij elke qubit is geïnitialiseerd tot nul. Hoewel een dergelijke conventie in dit geval verstandig is, wordt deze niet gebruikt in de literatuur over kwantumcomputing.

Express lineariteit met Dirac-notatie

Een andere functie van Dirac-notatie is het feit dat het lineair is. Voor twee complexe getallen $\alpha$ en $\beta$kunt u bijvoorbeeld schrijven

$$ \ket{\psi} \otimes ( \alpha\ket{\phi} + \beta\ket{\chi})=\alpha\ket{\psi}\ket{\phi} + \beta\ket{\psi}\ket{\chi}.$$

Dat wil zeggen, u kunt de tensor product notatie in Dirac notatie distribueren, zodat het nemen van tensorproducten tussen toestandsvectoren eruitziet net als gewone vermenigvuldiging.

Bra vectoren volgen een soortgelijke conventie als ket vectoren. De vector $\bra{\psi}\bra{\phi}$ is bijvoorbeeld gelijk aan de statusvector $\psi^\dagger\otimes\phi^\dagger=(\psi\otimes\phi)^.\dagger$ Als de ketvector + $\ket{\psi}$is, is $\alpha\ket{0}\beta de bra vectorversie van de vector ^\ket{1}$$\bra{\psi}=\ket{\psi} (\dagger=^* +\bra{^*){0}\alpha.\bra{1}\beta$

Stel bijvoorbeeld dat u de waarschijnlijkheid van het meten van de toestand $\ket{\psi}=\frac{3}{5}\ket{{1}+ \frac{4}{5}\ket{0}$ met behulp van een kwantumprogramma wilt berekenen voor het meten van toestanden als $\ket{+}$ of .$\ket{{-}$ Vervolgens wordt de kans dat het apparaat uitvoert dat de status is $\ket{-}$

$$|\braket{- |^2\psi}|=\left|\frac{{1}{\sqrt{({2}} -\bra{0}\bra{ )({1}\frac{3}{5}\ket{ +{1}\frac{{4}{5} ) \ket{0}^2-5\right|=\left|\frac{3}{\sqrt{ +{2}}\frac{ 5{4}{^2.\sqrt{2}}\right|=\frac{{1}{{50}$$

Het feit dat het negatieve teken wordt weergegeven in de berekening van de waarschijnlijkheid, is een manifestatie van kwantuminterferentie, een van de mechanismen waarmee kwantumcomputing voordelen krijgt ten opzichte van klassieke computing.

ketbra of buitenproduct

Het laatste artikel dat in Dirac notatie besproken moet worden, is het ketbra - of buitenproduct. Het buitenste product wordt in Dirac-notaties weergegeven als $\ket{\psi}\bra{\phi}$. Het buitenste product wordt gedefinieerd via matrixvermendiging als $\ket{\psi}\bra{\phi}=\psi\phi^\dagger$ voor kwantumstatusvectoren $\psi$ en .$\phi$ Het eenvoudigste en waarschijnlijk meest voorkomende voorbeeld van deze notatie is

$$ \ket{0} \bra{ {0} = \begin{bmatrix}1\\ 0 \end{bmatrix}\begin{bmatrix}1& 0 \end{bmatrix}=\begin{bmatrix}1 & 0\\ 0 & 0 0\end{bmatrix}\qquad\ket{1}\bra{1}=\begin{bmatrix}\\ 1 \end{bmatrix}\begin{bmatrix}0& 1 \end{bmatrix}=\begin{bmatrix}0 & 0\\ 0 & 1\end{bmatrix}. $$

Ketbras worden vaak projectors genoemd omdat ze een kwantumstatus projecteren op een vaste waarde. Omdat deze bewerkingen niet unitair zijn (en zelfs de norm van een vector niet behouden), kan een kwantumcomputer geen projector deterministisch toepassen. Projectors doen echter een mooie taak om de actie te beschrijven die meting heeft op een kwantumstatus. Als u bijvoorbeeld een status $\ket{\psi}$ meet als $0$, is de resulterende transformatie die de status ondervindt als gevolg van de meting

$$\ket{\psi} \rightpijl \frac{(\ket{{0}\bra{{0})\ket{\psi}}{|\braket{0 ,|\psi}|}=\ket{{0}$$

zoals u zou verwachten als u de status hebt gemeten en vond dat deze zou zijn $\ket{0}$. Om dit te herhalen, kunnen dergelijke projectors niet op een status in een kwantumcomputer deterministisch worden toegepast. In plaats daarvan kunnen ze het beste willekeurig worden toegepast met het resultaat $\ket{0}$ dat wordt weergegeven met een bepaalde vaste waarschijnlijkheid. De kans dat een dergelijke meting slaagt, kan worden geschreven als de verwachtingswaarde van de kwantumprojector in de status

$$ \bra{\psi}(\ket{0}\bra{0})\ket{\psi}=|\braket{\psi| 0}|^2,$$

dit illustreert dat projectors een nieuwe manier geven om het meetproces uit te drukken.

Als u in plaats daarvan de eerste qubit van een multi-qubitstatus als $1$ wilt meten, kunt u dit proces ook handig beschrijven met behulp van projectors en dirac-notatie:

$$P(\text{eerste qubit = 1})=\bra{\psi}\left(\ket{{1}\bra{{1}\otimes \mathbf{\mathbf{1}^{\otimes n-1}\right) . \ket{\psi} $$

Hier kan de identiteitsmatrix gemakkelijk worden geschreven in Dirac notatie als

$$ \mathbb{I}=\ket{{0}\bra{0}+\ket{{1}\bra{1}=\begin{bmatrix}1& 0\\ 0& 1 \end{bmatrix}. $$

Voor het geval dat er twee qubits zijn, kan de projector worden uitgevouwen als

$$ \ket{1} \bra{1} \otimes \mathbb{I}=\ket{{1}\bra{1}\otimes (\ket{0}\bra{0}+\ket{1}\bra{{1})=\ket{10}\bra{{10} + . \ket{{11}\bra{{11} $$

vervolgens kunt u zien dat dit consistent is met de discussie over meetkansen voor multiqubitstatussen met behulp van kolomvector notatie:

$$P(\text{eerste qubit = 1})=\psi^\dagger (e_{10}e_{10}^\dagger + e_{{11}e_{{11}^\dagger)\psi=|e_{{10}^\dagger\psi|2 + |e_{11}^\dagger\psi|^2,$$

die overeenkomt met de discussie over de multi-qubitmeting. De generalisatie van dit resultaat voor de case met meerdere qubits is echter iets eenvoudiger om uit te drukken met behulp van diracnotatie dan kolomvectornotatie en is volledig gelijk aan de vorige behandeling.

Dichtheidsoperators

Een andere handige operator om uit te drukken met behulp van Dirac-notatie is de dichtheidsoperator, ook wel bekend als een statusoperator. Als kwantumstatusvector beschrijft de dichtheidsoperator de kwantumstatus van een systeem. Hoewel kwantumtoestandsvectoren alleen pure toestanden kunnen vertegenwoordigen, kunnen dichtheidsoperatoren ook gemengde toestanden vertegenwoordigen.

Over het algemeen is een gegeven matrix $\rho$ een geldige dichtheidsoperator als aan de volgende voorwaarden wordt voldaan:

  • $\rho$ is een matrix van complexe getallen
  • $\rho \rho^= (dat wil {\dagger}$gezegd $ : \rho$ is Hermitian)
  • Elke eigenwaarde $p$ van $\rho$ is niet-negatief
  • Alle eigenwaarden van $\rho$ sum tot 1

Samen garanderen deze voorwaarden dat $\rho$ als ensemble kan worden beschouwd. Een dichtheidsoperator voor een kwantumtoestandsvector $\ket{\psi}$ heeft de vorm $\rho =\sum_i p_i _i\ket{\psi}\bra{\psi_i}$ is een eigenwaardedegradatie van $\rho$. Vervolgens $beschrijft \rho$ het ensemble $\rho ={\ket{\psi_i}\text{met waarschijnlijkheid} p_i.}$

Pure kwantumtoestanden zijn de toestanden die worden gekenmerkt door één ketvector of golffunctie en kunnen niet worden geschreven als een statistische combinatie (of een convexe combinatie) van andere kwantumtoestanden. Een gemengde kwantumtoestand is een statistisch ensemble van pure toestanden.

Op een Bloch-bol worden pure toestanden vertegenwoordigd door een punt op het oppervlak van de bol, terwijl gemengde toestanden worden vertegenwoordigd door een binnenste punt. De gemengde toestand van één qubit wordt vertegenwoordigd door het midden van de bol, door symmetrie. De zuiverheid van een toestand kan worden gevisualiseerd als de mate waarin deze zich dicht bij het oppervlak van de bol bevindt.

Dit concept van het weergeven van de status als een matrix, in plaats van een vector, is vaak handig omdat het een handige manier biedt om waarschijnlijkheidsberekeningen weer te geven, en u kunt ook zowel statistische onzekerheid als kwantum onzekerheid binnen hetzelfde formalisme beschrijven.

Een dichtheidsoperator $\rho$ vertegenwoordigt een pure status als en alleen als:

  • $\rho$ kan worden geschreven als een buitenproduct van een statusvector, $\rho=\ket{\psi}\bra{\psi}$
  • $\rho \rho =^2$
  • $tr(\rho^2)=1$

Als u wilt weten hoe dicht een bepaalde dichtheidsoperator $\rho$ puur is, kunt u kijken naar de tracering (dat wil zeggen de som van de diagonale elementen) van $\rho^2$. Een dichtheidsoperator vertegenwoordigt een pure status als en alleen als $tr(\rho ^{2})=1$.

Q# poortreeksen die gelijk zijn aan kwantumstatussen

Een laatste punt dat de kwantum notatie en de Q# programmeertaal waard is: het begin van dit document vermeldt dat de kwantumstatus het fundamentele object is van informatie in kwantumcomputing. Het kan dan als een verrassing komen dat er Q# geen idee is van een kwantumtoestand. In plaats daarvan worden alle statussen alleen beschreven door de bewerkingen die worden gebruikt om ze voor te bereiden. Het vorige voorbeeld is een uitstekende illustratie hiervan. In plaats van een uniforme superpositie uit te drukken op elke kwantumbittekenreeks in een register, kunt u het resultaat weergeven als $H^{\otimes n}\ket{0}$. Deze exponentieel kortere beschrijving van de status heeft niet alleen het voordeel dat u er klassiek over kunt redeneren, maar het definieert ook beknopt de bewerkingen die moeten worden doorgegeven via de softwarestack om het algoritme te implementeren. Q# Daarom is het ontworpen om poortreeksen te verzenden in plaats van kwantumtoestanden. Op theoretisch niveau zijn de twee perspectieven echter gelijkwaardig.