Přeskočit na hlavní obsah

Procedura odhadu fáze

Dále si probereme proceduru odhadu fáze, což je kvantový algoritmus pro řešení problému odhadu fáze.

Začneme zahřívacím cvičením s nízkou přesností, které vysvětluje základní intuici za touto metodou. Poté si povíme o kvantové Fourierově transformaci, což je důležitá kvantová operace používaná v proceduře odhadu fáze, a také o její implementaci pomocí kvantového obvodu. Jakmile budeme mít kvantovou Fourierovu transformaci k dispozici, popíšeme proceduru odhadu fáze v plné obecnosti a zanalyzujeme její výkonnost.

Zahřívání: aproximace fází s nízkou přesností​

Začneme několika jednoduchými verzemi procedury odhadu fáze, které poskytují řešení problému odhadu fáze s nízkou přesností. To je užitečné pro vysvětlení intuice za obecnou procedurou, kterou uvidíme o něco později v této lekci.

Využití phase kickbacku​

Jednoduchý přístup k problému odhadu fáze, který nám umožňuje zjistit něco o hodnotě θ\theta, kterou hledáme, je založen na jevu phase kick-back. Jak uvidíme, jedná se v podstatě o jednoqubitovou verzi obecné procedury odhadu fáze, o které budeme hovořit později v této lekci.

Jako součást vstupu do problému odhadu fáze máme unitární kvantový obvod pro operaci UU. Popis tohoto obvodu můžeme použít k vytvoření obvodu pro řízenou-UU operaci, kterou si můžeš představit podle tohoto obrázku (s operací UU zobrazenou jako kvantové hradlo vlevo a řízenou-UU operací vpravo).

Uncontrolled and controlled versions of a unitary operation

Kvantový obvod pro řízenou-UU operaci můžeme vytvořit tak, že nejprve přidáme řídicí qubit do obvodu pro UU a poté nahradíme každé hradlo v obvodu pro UU řízenou verzí tohoto hradla -- takže náš jeden nový řídicí qubit efektivně řídí každé jednotlivé hradlo v obvodu pro UU. To vyžaduje, abychom měli řízenou verzi každého hradla v našem obvodu, ale vždy můžeme sestavit obvod pro tyto řízené operace, pokud nejsou součástí naší sady hradel.

Nyní se podívej na následující obvod, kde vstupní stav ∣ψ⟩\vert\psi\rangle všech qubitů kromě horního je kvantový stavový vlastní vektor UU.

A single-qubit circuit for phase-estimation

Pravděpodobnosti výsledků měření pro tento obvod závisí na vlastním čísle UU odpovídajícím vlastnímu vektoru ∣ψ⟩\vert\psi\rangle. Pojďme si obvod podrobně zanalyzovat a zjistit přesně jak.

States of a single-qubit circuit for phase-estimation

Počáteční stav obvodu je

∣π0⟩=∣ψ⟩∣0⟩\vert\pi_0\rangle = \vert\psi\rangle \vert 0\rangle

a první Hadamardovo hradlo transformuje tento stav na

∣π1⟩=∣ψ⟩∣+⟩=12∣ψ⟩∣0⟩+12∣ψ⟩∣1⟩.\vert\pi_1\rangle = \vert\psi\rangle \vert +\rangle = \frac{1}{\sqrt{2}} \vert\psi\rangle \vert 0\rangle + \frac{1}{\sqrt{2}} \vert\psi\rangle \vert 1\rangle.

Dále se provede řízená-UU operace, která vede ke stavu

∣π2⟩=12∣ψ⟩∣0⟩+12(U∣ψ⟩)∣1⟩.\vert\pi_2\rangle = \frac{1}{\sqrt{2}} \vert\psi\rangle \vert 0\rangle + \frac{1}{\sqrt{2}} \bigl(U \vert\psi\rangle\bigr) \vert 1\rangle.

S využitím předpokladu, že ∣ψ⟩\vert\psi\rangle je vlastní vektor UU s vlastním číslem λ=e2πiθ\lambda = e^{2\pi i\theta}, můžeme tento stav alternativně vyjádřit následovně.

∣π2⟩=12∣ψ⟩∣0⟩+e2πiθ2∣ψ⟩∣1⟩=∣ψ⟩⊗(12∣0⟩+e2πiθ2∣1⟩)\vert\pi_2\rangle = \frac{1}{\sqrt{2}} \vert\psi\rangle \vert 0\rangle + \frac{e^{2\pi i \theta}}{\sqrt{2}} \vert\psi\rangle \vert 1\rangle = \vert\psi\rangle \otimes \left( \frac{1}{\sqrt{2}} \vert 0\rangle + \frac{e^{2\pi i \theta}}{\sqrt{2}} \vert 1\rangle\right)

Zde pozorujeme jev phase kickback. Tentokrát je to mírně odlišné od Deutschova algoritmu a Deutsch-Jozsova algoritmu, protože nepracujeme s dotazovacím hradlem -- ale myšlenka je podobná.

Nakonec se provede druhé Hadamardovo hradlo. Po troše zjednodušení získáme tento výraz pro daný stav.

∣π3⟩=∣ψ⟩⊗(1+e2πiθ2∣0⟩+1−e2πiθ2∣1⟩)\vert\pi_3\rangle = \vert\psi\rangle \otimes \left( \frac{1+ e^{2\pi i \theta}}{2} \vert 0\rangle + \frac{1 - e^{2\pi i \theta}}{2} \vert 1\rangle\right)

Měření proto dává výsledky 00 a 11 s těmito pravděpodobnostmi:

p0=∣1+e2πiθ2∣2=cos⁡2(πθ)p1=∣1−e2πiθ2∣2=sin⁡2(πθ).\begin{aligned} p_0 &= \left\vert \frac{1+ e^{2\pi i \theta}}{2} \right\vert^2 = \cos^2(\pi\theta)\\[1mm] p_1 &= \left\vert \frac{1- e^{2\pi i \theta}}{2} \right\vert^2 = \sin^2(\pi\theta). \end{aligned}

Zde je graf pravděpodobností pro dva možné výsledky, 00 a 1,1, jako funkcí θ.\theta.

Outcome probabilities from phase kickback

Přirozeně, obě pravděpodobnosti se vždy sčítají na 11. Všimni si, že když θ=0\theta = 0, výsledek měření je vždy 00, a když θ=1/2\theta = 1/2, výsledek měření je vždy 11. Takže i když nám výsledek měření neprozradí přesnou hodnotu θ\theta, poskytne nám o ní určitou informaci -- a kdybychom měli příslib, že buď θ=0\theta = 0 nebo θ=1/2\theta = 1/2, mohli bychom z obvodu bez chyby zjistit, která z hodnot je správná.

Intuitivně si můžeš výsledek měření obvodu představit jako odhad θ\theta s "přesností na jeden bit". Jinými slovy, kdybychom zapsali θ\theta v binární notaci a zaokrouhlili ho na jeden bit, dostali bychom číslo jako toto:

