Vai al contenuto principale

Il problema della stima di fase

Questa sezione della lezione spiega il problema della stima di fase. Inizieremo con una breve discussione del teorema spettrale dell'algebra lineare, per poi passare all'enunciato del problema della stima di fase vero e proprio.

Teorema spettrale

Il teorema spettrale è un risultato importante dell'algebra lineare che afferma che le matrici di un certo tipo, chiamate matrici normali, possono essere espresse in modo semplice e utile. In questa lezione avremo bisogno di questo teorema solo per le matrici unitarie, ma più avanti nella serie lo applicheremo anche alle matrici hermitiane.

Matrici normali

Una matrice quadrata MM con elementi nel campo dei numeri complessi è detta matrice normale se commuta con la sua trasposta coniugata: MM=MM.M M^{\dagger} = M^{\dagger} M.

Ogni matrice unitaria UU è normale perché

UU=I=UU.U U^{\dagger} = \mathbb{I} = U^{\dagger} U.

Le matrici hermitiane, cioè le matrici uguali alla propria trasposta coniugata, sono un'altra classe importante di matrici normali. Se HH è una matrice hermitiana, allora

HH=H2=HH,H H^{\dagger} = H^2 = H^{\dagger} H,

quindi HH è normale.

Non ogni matrice quadrata è normale. Per esempio, questa matrice non è normale:

(0100)\begin{pmatrix} 0 & 1\\ 0 & 0 \end{pmatrix}

(Questo è un esempio semplice ma ottimo di una matrice che spesso risulta molto utile da considerare.) Non è normale perché

(0100)(0100)=(0100)(0010)=(1000)\begin{pmatrix} 0 & 1\\ 0 & 0 \end{pmatrix} \begin{pmatrix} 0 & 1\\ 0 & 0 \end{pmatrix}^{\dagger} = \begin{pmatrix} 0 & 1\\ 0 & 0 \end{pmatrix} \begin{pmatrix} 0 & 0\\ 1 & 0 \end{pmatrix} = \begin{pmatrix} 1 & 0\\ 0 & 0 \end{pmatrix}

mentre

(0100)(0100)=(0010)(0100)=(0001).\begin{pmatrix} 0 & 1\\ 0 & 0 \end{pmatrix}^{\dagger} \begin{pmatrix} 0 & 1\\ 0 & 0 \end{pmatrix} = \begin{pmatrix} 0 & 0\\ 1 & 0 \end{pmatrix} \begin{pmatrix} 0 & 1\\ 0 & 0 \end{pmatrix} = \begin{pmatrix} 0 & 0\\ 0 & 1 \end{pmatrix}.

Enunciato del teorema

Ecco un enunciato del teorema spettrale.

Teorema

Teorema spettrale: sia MM una matrice complessa normale di dimensione N×NN\times N. Esiste una base ortonormale di vettori complessi NN-dimensionali {ψ1,,ψN}\bigl\{ \vert\psi_1\rangle,\ldots,\vert\psi_N\rangle \bigr\} insieme a numeri complessi λ1,,λN\lambda_1,\ldots,\lambda_N tali che

M=λ1ψ1ψ1++λNψNψN.M = \lambda_1 \vert \psi_1\rangle\langle \psi_1\vert + \cdots + \lambda_N \vert \psi_N\rangle\langle \psi_N\vert.

L'espressione di una matrice nella forma

M=k=1Nλkψkψk(1)M = \sum_{k = 1}^N \lambda_k \vert \psi_k\rangle\langle \psi_k\vert \tag{1}

è comunemente chiamata decomposizione spettrale. Nota che se MM è una matrice normale espressa nella forma (1),(1), allora l'equazione

Mψj=λjψjM \vert \psi_j \rangle = \lambda_j \vert \psi_j \rangle

deve essere vera per ogni j=1,,N.j = 1,\ldots,N. Ciò è conseguenza del fatto che {ψ1,,ψN}\bigl\{ \vert\psi_1\rangle,\ldots,\vert\psi_N\rangle \bigr\} è ortonormale:

Mψj=(k=1Nλkψkψk)ψj=k=1Nλkψkψkψj=λjψjM \vert \psi_j \rangle = \left(\sum_{k = 1}^N \lambda_k \vert \psi_k\rangle\langle \psi_k\vert\right)\vert \psi_j\rangle = \sum_{k = 1}^N \lambda_k \vert \psi_k\rangle\langle \psi_k\vert\psi_j \rangle = \lambda_j \vert\psi_j \rangle

