En réponse à votre première question, je me suis écrit quelques notes il y a quelque temps sur ma compréhension du fonctionnement. La notation est probablement un peu différente (j'ai essayé de l'aligner davantage, mais il est facile de manquer des bits), mais tente d'expliquer ce choix de l'état . Il semble également y avoir des facteurs de 1|Ψ0⟩ flottant par endroits.12
Lorsque nous étudions pour la première fois l'estimation de phase, nous y pensons généralement en ce qui concerne l'utilisation dans un algorithme particulier, tel que l'algorithme de Shor. Cela a un objectif spécifique: obtenir la meilleure approximation en bits de la valeur propre. Soit vous le faites, soit vous ne le faites pas, et la description de l'estimation de phase est spécifiquement réglée pour donner une probabilité de réussite aussi élevée que possible.t
Dans HHL, nous essayons de produire un état
où| b⟩=Σjβj| λj⟩, en utilisantestimation de phase. La précision de l'approximation dépendra de façon beaucoup plus critique d'une estimation précise des valeurs propres proches de 0 plutôt que de celles qui sont loin de 0. Une étape évidente consiste donc à tenter de modifier le protocole d'estimation de phase de manière à ce que que d'utiliser des «bacs» de largeur fixe2π/Tpour approximer les phases dee-iAt(T=
|ϕ⟩=∑jβjλj|λj⟩,
|b⟩=∑jβj|λj⟩2π/Te−iAt et
t est le nombre de qubits dans le registre d'estimation de phase), nous pourrions plutôt spécifier un ensemble de
ϕ y pour
y ∈ { 0 , 1 } t pour agir comme le centre de chaque bin afin que nous puissions avoir une précision considérablement accrue proche de Phase 0. Plus généralement, vous pouvez spécifier une fonction de compromis pour la tolérance que vous pourriez avoir à l'égard des erreurs en fonction de la phase
ϕT=2ttϕyy∈{0,1}tϕ. La nature précise de cette fonction peut ensuite être ajustée à une application donnée, et le facteur de mérite particulier que vous utiliserez pour déterminer le succès. Dans le cas de l'algorithme de Shor, notre valeur de mérite était simplement ce protocole de binning - nous avons réussi si la réponse était dans le bon bin, et sans succès en dehors. Ce ne sera pas le cas dans HHL, dont le succès est plus raisonnablement capturé par une mesure continue telle que la fidélité. Ainsi, pour le cas général, nous désignerons une fonction de coût
qui spécifie une pénalité pour les réponses
ϕ ′ si la vraie phase est
ϕ .
C(ϕ,ϕ′)ϕ′ϕ
Rappelons que le protocole standard d'estimation de phase a fonctionné en produisant un état d'entrée qui était la superposition uniforme de tous les états de base pour x ∈ { 0 , 1 } t . Cet état a été utilisé pour contrôler l'application séquentielle de multiples portes U contrôlées , qui sont suivies d'une transformée de Fourier inverse. Imaginez que nous pourrions remplacer l'état d'entrée par un autre état
| Ψ 0 ⟩ = Σ x ∈ { 0 , 1 } t α x | x ⟩ ,|x⟩x∈{0,1}tU
|Ψ0⟩=∑x∈{0,1}tαx|x⟩,
puis le reste du protocole pourrait fonctionner comme avant. Pour l'instant, nous ignorerons la question de la difficulté de produire le nouvel état
, comme nous juste essayer de transmettre le concept de base. À partir de cet état, l'utilisation des portes
U contrôlées (ciblant un vecteur propre de
U de valeur propre
ϕ ), produit l'état
∑ x ∈ { 0 , 1 } t α x e i ϕ x | x ⟩ .
L'application de la transformée de Fourier inverse donne
1|Ψ0⟩UUϕ∑x∈{0,1}tαxeiϕx|x⟩.
1T−−√∑x,y∈{0,1}teix(ϕ−2πyM)αx|y⟩.
yϕ′=2πy/T1T∣∣∣∣∑x∈{0,1}teix(ϕ−2πyT)αx∣∣∣∣2
ϕC¯=12πT∫2π0dϕ∑y∈{0,1}t∣∣∣∣∑x∈{0,1}teix(ϕ−2πyT)αx∣∣∣∣2C(ϕ,2πy/T),
and our task is to select the amplitudes
αx that minimise this for any specific realisation of
C(ϕ,ϕ′). If we make the simplifying assumption that
C(ϕ,ϕ′) is only a function of
ϕ−ϕ′, then we can make a change of variable in the integration to give
C¯=12π∫2π0dϕ∣∣∣∣∑x∈{0,1}teixϕαx∣∣∣∣2C(ϕ),
As we noted, the most useful measure is likely to be a fidelity measure. Consider we have a state
|+⟩ and we wish to implement the unitary
Uϕ=|0⟩⟨0|+eiϕ|1⟩⟨1|, but instead we implement
Uϕ′=|0⟩⟨0|+eiϕ′|1⟩⟨1|. The fidelity measures how well this achieves the desired task,
F=∣∣⟨+|U†ϕ′U|+⟩∣∣2=cos2(ϕ−ϕ′2),
so we take
C(ϕ−ϕ′)=sin2(ϕ−ϕ′2),
since in the ideal case
F=1, so the error, which is what we want to minimise, can be taken as
1−F.
This will certainly be the correct function for evaluating any
Ut, but for the more general task of modifying the amplitudes, not just the phases, the effects of inaccuracies propagate through the protocol in a less trivial manner, so it is difficult to prove optimality, although the function
C(ϕ−ϕ′) will already provide some improvement over the uniform superposition of states. Proceeding with this form, we have
C¯=12π∫2π0dϕ∣∣∣∣∑x∈{0,1}teixϕαx∣∣∣∣2sin2(12ϕ),
The integral over
ϕ can now be performed, so we want to minimise the function
12∑x,y=0T−1αxα⋆y(δx,y−12δx,y−1−12δx,y+1).
This can be succinctly expressed as
min⟨Ψ0|H|Ψ0⟩
where
H=12∑x,y=0T−1(δx,y−12δx,y−1−12δx,y+1)|x⟩⟨y|.
The optimal choice of
|Ψ0⟩ is the minimum eigenvector of the matrix
H,
αx=2T+1−−−−−√sin((x+1)πT+1),
and
C¯ is the minimum eigenvalue
C¯=12−12cos(πT+1).
Crucially, for large
T,
C¯ scales as
1/T2 rather than the
1/T that we would have got from the uniform coupling choice
αx=1/T−−√. This yields a significant benefit for the error analysis.
If you want to get the same |Ψ0⟩ as reported in the HHL paper, I believe you have to add the terms −14(|0⟩⟨T−1|+|T−1⟩⟨0|) to the Hamiltonian. I have no justification for doing so, however, but this is probably my failing.