0.a={0a=012a=1.0.a = \begin{cases} 0 & a = 0\\ \frac{1}{2} & a = 1. \end{cases}

Výsledek měření lze chápat jako odhad bitu aa. Když θ\theta není ani 00 ani 1/21/2, existuje nenulová pravděpodobnost, že odhad bude chybný -- ale pravděpodobnost chyby se stává menší a menší, čím blíže se dostáváme k 00 nebo 1/21/2.

Je přirozené ptát se, jakou roli hrají v této proceduře dvě Hadamardova hradla:

  • První Hadamardovo hradlo nastaví řídicí qubit do uniformní superpozice ∣0⟩\vert 0\rangle a ∣1⟩\vert 1\rangle, takže když nastane phase kickback, stane se pro stav ∣1⟩\vert 1\rangle a ne pro stav ∣0⟩\vert 0\rangle, čímž se vytvoří relativní fázový rozdíl, který ovlivní výsledky měření. Kdybychom to neudělali a phase kickback by vytvořil globální fázi, nemělo by to žádný vliv na pravděpodobnosti získání různých výsledků měření.

  • Druhé Hadamardovo hradlo nám umožňuje zjistit něco o čísle θ\theta prostřednictvím jevu interference. Před druhým Hadamardovým hradlem je stav horního qubitu

    12∣0⟩+e2πiθ2∣1⟩,\frac{1}{\sqrt{2}} \vert 0\rangle + \frac{e^{2\pi i \theta}}{\sqrt{2}} \vert 1\rangle,

    a kdybychom tento stav měřili, získali bychom 00 a 11 každý s pravděpodobností 1/21/2, což nám o θ\theta neřekne nic. Provedením druhého Hadamardova hradla však způsobíme, že číslo θ\theta ovlivní výstupní pravděpodobnosti.

Zdvojení fáze​

Výše uvedený obvod využívá jev phase kickback k aproximaci θ\theta s přesností na jeden bit. Přesnost na jeden bit může být v některých situacích vše, co potřebujeme -- ale pro faktorizaci budeme potřebovat mnohem větší přesnost. Přirozenou otázkou je, jak se můžeme o θ\theta dozvědět více?

Jedna velmi jednoduchá věc, kterou můžeme udělat, je nahradit řízenou-UU operaci v našem obvodu dvěma kopiemi této operace, jako v tomto obvodu:

Single-bit phase estimation doubled

Dvě kopie řízené-UU operace jsou ekvivalentní řízené-U2U^2 operaci. Pokud je ∣ψ⟩\vert\psi\rangle vlastní vektor UU s vlastním číslem λ=e2πiθ\lambda = e^{2\pi i \theta}, pak je tento stav také vlastním vektorem U2U^2, tentokrát s vlastním číslem λ2=e2πi(2θ)\lambda^2 = e^{2\pi i (2\theta)}.

Takže pokud spustíme tuto verzi obvodu, efektivně provádíme stejný výpočet jako předtím, s tím rozdílem, že číslo θ\theta je nahrazeno 2θ2\theta. Zde je graf znázorňující výstupní pravděpodobnosti, jak se θ\theta pohybuje od 00 do 11.

Outcome probabilities from double-phase kickback

Toto nám skutečně může poskytnout další informace o θ\theta. Pokud je binární reprezentace θ\theta

θ=0.a1a2a3⋯\theta = 0.a_1 a_2 a_3\cdots

pak zdvojení θ\theta efektivně posune binární tečku o jednu pozici doprava:

2θ=a1.a2a3⋯2\theta = a_1. a_2 a_3\cdots

A protože ztotožňujeme θ=1\theta = 1 s θ=0\theta = 0 při pohybu po jednotkové kružnici, vidíme, že bit a1a_1 nemá žádný vliv na naše pravděpodobnosti, a efektivně získáváme odhad druhého bitu za binární tečkou, pokud zaokrouhlíme θ\theta na dva bity. Například pokud bychom předem věděli, že θ\theta je buď 00, nebo 1/41/4, mohli bychom plně důvěřovat výsledku měření, že nám řekne, která z těchto hodnot to je.

Není však hned jasné, jak by se tento odhad měl skloubit s tím, co jsme se naučili z původního (nezdvojeného) obvodu s fázovým zpětným rázem, abychom získali co nejpřesnější informaci o θ\theta. Tak se vraťme o krok zpět a zamysleme se, jak postupovat.

Odhad fáze se dvěma qubity​

Místo toho, abychom uvažovali dvě výše popsané možnosti samostatně, spojme je do jediného Circuit takto.

The initial set-up for phase estimation with two qubits

Hadamardovy Gate za řízenými operacemi byly odstraněny a zatím zde nejsou žádná měření. Do Circuit přidáme víc, jakmile budeme uvažovat naše možnosti pro to, co nejvíc se dozvědět o θ\theta.

Pokud spustíme tento Circuit, když ∣ψ⟩\vert\psi\rangle je vlastní vektor UU, stav spodních Qubit zůstane po celou dobu Circuit ∣ψ⟩\vert\psi\rangle, a fáze budou "nakopnuty" (kicked) do stavu horních dvou Qubit. Pojďme Circuit pečlivě analyzovat pomocí následujícího obrázku.

States for phase estimation with two qubits

Stav ∣π1⟩\vert\pi_1\rangle můžeme zapsat takto:

∣π1⟩=∣ψ⟩⊗12∑a0=01∑a1=01∣a1a0⟩.\vert\pi_1\rangle = \vert \psi\rangle \otimes \frac{1}{2} \sum_{a_0 = 0}^1 \sum_{a_1 = 0}^1 \vert a_1 a_0 \rangle.

Když je provedena první řízená operace-UU, vlastní číslo λ=e2πiθ\lambda = e^{2\pi i\theta} se nakopne do fáze, když a0a_0 (horní Qubit) se rovná 11, ale ne když je 00. Výsledný stav tedy můžeme vyjádřit takto:

∣π2⟩=∣ψ⟩⊗12∑a0=01∑a1=01e2πia0θ∣a1a0⟩.\vert\pi_2\rangle = \vert\psi\rangle \otimes \frac{1}{2} \sum_{a_0=0}^1 \sum_{a_1=0}^1 e^{2 \pi i a_0 \theta} \vert a_1 a_0 \rangle.

Druhá a třetí řízená-UU Gate dělají něco podobného, kromě toho, že se to týká a1a_1 místo a0a_0, a θ\theta je nahrazeno 2θ2\theta. Výsledný stav můžeme vyjádřit takto:

∣π3⟩=∣ψ⟩⊗12∑a0=01∑a1=01e2πi(2a1+a0)θ∣a1a0⟩.\vert\pi_3\rangle = \vert\psi\rangle\otimes\frac{1}{2}\sum_{a_0 = 0}^1 \sum_{a_1 = 0}^1 e^{2\pi i (2 a_1 + a_0)\theta} \vert a_1 a_0 \rangle.

Pokud uvažujeme binární řetězec a1a0a_1 a_0 jako reprezentaci celého čísla x∈{0,1,2,3}x \in \{0,1,2,3\} v binárním zápisu, což je x=2a1+a0x = 2 a_1 + a_0, můžeme tento stav alternativně vyjádřit následovně.

∣π3⟩=∣ψ⟩⊗12∑x=03e2πixθ∣x⟩\vert\pi_3\rangle = \vert \psi\rangle \otimes \frac{1}{2} \sum_{x = 0}^3 e^{2\pi i x \theta} \vert x \rangle

Naším cílem je získat z tohoto stavu co nejvíc informací o θ\theta.

V tomto bodě uvažme speciální případ, kdy je nám slíbeno, že θ=y4\theta = \frac{y}{4} pro nějaké celé číslo y∈{0,1,2,3}y\in\{0,1,2,3\}. Jinými slovy, máme θ∈{0,1/4,1/2,3/4}\theta\in \{0, 1/4, 1/2, 3/4\}, takže toto číslo můžeme přesně vyjádřit v binárním zápisu pomocí dvou bitů jako .0000, .0101, .1010, nebo .1111. Obecně θ\theta nemusí být jednou z těchto čtyř hodnot, ale zamyšlení nad tímto speciálním případem nám pomůže přijít na to, jak nejúčinněji získat informace o θ\theta obecně.

Nejprve definujeme dvouqubitový vektor stavu pro každou možnou hodnotu y∈{0,1,2,3}y \in \{0, 1, 2, 3\}.

∣ϕy⟩=12∑x=03e2πix(y4)∣x⟩=12∑x=03e2πixy4∣x⟩\vert \phi_y\rangle = \frac{1}{2} \sum_{x = 0}^3 e^{2\pi i x (\frac{y}{4})} \vert x \rangle = \frac{1}{2} \sum_{x = 0}^3 e^{2\pi i \frac{x y}{4}} \vert x \rangle

Po zjednodušení exponenciál můžeme tyto vektory zapsat následovně.

∣ϕ0⟩=12∣0⟩+12∣1⟩+12∣2⟩+12∣3⟩∣ϕ1⟩=12∣0⟩+i2∣1⟩−12∣2⟩−i2∣3⟩∣ϕ2⟩=12∣0⟩−12∣1⟩+12∣2⟩−12∣3⟩∣ϕ3⟩=12∣0⟩−i2∣1⟩−12∣2⟩+i2∣3⟩\begin{aligned} \vert\phi_0\rangle & = \frac{1}{2} \vert 0 \rangle + \frac{1}{2} \vert 1 \rangle + \frac{1}{2} \vert 2 \rangle + \frac{1}{2} \vert 3 \rangle \\[3mm] \vert\phi_1\rangle & = \frac{1}{2} \vert 0 \rangle + \frac{i}{2} \vert 1 \rangle - \frac{1}{2} \vert 2 \rangle - \frac{i}{2} \vert 3 \rangle \\[3mm] \vert\phi_2\rangle & = \frac{1}{2} \vert 0 \rangle - \frac{1}{2} \vert 1 \rangle + \frac{1}{2} \vert 2 \rangle - \frac{1}{2} \vert 3 \rangle \\[3mm] \vert\phi_3\rangle & = \frac{1}{2} \vert 0 \rangle - \frac{i}{2} \vert 1 \rangle - \frac{1}{2} \vert 2 \rangle + \frac{i}{2} \vert 3 \rangle \end{aligned}

Tyto vektory jsou ortogonální: pokud vybereme kteroukoli dvojici z nich a spočítáme jejich vnitřní součin, dostaneme 00. Každý z nich je také jednotkový vektor, takže {∣ϕ0⟩,∣ϕ1⟩,∣ϕ2⟩,∣ϕ3⟩}\{\vert\phi_0\rangle, \vert\phi_1\rangle, \vert\phi_2\rangle, \vert\phi_3\rangle\} je ortonormální báze. Proto hned víme, že existuje měření, které je dokáže dokonale rozlišit — což znamená, že pokud nám je dán jeden z nich, ale nevíme který, dokážeme bezchybně zjistit, o který jde.

Abychom takovou diskriminaci provedli pomocí kvantového obvodu, můžeme nejprve definovat unitární operaci VV, která transformuje standardní bázové stavy na čtyři výše uvedené stavy.

V∣00⟩=∣ϕ0⟩V∣01⟩=∣ϕ1⟩V∣10⟩=∣ϕ2⟩V∣11⟩=∣ϕ3⟩\begin{aligned} V \vert 00 \rangle & = \vert\phi_0\rangle \\ V \vert 01 \rangle & = \vert\phi_1\rangle \\ V \vert 10 \rangle & = \vert\phi_2\rangle \\ V \vert 11 \rangle & = \vert\phi_3\rangle \end{aligned}

Abychom zapsali VV jako matici 4×44\times 4, stačí vzít sloupce VV jako stavy ∣ϕ0⟩,…,∣ϕ3⟩\vert\phi_0\rangle,\ldots,\vert\phi_3\rangle.

V=12(11111i−1−i1−11−11−i−1i)V = \frac{1}{2} \begin{pmatrix} 1 & 1 & 1 & 1\\[1mm] 1 & i & -1 & -i\\[1mm] 1 & -1 & 1 & -1\\[1mm] 1 & -i & -1 & i \end{pmatrix}

Toto je speciální matice a je pravděpodobné, že se s ní někteří čtenáři už setkali: je to matice spojená se 44-rozměrnou diskrétní Fourierovou transformací. Vzhledem k této skutečnosti ji nazvěme QFT4\mathrm{QFT}_4 místo VV. Název QFT\mathrm{QFT} je zkratka pro quantum Fourier transform — což je v podstatě jen diskrétní Fourierova transformace, chápaná jako unitární operace. O kvantové Fourierově transformaci budeme brzy hovořit podrobněji a obecněji.

QFT4=12(11111i−1−i1−11−11−i−1i)\mathrm{QFT}_4 = \frac{1}{2} \begin{pmatrix} 1 & 1 & 1 & 1\\[1mm] 1 & i & -1 & -i\\[1mm] 1 & -1 & 1 & -1\\[1mm] 1 & -i & -1 & i \end{pmatrix}

Můžeme provést inverzi této operace, abychom šli opačným směrem, tedy transformovat stavy ∣ϕ0⟩,…,∣ϕ3⟩\vert\phi_0\rangle,\ldots,\vert\phi_3\rangle na standardní bázové stavy ∣0⟩,…,∣3⟩\vert 0\rangle,\ldots,\vert 3\rangle. Pokud to uděláme, můžeme pak měřením zjistit, jaká hodnota y∈{0,1,2,3}y\in\{0,1,2,3\} popisuje θ\theta jako θ=y/4\theta = y/4. Zde je diagram kvantového Circuit, který to dělá.

Phase estimation with two qubits

Shrnuto, pokud spustíme tento Circuit, když θ=y/4\theta = y/4 pro y∈{0,1,2,3}y\in\{0,1,2,3\}, stav bezprostředně před provedením měření bude ∣ψ⟩∣y⟩\vert \psi\rangle \vert y\rangle (kde yy je zakódováno jako dvoubitový binární řetězec), takže měření odhalí hodnotu yy bez chyby.

Tento obvod je motivován speciálním případem, kdy θ∈{0,1/4,1/2,3/4}\theta \in \{0,1/4,1/2,3/4\} — ale můžeme jej spustit pro libovolnou volbu UU a ∣ψ⟩\vert \psi\rangle, a tedy i pro libovolnou hodnotu θ\theta, kterou si zvolíme. Zde je graf výstupních pravděpodobností, které obvod produkuje pro libovolné volby θ\theta.

Outcome probabilities from two-qubit phase estimation

Toto je jasné zlepšení oproti jednoqubitové variantě popsané dříve v lekci. Není dokonalé — může nám dát nesprávnou odpověď — ale odpověď je silně vychýlena směrem k hodnotám yy, pro které je y/4y/4 blízko θ\theta. Konkrétně nejpravděpodobnější výsledek vždy odpovídá nejbližší hodnotě y/4y/4 k θ\theta (rovnajíc θ=0\theta = 0 a θ=1\theta = 1 jako předtím), a z grafu vypadá, že tato nejbližší hodnota pro xx se vždy objevuje s pravděpodobností těsně nad 40%40\%. Když je θ\theta přesně uprostřed mezi dvěma takovými hodnotami, jako například θ=0.375\theta = 0.375, obě stejně blízké hodnoty yy jsou stejně pravděpodobné.

Příprava na zobecnění na mnoho qubitů​

Vzhledem ke zlepšení, které jsme právě získali použitím dvou řídicích qubitů místo jednoho ve spojení s inverzí 44-dimenzionální kvantové Fourierovy transformace, je přirozené uvažovat o dalším zobecnění — přidáním více řídicích qubitů. Když to uděláme, získáme obecný postup odhadu fáze. Za chvíli uvidíme, jak to funguje, ale abychom to mohli přesně popsat, budeme muset probrat kvantovou Fourierovu transformaci obecněji, abychom viděli, jak je definována pro jiné dimenze a jak ji (nebo její inverzi) můžeme implementovat pomocí kvantového obvodu.

Kvantová Fourierova transformace​

Kvantová Fourierova transformace je unitární operace, kterou lze definovat pro libovolnou kladnou celočíselnou dimenzi NN. V této sekci uvidíme, jak je tato operace definována a jak ji lze implementovat pomocí kvantového obvodu na mm qubitů s náklady O(m2)O(m^2), když N=2mN = 2^m.

Matice popisující kvantovou Fourierovu transformaci jsou odvozeny z analogické operace na NN-dimenzionálních vektorech známé jako diskrétní Fourierova transformace. Tuto operaci si lze představit různými způsoby. Například si diskrétní Fourierovu transformaci můžeme představit v čistě abstraktních, matematických pojmech jako lineární zobrazení. Nebo si o ní můžeme uvažovat ve výpočetních pojmech, kdy dostaneme NN-dimenzionální vektor komplexních čísel (předpokládejme, že reálné a imaginární části záznamů jsou zakódovány v binárním zápisu) a cílem je vypočítat NN-dimenzionální vektor získaný aplikací diskrétní Fourierovy transformace. My se zaměříme na třetí způsob, kterým je chápání této transformace jako unitární operace, kterou lze provést na kvantovém systému.

Existuje efektivní algoritmus pro výpočet diskrétní Fourierovy transformace na daném vstupním vektoru známý jako rychlá Fourierova transformace. Má aplikace ve zpracování signálů a mnoha dalších oblastech a mnozí ho považují za jeden z nejdůležitějších algoritmů, jaké byly kdy objeveny. Jak se ukazuje, implementace kvantové Fourierovy transformace pro případ, kdy je NN mocninou 2, kterou budeme studovat, je založena na přesně stejné podkladové struktuře, která umožňuje rychlou Fourierovu transformaci.

Definice kvantové Fourierovy transformace​

Pro definici kvantové Fourierovy transformace nejprve definujeme komplexní číslo ωN\omega_N pro každé kladné celé číslo NN takto:

ωN=e2πiN=cos⁡(2πN)+isin⁡(2πN).\omega_N = e^{\frac{2\pi i}{N}} = \cos\left(\frac{2\pi}{N}\right) + i \sin\left(\frac{2\pi}{N}\right).

Toto je číslo na komplexní jednotkové kružnici, které získáme, pokud začneme v bodě 11 a posuneme se proti směru hodinových ručiček o úhel 2π/N2\pi/N radiánů, neboli o zlomek 1/N1/N obvodu kružnice. Zde je několik příkladů:

ω1=1ω2=−1ω3=−12+32iω4=iω8=1+i2ω16=2+22+2−22iω100≈0.998+0.063i\begin{gathered} \omega_1 = 1\\[1mm] \omega_2 = -1\\[1mm] \omega_3 = -\frac{1}{2} + \frac{\sqrt{3}}{2} i\\[2mm] \omega_4 = i\\[1mm] \omega_8 = \frac{1+i}{\sqrt{2}}\\[3mm] \omega_{16} = \frac{\sqrt{2 + \sqrt{2}}}{2} + \frac{\sqrt{2 - \sqrt{2}}}{2} i\\[2mm] \omega_{100} \approx 0.998 + 0.063 i \end{gathered}

Nyní můžeme definovat NN-dimenzionální kvantovou Fourierovu transformaci, která je popsána maticí N×NN\times N, jejíž řádky a sloupce jsou přiřazeny ke standardním bázovým stavům ∣0⟩,…,∣N−1⟩\vert 0\rangle,\ldots,\vert N-1\rangle. Pro odhad fáze budeme tuto operaci potřebovat pouze tehdy, když N=2mN = 2^m je mocnina 22, ale operaci lze definovat pro libovolné kladné celé číslo NN.

QFTN=1N∑x=0N−1∑y=0N−1ωNxy∣x⟩⟨y∣\mathrm{QFT}_N = \frac{1}{\sqrt{N}} \sum_{x = 0}^{N-1} \sum_{y = 0}^{N-1} \omega_N^{xy} \vert x \rangle\langle y\vert

Jak již bylo řečeno, toto je matice spojená s NN-dimenzionální diskrétní Fourierovou transformací. Často se úvodní faktor 1/N1/\sqrt{N} do definice této matice nezahrnuje, ale my ho musíme zahrnout, abychom získali unitární matici.

Zde je kvantová Fourierova transformace zapsaná jako matice pro několik malých hodnot NN.

QFT1=(1)\mathrm{QFT}_1 = \begin{pmatrix} 1 \end{pmatrix} QFT2=12(111−1)\mathrm{QFT}_2 = \frac{1}{\sqrt{2}} \begin{pmatrix} 1 & 1\\[1mm] 1 & -1 \end{pmatrix} QFT3=13(1111−1+i32−1−i321−1−i32−1+i32)\mathrm{QFT}_3 = \frac{1}{\sqrt{3}} \begin{pmatrix} 1 & 1 & 1\\[2mm] 1 & \frac{-1 + i\sqrt{3}}{2} & \frac{-1 - i\sqrt{3}}{2}\\[2mm] 1 & \frac{-1 - i\sqrt{3}}{2} & \frac{-1 + i\sqrt{3}}{2} \end{pmatrix} QFT4=12(11111i−1−i1−11−11−i−1i)\mathrm{QFT}_4 = \frac{1}{2} \begin{pmatrix} 1 & 1 & 1 & 1\\[1mm] 1 & i & -1 & -i\\[1mm] 1 & -1 & 1 & -1\\[1mm] 1 & -i & -1 & i \end{pmatrix} QFT8=122(1111111111+i2i−1+i2−1−1−i2−i1−i21i−1−i1i−1−i1−1+i2−i1+i2−11−i2i−1−i21−11−11−11−11−1−i2i1−i2−11+i2−i−1+i21−i−1i1−i−1i11−i2−i−1−i2−1−1+i2i1+i2)\mathrm{QFT}_8 = \frac{1}{2\sqrt{2}} \begin{pmatrix} 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1\\[2mm] 1 & \frac{1+i}{\sqrt{2}} & i & \frac{-1+i}{\sqrt{2}} & -1 & \frac{-1-i}{\sqrt{2}} & -i & \frac{1-i}{\sqrt{2}}\\[2mm] 1 & i & -1 & -i & 1 & i & -1 & -i\\[2mm] 1 & \frac{-1+i}{\sqrt{2}} & -i & \frac{1+i}{\sqrt{2}} & -1 & \frac{1-i}{\sqrt{2}} & i & \frac{-1-i}{\sqrt{2}}\\[2mm] 1 & -1 & 1 & -1 & 1 & -1 & 1 & -1\\[2mm] 1 & \frac{-1-i}{\sqrt{2}} & i & \frac{1-i}{\sqrt{2}} & -1 & \frac{1+i}{\sqrt{2}} & -i & \frac{-1+i}{\sqrt{2}}\\[2mm] 1 & -i & -1 & i & 1 & -i & -1 & i\\[2mm] 1 & \frac{1-i}{\sqrt{2}} & -i & \frac{-1-i}{\sqrt{2}} & -1 & \frac{-1+i}{\sqrt{2}} & i & \frac{1+i}{\sqrt{2}}\\[2mm] \end{pmatrix}

Všimni si zejména, že QFT2\mathrm{QFT}_2 je jiný název pro Hadamardovu operaci.

Unitarita​

Ověřme, že QFTN\mathrm{QFT}_N je unitární pro libovolnou volbu NN. Jedním ze způsobů, jak to udělat, je ukázat, že jeho sloupce tvoří ortonormální bázi. Můžeme definovat vektor odpovídající sloupci číslo yy, počínaje od y=0y = 0 až po y=N−1y = N-1, takto:

∣ϕy⟩=1N∑x=0N−1ωNxy∣x⟩.\vert\phi_y\rangle = \frac{1}{\sqrt{N}} \sum_{x = 0}^{N-1} \omega_N^{xy} \vert x \rangle.

Výpočet skalárního součinu mezi libovolnými dvěma z těchto vektorů nám dává tento výraz:

⟨ϕz∣ϕy⟩=1N∑x=0N−1ωNx(y−z)\langle \phi_z \vert \phi_y \rangle = \frac{1}{N} \sum_{x = 0}^{N-1} \omega_N^{x (y - z)}

Součty tohoto typu můžeme vyhodnotit pomocí následujícího vzorce pro součet prvních NN členů geometrické řady.

1+α+α2+⋯+αN−1={αN−1α−1if α≠1Nif α=11 + \alpha + \alpha^2 + \cdots + \alpha^{N-1} = \begin{cases} \frac{\alpha^N - 1}{\alpha - 1} & \text{if } \alpha\neq 1\\[2mm] N & \text{if } \alpha=1 \end{cases}

Konkrétně tento vzorec můžeme použít, když α=ωNy−z\alpha = \omega_N^{y-z}. Když y=zy = z, máme α=1\alpha = 1, takže použitím vzorce a vydělením NN dostaneme

⟨ϕy∣ϕy⟩=1.\langle \phi_y \vert \phi_y \rangle = 1.

Když y≠zy\neq z, máme α≠1\alpha \neq 1, takže vzorec ukazuje toto:

⟨ϕz∣ϕy⟩=1NωNN(y−z)−1ωNy−z−1=1N1−1ωNy−z−1=0.\langle \phi_z \vert \phi_y \rangle = \frac{1}{N} \frac{\omega_N^{N(y-z)} - 1}{\omega_N^{y-z} - 1} = \frac{1}{N} \frac{1 - 1}{\omega_N^{y-z} - 1} = 0.

Toto nastává, protože ωNN=e2πi=1\omega_N^N = e^{2\pi i} = 1, takže ωNN(y−z)=1y−z=1\omega_N^{N(y-z)} = 1^{y-z} = 1, čímž je čitatel nulový, zatímco jmenovatel je nenulový, protože ωNy−z≠1\omega_N^{y-z} \neq 1. Intuitivně řečeno, sčítáme sadu bodů rozmístěných po jednotkové kružnici, a ty se při sečtení vzájemně vyruší a dají 00.

Tím jsme ukázali, že {∣ϕ0⟩,…,∣ϕN−1⟩}\{\vert\phi_0\rangle,\ldots,\vert\phi_{N-1}\rangle\} je ortonormální množina,

⟨ϕz∣ϕy⟩={1y=z0y≠z,\langle \phi_z \vert \phi_y \rangle = \begin{cases} 1 & y=z\\ 0 & y\neq z, \end{cases}

což ukazuje, že QFTN\mathrm{QFT}_N je unitární.

Řízená fázová hradla​

Pro implementaci kvantové Fourierovy transformace pomocí kvantového obvodu budeme potřebovat řízená fázová hradla. Připomeň si, že fázová operace je jednoqubitová unitární operace tvaru

Pα=(100eiα)P_{\alpha} = \begin{pmatrix} 1 & 0\\[1mm] 0 & e^{i\alpha} \end{pmatrix}

pro libovolné reálné číslo α\alpha. Řízená verze tohoto hradla má následující matici:

CPα=(100001000010000eiα)CP_{\alpha} = \begin{pmatrix} 1 & 0 & 0 & 0\\[1mm] 0 & 1 & 0 & 0\\[1mm] 0 & 0 & 1 & 0\\[1mm] 0 & 0 & 0 & e^{i\alpha} \end{pmatrix}

U tohoto řízeného hradla ve skutečnosti nezáleží na tom, který qubit je řídicí a který je cílový, protože obě možnosti jsou ekvivalentní. Pro znázornění tohoto hradla v diagramech kvantových obvodů můžeš použít kterýkoli z následujících symbolů.

Quantum circuit diagram representation for controlled-phase gates

U třetí formy se popisek α\alpha někdy umisťuje i na stranu řídicí čáry nebo pod dolní řídicí bod, pokud je to výhodné.

Pro provedení kvantové Fourierovy transformace, když N=2mN = 2^m a m≥2m\geq 2, budeme potřebovat provést operaci na mm qubitech, jejíž akce na stavech standardní báze lze popsat jako

∣y⟩∣a⟩↦ω2may∣y⟩∣a⟩,\vert y \rangle \vert a \rangle \mapsto \omega_{2^m}^{ay} \vert y \rangle \vert a \rangle,

kde aa je bit a y∈{0,…,2m−1−1}y \in \{0,\ldots,2^{m-1} - 1\} je číslo zakódované v binárním zápisu jako řetězec m−1m-1 bitů. Toto lze provést pomocí řízených fázových hradel zobecněním následujícího příkladu, pro který m=5m=5.

Quantum circuit diagram for phase injection

Obecně pro libovolnou volbu m≥2m\geq 2 lze horní qubit odpovídající bitu aa považovat za řídicí, přičemž fázová hradla PαP_{\alpha} se pohybují od α=π/2m−1\alpha = \pi/2^{m-1} na qubitu odpovídajícím nejméně významnému bitu yy až po α=π2\alpha = \frac{\pi}{2} na qubitu odpovídajícím nejvíce významnému bitu yy. Tato řízená fázová hradla vzájemně komutují a mohou být provedeny v libovolném pořadí.

Implementace QFT pomocí obvodu​

Nyní se podíváme, jak můžeme implementovat kvantovou Fourierovu transformaci pomocí obvodu, když je dimenze N=2mN = 2^m mocninou 22. Ve skutečnosti existuje více způsobů, jak kvantovou Fourierovu transformaci implementovat, ale toto je pravděpodobně nejjednodušší známá metoda. Jakmile víme, jak kvantovou Fourierovu transformaci implementovat pomocí kvantového obvodu, je přímočaré implementovat její inverzi: můžeme nahradit každé hradlo jeho inverzí (nebo ekvivalentně hermitovským sdružením) a aplikovat hradla v opačném pořadí. Každý kvantový obvod složený pouze z unitárních hradel lze tímto způsobem invertovat.

Implementace je svou povahou rekurzivní, takže je nejpřirozenější ji takto popsat. Základní případ je m=1m=1, v tom případě je kvantová Fourierova transformace Hadamardova operace.

Pro provedení kvantové Fourierovy transformace na mm qubitech, když m≥2m \geq 2, můžeme provést následující kroky, jejichž akce popíšeme pro stavy standardní báze tvaru ∣x⟩∣a⟩\vert x \rangle \vert a\rangle, kde x∈{0,…,2m−1−1}x\in\{0,\ldots,2^{m-1} - 1\} je celé číslo zakódované jako m−1m-1 bitů v binárním zápisu a aa je jeden bit.

  1. Nejprve aplikuj 2m−12^{m-1}-rozměrnou kvantovou Fourierovu transformaci na spodních/nejlevějších m−1m-1 qubitech, čímž získáš tento stav:

    (QFT2m−1∣x⟩)∣a⟩=12m−1∑y=02m−1−1ω2m−1xy∣y⟩∣a⟩.\Bigl(\mathrm{QFT}_{2^{m-1}} \vert x \rangle\Bigr) \vert a\rangle = \frac{1}{\sqrt{2^{m-1}}} \sum_{y = 0}^{2^{m-1} - 1} \omega_{2^{m-1}}^{xy} \vert y \rangle \vert a \rangle.

    Toto se provede rekurzivní aplikací právě popisované metody pro o jeden qubit méně, přičemž jako základní případ slouží Hadamardova operace na jednom qubitu.

  2. Použij horní/nejpravější qubit jako řídicí pro vložení fáze ω2my\omega_{2^m}^y pro každý stav standardní báze ∣y⟩\vert y\rangle zbývajících m−1m-1 qubitů (jak je popsáno výše), čímž získáš tento stav:

    12m−1∑y=02m−1−1ω2m−1xyω2may∣y⟩∣a⟩.\frac{1}{\sqrt{2^{m-1}}} \sum_{y = 0}^{2^{m-1} - 1} \omega_{2^{m-1}}^{xy} \omega_{2^m}^{ay} \vert y \rangle \vert a \rangle.
  3. Proveď Hadamardovo hradlo na horním/nejpravějším qubitu, čímž získáš tento stav:

    12m∑y=02m−1−1∑b=01(−1)abω2m−1xyω2may∣y⟩∣b⟩.\frac{1}{\sqrt{2^{m}}} \sum_{y = 0}^{2^{m-1} - 1} \sum_{b=0}^1 (-1)^{ab} \omega_{2^{m-1}}^{xy} \omega_{2^m}^{ay} \vert y \rangle \vert b \rangle.
  4. Permutuj pořadí qubitů tak, aby se nejméně významný bit stal nejvíce významným bitem, přičemž všechny ostatní se posunou nahoru/doprava:

    12m∑y=02m−1−1∑b=01(−1)abω2m−1xyω2may∣b⟩∣y⟩.\frac{1}{\sqrt{2^{m}}} \sum_{y = 0}^{2^{m-1} - 1} \sum_{b=0}^1 (-1)^{ab} \omega_{2^{m-1}}^{xy} \omega_{2^m}^{ay} \vert b \rangle \vert y \rangle.

Například zde je obvod, který získáme pro N=32=25N = 32 = 2^5. V tomto diagramu mají qubity názvy odpovídající stavovým vektorům standardní báze ∣x⟩∣a⟩\vert x\rangle \vert a\rangle (pro vstup) a ∣b⟩∣y⟩\vert b\rangle \vert y\rangle (pro výstup) pro přehlednost.

Quantum circuit diagram for the 32-dimensional quantum Fourier transform

Analýza​

Klíčový vzorec, který potřebujeme k ověření, že právě popsaný obvod implementuje 2m2^m-rozměrnou kvantovou Fourierovu transformaci, je tento:

(−1)abω2m−1xyω2may=ω2m(2x+a)(2m−1b+y).(-1)^{ab} \omega_{2^{m-1}}^{xy} \omega_{2^m}^{ay} = \omega_{2^m}^{(2x+ a)(2^{m-1}b + y)}.

Tento vzorec platí pro libovolnou volbu celých čísel a,a, b,b, xx a y,y, ale budeme ho potřebovat pouze pro a,b∈{0,1}a,b\in\{0,1\} a x,y∈{0,…,2m−1−1}.x,y\in\{0,\ldots,2^{m-1}-1\}. Lze ho ověřit rozepsáním součinu v exponentu na pravé straně,

ω2m(2x+a)(2m−1b+y)=ω2m2mxbω2m2xyω2m2m−1abω2may=(−1)abω2m−1xyω2may, \omega_{2^m}^{(2x+ a)(2^{m-1}b + y)} = \omega_{2^m}^{2^m xb} \omega_{2^m}^{2xy} \omega_{2^m}^{2^{m-1}ab} \omega_{2^m}^{ay} = (-1)^{ab} \omega_{2^{m-1}}^{xy} \omega_{2^m}^{ay},

kde druhá rovnost využívá pozorování, že

ω2m2mxb=(ω2m2m)xb=1xb=1.\omega_{2^m}^{2^m xb} = \bigl(\omega_{2^m}^{2^m}\bigr)^{xb} = 1^{xb} = 1.

2m2^m-dimenzionální kvantová Fourierova transformace je definována následovně pro každé u∈{0,…,2m−1}u\in\{0,\ldots,2^m - 1\}.

QFT2m∣u⟩=12m∑v=02m−1ω2muv∣v⟩\mathrm{QFT}_{2^m} \vert u\rangle = \frac{1}{\sqrt{2^m}} \sum_{v = 0}^{2^m - 1} \omega_{2^m}^{uv} \vert v\rangle

Pokud zapíšeme uu a vv jako

u=2x+av=2m−1b+y\begin{aligned} u & = 2x + a\\ v & = 2^{m-1}b + y \end{aligned}

pro a,b∈{0,1}a,b\in\{0,1\} a x,y∈{0,…,2m−1−1}x,y\in\{0,\ldots,2^{m-1} - 1\}, dostaneme

QFT2m∣2x+a⟩=12m∑y=02m−1−1∑b=01ω2m(2x+a)(2m−1b+y)∣b2m−1+y⟩=12m∑y=02m−1−1∑b=01(−1)abω2m−1xyω2may∣b2m−1+y⟩.\begin{aligned} \mathrm{QFT}_{2^m} \vert 2x + a\rangle & = \frac{1}{\sqrt{2^m}} \sum_{y = 0}^{2^{m-1} - 1} \sum_{b=0}^1 \omega_{2^m}^{(2x+ a)(2^{m-1}b + y)} \vert b 2^{m-1} + y\rangle\\[2mm] & = \frac{1}{\sqrt{2^m}} \sum_{y = 0}^{2^{m-1} - 1} \sum_{b=0}^1 (-1)^{ab} \omega_{2^{m-1}}^{xy} \omega_{2^m}^{ay} \vert b 2^{m-1} + y\rangle. \end{aligned}

Nakonec, když si představíme standardní bázové stavy ∣x⟩∣a⟩\vert x \rangle \vert a\rangle a ∣b⟩∣y⟩\vert b \rangle \vert y \rangle jako binární kódování celých čísel v rozsahu {0,…,2m−1}\{0,\ldots,2^m-1\},

∣x⟩∣a⟩=∣2x+a⟩∣b⟩∣y⟩=∣2m−1b+y⟩,\begin{aligned} \vert x \rangle \vert a\rangle & = \vert 2x + a \rangle\\ \vert b \rangle \vert y \rangle & = \vert 2^{m-1}b + y\rangle, \end{aligned}

vidíme, že výše uvedený obvod implementuje požadovanou operaci. Pokud se ti tato metoda provádění kvantové Fourierovy transformace zdá pozoruhodná, je to proto, že pozoruhodná skutečně je: jde v podstatě o rychlou Fourierovu transformaci ve formě kvantového obvodu.

Nakonec spočítejme, kolik hradel se v právě popsaném obvodu používá. Řízená fázová hradla nejsou ve standardní sadě hradel, kterou jsme probírali v předchozí lekci, ale pro začátek to budeme ignorovat a každé z nich budeme počítat jako jedno hradlo.

Označme sms_m počet hradel, která potřebujeme pro každou možnou volbu mm. Pokud m=1m=1, kvantová Fourierova transformace je jen Hadamardova operace, takže

s1=1.s_1 = 1.

Pokud m≥2m\geq 2, pak ve výše uvedeném obvodu potřebujeme sm−1s_{m-1} hradel pro kvantovou Fourierovu transformaci na m−1m-1 qubitech, plus m−1m-1 řízených fázových hradel, plus jedno Hadamardovo hradlo, plus m−1m-1 swapových hradel, takže

sm=sm−1+(2m−1).s_m = s_{m-1} + (2m - 1).

Uzavřený výraz můžeme získat sečtením:

sm=∑k=1m(2k−1)=m2.s_m = \sum_{k = 1}^m (2k - 1) = m^2.

Ve skutečnosti nepotřebujeme tolik swapových hradel, kolik metoda popisuje. Pokud hradla trochu přeuspořádáme, můžeme všechna swapová hradla přesunout doprava a snížit počet potřebných swapových hradel na ⌊m/2⌋\lfloor m/2\rfloor. Asymptoticky vzato to není zásadní zlepšení: stále dostáváme obvody o velikosti O(m2)O(m^2) pro provedení QFT2m\mathrm{QFT}_{2^m}.

Pokud chceme implementovat kvantovou Fourierovu transformaci pouze pomocí hradel z naší standardní sady, musíme každé z řízených fázových hradel buď sestavit, nebo aproximovat hradly z naší sady. Potřebný počet závisí na tom, jakou přesnost požadujeme, ale jako funkce mm zůstávají celkové náklady kvadratické.

Ve skutečnosti je možné aproximovat kvantovou Fourierovu transformaci poměrně přesně s podkvadratickým počtem hradel využitím faktu, že PαP_{\alpha} je velmi blízko identické operaci, když je α\alpha velmi malé — což znamená, že můžeme většinu řízených fázových hradel jednoduše vynechat, aniž bychom příliš ztratili na přesnosti.

Obecný postup a analýza​

Nyní prozkoumáme postup odhadu fáze obecně. Myšlenka spočívá v rozšíření dvou-qubitové verze odhadu fáze, kterou jsme uvažovali výše, přirozeným způsobem naznačeným následujícím diagramem.

Phase estimation procedure

Všimni si, že pro každý nový řídicí qubit přidaný nahoře zdvojnásobujeme počet provedení unitární operace U.U. To je v diagramu naznačeno mocninami UU u každé z řízených unitárních operací.

Nejpřímočařejší způsob implementace řízené operace UkU^k pro nějakou volbu kk je jednoduše opakovat řízenou operaci UU celkem kk-krát. Pokud se skutečně použije tato metodologie, je třeba si uvědomit, že přidávání řídicích qubitů významně přispívá k velikosti obvodu: pokud máme mm řídicích qubitů, jak ukazuje diagram, je potřeba celkem 2m−12^m - 1 kopií řízené operace UU. To znamená, že s rostoucím mm narůstají významné výpočetní náklady — ale jak uvidíme, vede to také k výrazně přesnější aproximaci θ\theta.

Je důležité poznamenat, že pro některé volby UU může být možné vytvořit obvod implementující operaci UkU^k pro velké hodnoty kk efektivnějším způsobem než pouhým opakováním obvodu pro UU celkem kk-krát. Konkrétní příklad uvidíme v kontextu faktorizace celých čísel později v této lekci, kde nám přijde na pomoc efektivní algoritmus pro modulární umocňování probíraný v předchozí lekci.

Nyní analyzujme právě popsaný obvod. Stav bezprostředně před inverzní kvantovou Fourierovou transformací vypadá takto:

12m∑x=02m−1(Ux∣ψ⟩)∣x⟩=∣ψ⟩⊗12m∑x=02m−1e2πixθ∣x⟩.\frac{1}{\sqrt{2^m}} \sum_{x = 0}^{2^m - 1} \bigl( U^x \vert\psi\rangle \bigr) \vert x\rangle = \vert\psi\rangle \otimes \frac{1}{\sqrt{2^m}} \sum_{x = 0}^{2^m - 1} e^{2\pi i x\theta} \vert x\rangle.

Speciální případ​

Podobně jako v případě m=2m=2 nejprve uvažujme speciální případ, kdy θ=y/2m\theta = y/2^m pro y∈{0,…,2m−1}y\in\{0,\ldots,2^m-1\}. V tomto případě lze stav před inverzní kvantovou Fourierovou transformací alternativně zapsat takto:

∣ψ⟩⊗12m∑x=02m−1e2πixy2m∣x⟩=∣ψ⟩⊗12m∑x=02m−1ω2mxy∣x⟩=∣ψ⟩⊗QFT2m∣y⟩.\vert\psi\rangle \otimes \frac{1}{\sqrt{2^m}} \sum_{x = 0}^{2^m - 1} e^{2\pi i \frac{xy}{2^m}} \vert x\rangle = \vert\psi\rangle \otimes \frac{1}{\sqrt{2^m}} \sum_{x = 0}^{2^m - 1} \omega_{2^m}^{xy} \vert x\rangle = \vert\psi\rangle \otimes \mathrm{QFT}_{2^m} \vert y\rangle.

Takže po aplikaci inverzní kvantové Fourierovy transformace se stav změní na

∣ψ⟩∣y⟩\vert\psi\rangle \vert y\rangle

a měření odhalí yy (zakódované v binární soustavě).

Ohraničení pravděpodobností​

Pro jiné hodnoty θ\theta, tedy ty, které nemají tvar y/2my/2^m pro celé číslo yy, výsledky měření nebudou deterministické, ale můžeme dokázat odhady pravděpodobností pro různé výsledky.Dále uvažujme libovolnou volbu θ\theta splňující 0≤θ<10\leq \theta < 1.

Po provedení inverzní kvantové Fourierovy transformace je stav obvodu následující:

∣ψ⟩⊗12m∑y=02m−1∑x=02m−1e2πix(θ−y/2m)∣y⟩.\vert \psi \rangle \otimes \frac{1}{2^m} \sum_{y=0}^{2^m - 1} \sum_{x=0}^{2^m-1} e^{2\pi i x (\theta - y/2^m)} \vert y\rangle.

Takže když se provedou měření na horních mm qubitech, vidíme každý výsledek yy s pravděpodobností

py=∣12m∑x=02m−1e2πix(θ−y/2m)∣2.p_y = \left\vert \frac{1}{2^m} \sum_{x=0}^{2^m - 1} e^{2\pi i x (\theta - y/2^m)} \right\vert^2.

Abychom tyto pravděpodobnosti lépe pochopili, využijeme tentýž vzorec, který jsme viděli dříve, pro součet počáteční části geometrické řady.

1+α+α2+⋯+αN−1={αN−1α−1if α≠1Nif α=11 + \alpha + \alpha^2 + \cdots + \alpha^{N-1} = \begin{cases} \frac{\alpha^N - 1}{\alpha - 1} & \text{if } \alpha\neq 1\\[2mm] N & \text{if } \alpha=1 \end{cases}

Součet vystupující ve vzorci pro pyp_y můžeme zjednodušit dosazením α=e2πi(θ−y/2m)\alpha = e^{2\pi i (\theta - y/2^m)}. Zde je výsledek.

∑x=02m−1e2πix(θ−y/2m)={2mθ=y/2me2πi(2mθ−y)−1e2πi(θ−y/2m)−1θ≠y/2m\sum_{x=0}^{2^m - 1} e^{2\pi i x (\theta - y/2^m)} = \begin{cases} 2^m & \theta = y/2^m\\[2mm] \frac{e^{2\pi i (2^m \theta - y)} - 1}{e^{2\pi i (\theta - y/2^m)} - 1} & \theta\neq y/2^m \end{cases}

V případě θ=y/2m\theta = y/2^m tedy zjistíme, že py=1p_y = 1 (jak jsme již věděli z úvahy o tomto speciálním případě), a v případě θ≠y/2m\theta \neq y/2^m zjistíme, že

py=122m∣e2πi(2mθ−y)−1e2πi(θ−y/2m)−1∣2.p_y = \frac{1}{2^{2m}} \left\vert \frac{e^{2\pi i (2^m \theta - y)} - 1}{e^{2\pi i (\theta - y/2^m)} - 1}\right\vert^2.

O těchto pravděpodobnostech se můžeme dozvědět více, když se zamyslíme nad vztahem délky oblouku a délky tětivy na jednotkové kružnici. Zde je obrázek ilustrující vztahy, které potřebujeme, pro libovolné reálné číslo δ∈[−12,12]\delta\in \bigl[ -\frac{1}{2},\frac{1}{2}\bigr].

Illustration of the relationship between arc and chord lengths

Zaprvé, délka tětivy (vykreslená modře) nemůže být větší než délka oblouku (vykreslená fialově):

∣e2πiδ−1∣≤2π∣δ∣.\bigl\vert e^{2\pi i \delta} - 1\bigr\vert \leq 2\pi\vert\delta\vert.

Při porovnání těchto délek opačným směrem vidíme, že poměr délky oblouku k délce tětivy je největší, když δ=±1/2\delta = \pm 1/2, a v tomto případě je poměr roven polovině obvodu kružnice dělené průměrem, což je π/2\pi/2. Máme tedy

2π∣δ∣∣e2πiδ−1∣≤π2,\frac{2\pi\vert\delta\vert}{\bigl\vert e^{2\pi i \delta} - 1\bigr\vert} \leq \frac{\pi}{2},

a proto

∣e2πiδ−1∣≥4∣δ∣.\bigl\vert e^{2\pi i \delta} - 1\bigr\vert \geq 4\vert\delta\vert.

Analýza založená na těchto vztazích odhaluje následující dva fakty.

  1. Předpokládejme, že θ\theta je reálné číslo a y∈{0,…,2m−1}y\in \{0,\ldots,2^m-1\} splňuje

    ∣θ−y2m∣≤2−(m+1).\Bigl\vert \theta - \frac{y}{2^m}\Bigr\vert \leq 2^{-(m+1)}.

    To znamená, že y/2my/2^m je buď nejlepší mm-bitová aproximace θ\theta, nebo leží přesně uprostřed mezi y/2my/2^m a buď (y−1)/2m(y-1)/2^m nebo (y+1)/2m(y+1)/2^m, takže jde o jednu ze dvou nejlepších aproximací θ\theta.

    Dokážeme, že pyp_y musí být v tomto případě poměrně velké. Z předpokladu, který uvažujeme, plyne, že ∣2mθ−y∣≤1/2\vert 2^m \theta - y \vert \leq 1/2, takže můžeme využít druhé pozorování výše o vztahu délky oblouku a tětivy k závěru, že

    ∣e2πi(2mθ−y)−1∣≥4∣2mθ−y∣=4⋅2m⋅∣θ−y2m∣.\left\vert e^{2\pi i (2^m \theta - y)} - 1\right\vert \geq 4 \vert 2^m \theta - y \vert = 4 \cdot 2^m \cdot \Bigl\vert \theta - \frac{y}{2^m}\Bigr\vert.

    Rovněž můžeme využít první pozorování o délkách oblouku a tětivy k závěru, že

    ∣e2πi(θ−y/2m)−1∣≤2π∣θ−y2m∣.\left\vert e^{2\pi i (\theta - y/2^m)} - 1\right\vert \leq 2\pi \Bigl\vert \theta - \frac{y}{2^m}\Bigr\vert.

    Dosazením těchto dvou nerovností do výrazu pro pyp_y dostaneme

    py≥122m16⋅22m4π2=4π2≈0.405.p_y \geq \frac{1}{2^{2m}} \frac{16 \cdot 2^{2m}}{4 \pi^2} = \frac{4}{\pi^2} \approx 0.405.

    To vysvětluje naše pozorování, že nejlepší výsledek nastává s pravděpodobností větší než 40%40\% ve verzi odhadu fáze s m=2m=2, kterou jsme probírali dříve. Ve skutečnosti to není přesně 40 %, ale 4/π24/\pi^2, a tento odhad platí pro každou volbu mm.

  2. Nyní předpokládejme, že y∈{0,…,2m−1}y\in \{0,\ldots,2^m-1\} splňuje

    2−m≤∣θ−y2m∣≤12.2^{-m} \leq \Bigl\vert \theta - \frac{y}{2^m}\Bigr\vert \leq \frac{1}{2}.

    To znamená, že existuje lepší aproximace z/2mz/2^m hodnoty θ\theta ležící mezi θ\theta a y/2my/2^m.

    Tentokrát dokážeme, že pyp_y nemůže být příliš velké. Můžeme začít jednoduchým pozorováním, že

    ∣e2πi(2mθ−y)−1∣≤2,\left\vert e^{2\pi i (2^m \theta - y)} - 1\right\vert \leq 2,

    což plyne z faktu, že libovolné dva body na jednotkové kružnici se mohou v absolutní hodnotě lišit nejvýše o 22.

    Rovněž můžeme využít druhé pozorování o délkách oblouku a tětivy z výše uvedeného, tentokrát aplikované na jmenovatel pyp_y místo čitatele, k závěru

    ∣e2πi(θ−y/2m)−1∣≥4∣θ−y2m∣≥4⋅2−m.\left\vert e^{2\pi i (\theta - y/2^m)} - 1\right\vert \geq 4\Bigl\vert \theta - \frac{y}{2^m}\Bigr\vert \geq 4 \cdot 2^{-m}.

    Spojením obou nerovností dostaneme

    py≤122m416⋅2−2m=14.p_y \leq \frac{1}{2^{2m}} \frac{4}{16 \cdot 2^{-2m}} = \frac{1}{4}.

    Všimni si, že i když je tento odhad pro naše účely dostatečný, je poměrně hrubý — pravděpodobnost je obvykle mnohem nižší než 1/41/4.

Důležitý závěr z této analýzy je, že velmi blízké aproximace θ\theta se pravděpodobně vyskytnou — nejlepší mm-bitovou aproximaci dostaneme s pravděpodobností větší než 40%40\% — zatímco aproximace vzdálené o více než 2−m2^{-m} se vyskytnou méně pravděpodobně, s pravděpodobností shora ohraničenou 25%25\%.

S ohledem na tyto záruky je možné zvýšit naši jistotu opakováním postupu odhadu fáze několikrát, abychom shromáždili statistické důkazy o θ\theta. Je důležité si uvědomit, že stav ∣ψ⟩\vert\psi\rangle spodní skupiny qubitů zůstává postupem odhadu fáze nezměněn, takže jej lze použít k opakovanému spuštění postupu, kolikrát chceme. Konkrétně pokaždé, když spustíme obvod, získáme nejlepší mm-bitovou aproximaci θ\theta s pravděpodobností větší než 40%40\%, zatímco pravděpodobnost odchylky větší než 2−m2^{-m} je ohraničena 25%25\%. Pokud obvod spustíme několikrát a vezmeme nejčastěji se vyskytující výsledek, je proto mimořádně pravděpodobné, že nejčastěji se vyskytující výsledek nebude ten, který nastává s pravděpodobností nejvýše 25%25\%. V důsledku toho velmi pravděpodobně získáme aproximaci y/2my/2^m, která je vzdálena od hodnoty θ\theta nejvýše o 1/2m1/2^m. Nepravděpodobná šance, že se odchýlíme o více než 1/2m1/2^m, skutečně klesá exponenciálně s počtem opakování postupu.

Zde jsou dva grafy zobrazující pravděpodobnosti pro tři po sobě jdoucí hodnoty yy při m=3m = 3 a m=4m=4 jako funkce θ\theta. (Pro přehlednost jsou zobrazeny pouze tři výsledky. Pravděpodobnosti pro ostatní výsledky získáš cyklickým posunem téže základní funkce.)

Plot showing outcome probabilities for three-qubit phase estimation

Plot showing outcome probabilities for four-qubit phase estimation