Cioè, ogni numero λj\lambda_j è un autovalore di MM e ψj\vert\psi_j\rangle è un autovettore corrispondente a quell'autovalore.

  • Esempio 1. Sia

    I=(1001),\mathbb{I} = \begin{pmatrix}1 & 0\\0 & 1\end{pmatrix},

    che è normale. Il teorema implica che I\mathbb{I} può essere scritto nella forma (1)(1) per qualche scelta di λ1,\lambda_1, λ2,\lambda_2, ψ1,\vert\psi_1\rangle, e ψ2.\vert\psi_2\rangle. Ci sono più scelte che funzionano, tra cui

    λ1=1,λ2=1,ψ1=0,ψ2=1.\lambda_1 = 1, \hspace{5pt} \lambda_2 = 1, \hspace{5pt} \vert\psi_1\rangle = \vert 0\rangle, \hspace{5pt} \vert\psi_2\rangle = \vert 1\rangle.

    Nota che il teorema non dice che i numeri complessi λ1,,λN\lambda_1,\ldots,\lambda_N siano distinti — lo stesso numero complesso può ripetersi, il che è necessario per questo esempio. Queste scelte funzionano perché

    I=00+11.\mathbb{I} = \vert 0\rangle\langle 0\vert + \vert 1\rangle\langle 1\vert.

    In effetti, potremmo scegliere {ψ1,ψ2}\{\vert\psi_1\rangle,\vert\psi_2\rangle\} come qualsiasi base ortonormale e l'equazione sarà vera. Per esempio,

    I=+++.\mathbb{I} = \vert +\rangle\langle +\vert + \vert -\rangle\langle -\vert.
  • Esempio 2. Considera un'operazione di Hadamard.

    H=12(1111)H = \frac{1}{\sqrt{2}} \begin{pmatrix} 1 & 1\\[1mm] 1 & -1 \end{pmatrix}

    Questa è una matrice unitaria, quindi è normale. Il teorema spettrale implica che HH può essere scritto nella forma (1),(1), e in particolare abbiamo

    H=ψπ/8ψπ/8ψ5π/8ψ5π/8H = \vert\psi_{\pi/8}\rangle \langle \psi_{\pi/8}\vert - \vert\psi_{5\pi/8}\rangle \langle \psi_{5\pi/8}\vert

    dove

    ψθ=cos(θ)0+sin(θ)1.\vert\psi_{\theta}\rangle = \cos(\theta)\vert 0\rangle + \sin(\theta) \vert 1\rangle.

    Più esplicitamente,

    ψπ/8=2+220+2221,ψ5π/8=2220+2+221.\begin{aligned} \vert\psi_{\pi/8}\rangle & = \frac{\sqrt{2 + \sqrt{2}}}{2}\vert 0\rangle + \frac{\sqrt{2 - \sqrt{2}}}{2}\vert 1\rangle, \\[3mm] \vert\psi_{5\pi/8}\rangle & = -\frac{\sqrt{2 - \sqrt{2}}}{2}\vert 0\rangle + \frac{\sqrt{2 + \sqrt{2}}}{2}\vert 1\rangle. \end{aligned}

    Possiamo verificare che questa decomposizione è corretta eseguendo i calcoli richiesti:

    ψπ/8ψπ/8ψ5π/8ψ5π/8=(2+242424224)(22424242+24)=H.\vert\psi_{\pi/8}\rangle \langle \psi_{\pi/8}\vert - \vert\psi_{5\pi/8}\rangle \langle \psi_{5\pi/8}\vert = \begin{pmatrix} \frac{2 + \sqrt{2}}{4} & \frac{\sqrt{2}}{4}\\[2mm] \frac{\sqrt{2}}{4} & \frac{2 - \sqrt{2}}{4} \end{pmatrix} - \begin{pmatrix} \frac{2 - \sqrt{2}}{4} & -\frac{\sqrt{2}}{4}\\[2mm] -\frac{\sqrt{2}}{4} & \frac{2 + \sqrt{2}}{4} \end{pmatrix} = H.

Come rivela il primo esempio, può esserci una certa libertà nella scelta degli autovettori. Non c'è, invece, alcuna libertà nella scelta degli autovalori, a parte il loro ordinamento: gli stessi NN numeri complessi λ1,,λN,\lambda_1,\ldots,\lambda_N, che possono includere ripetizioni dello stesso numero complesso, compariranno sempre nell'equazione (1)(1) per una data matrice M.M.

Concentriamoci ora sulle matrici unitarie. Supponiamo di avere un numero complesso λ\lambda e un vettore non nullo ψ\vert\psi\rangle che soddisfano l'equazione

Uψ=λψ.(2)U\vert\psi\rangle = \lambda\vert\psi\rangle. \tag{2}

Cioè, λ\lambda è un autovalore di UU e ψ\vert\psi\rangle è un autovettore corrispondente a questo autovalore.

Le matrici unitarie preservano la norma euclidea, e da (2)(2) concludiamo quanto segue.

ψ=Uψ=λψ=λψ\bigl\| \vert\psi\rangle \bigr\| = \bigl\| U \vert\psi\rangle \bigr\| = \bigl\| \lambda \vert\psi\rangle \bigr\| = \vert \lambda \vert \bigl\| \vert\psi\rangle \bigr\|

La condizione che ψ\vert\psi\rangle sia non nullo implica che ψ0,\bigl\| \vert\psi\rangle \bigr\|\neq 0, quindi possiamo semplificarlo da entrambi i lati per ottenere

λ=1.\vert \lambda \vert = 1.

Questo rivela che gli autovalori delle matrici unitarie devono sempre avere valore assoluto uguale a uno, quindi giacciono sul cerchio unitario.

T={αC:α=1}\mathbb{T} = \{\alpha\in\mathbb{C} : \vert\alpha\vert = 1\}

(Il simbolo T\mathbb{T} è un nome comune per il cerchio unitario complesso. Anche il nome S1S^1 è comune.)

Enunciato del problema della stima di fase

Nel problema della stima di fase, ci viene dato uno stato quantistico ψ\vert \psi\rangle di nn qubit, insieme a un circuito quantistico unitario che agisce su nn qubit. Ci viene promesso che ψ\vert \psi\rangle è un autovettore della matrice unitaria UU che descrive l'azione del circuito, e il nostro obiettivo è calcolare o approssimare l'autovalore λ\lambda a cui ψ\vert \psi\rangle corrisponde. Più precisamente, poiché λ\lambda giace sul cerchio unitario complesso, possiamo scrivere

λ=e2πiθ\lambda = e^{2\pi i \theta}

per un unico numero reale θ\theta che soddisfa 0θ<1.0\leq\theta<1. L'obiettivo del problema è calcolare o approssimare questo numero reale θ.\theta.

Problema della stima di fase

Input: un circuito quantistico unitario per un'operazione UU su nn qubit insieme a uno stato quantistico ψ\vert\psi\rangle di nn qubit
Promessa: ψ\vert\psi\rangle è un autovettore di UU
Output: un'approssimazione del numero θ[0,1)\theta\in[0,1) che soddisfa Uψ=e2πiθψU\vert\psi\rangle = e^{2\pi i \theta}\vert\psi\rangle

Ecco alcune osservazioni su questo enunciato del problema:

  1. Il problema della stima di fase differisce dagli altri problemi visti finora nel corso perché l'input include uno stato quantistico. Di solito ci concentriamo su problemi con input e output classici, ma nulla ci impedisce di considerare input come stati quantistici. Dal punto di vista della sua rilevanza pratica, il problema della stima di fase si incontra tipicamente come sottoproblema all'interno di un calcolo più ampio, come vedremo nel contesto della fattorizzazione di interi più avanti nella lezione.

  2. L'enunciato del problema della stima di fase qui sopra non specifica cosa costituisca un'approssimazione di θ,\theta, ma possiamo formulare enunciati più precisi a seconda delle nostre esigenze e interessi. Nel contesto della fattorizzazione di interi richiederemo un'approssimazione molto precisa di θ,\theta, ma in altri casi potremmo accontentarci di un'approssimazione molto grossolana. Discuteremo a breve come la precisione richiesta influenzi il costo computazionale di una soluzione.

  3. Nota che, passando da θ=0\theta = 0 verso θ=1\theta = 1 nel problema della stima di fase, percorriamo tutto il cerchio unitario, partendo da e2πi0=1e^{2\pi i \cdot 0} = 1 e procedendo in senso antiorario verso e2πi1=1.e^{2\pi i \cdot 1} = 1. Cioè, quando raggiungiamo θ=1\theta = 1 siamo tornati al punto di partenza θ=0.\theta = 0. Quindi, quando consideriamo la precisione delle approssimazioni, i valori di θ\theta vicini a 11 devono essere considerati vicini a 0.0. Per esempio, un'approssimazione θ=0.999\theta = 0.999 dovrebbe essere considerata a una distanza di 1/10001/1000 da θ=0.\theta = 0.