Algoritmo quantistico per sistemi lineari di equazioni (HHL09): Fase 2 - Che cos'è ?


9

Questo è un sequel dell'algoritmo Quantum per i sistemi di equazioni lineari (HHL09): Step 1 - Confusione riguardo all'uso dell'algoritmo di stima di fase e l' algoritmo Quantum per i sistemi di equazioni lineari (HHL09): Step 1 - Numero di qubit necessari .


Nel documento: algoritmo quantistico per sistemi lineari di equazioni (Harrow, Hassidim & Lloyd, 2009) , cosa è scritto fino alla porzione

Il prossimo passo è decomporre nella base degli autovettori, usando la stima di fase [5-7]. Indica con gli autovettori di (o equivalentemente, di ) e con gli autovalori corrispondenti.|b⟩|uj⟩AeiAtλj

a pagina ha un senso per me (le confusioni fino a quando non sono state affrontate nei post precedenti collegati sopra). Tuttavia, la parte successiva, ovvero la rotazione sembra un po 'enigmatica.R ( λ - 1 )2R(λ−1)

Sia

|Ψ0⟩:=2T∑τ=0T−1sin⁡π(τ+12)T|τ⟩

per un po 'di grandi dimensioni . I coefficienti di sono scelti (seguendo [5-7]) per minimizzare una certa funzione di perdita quadratica che appare nella nostra analisi degli errori (vedi [13] per i dettagli).| Ψ 0 ⟩T|Ψ0⟩

Successivamente, applichiamo l'evoluzione condizionale hamiltoniana su , dove . | Ψ 0 ⟩ C ⊗ | B∑τ=0T−1|τ⟩⟨τ|C⊗eiAτt0/Tt 0 = O ( κ / ε )|Ψ0⟩C⊗|b⟩t0=O(κ/ϵ)

Domande:

1. Che cos'è esattamente ? Cosa significano e ? Non ho idea di dove questa gigantesca espressione proviene improvvisamente e quale è il suo uso.T T si √|Ψ0⟩Tτ

2T∑τ=0T−1sin⁡π(τ+12)T|τ⟩

2. Dopo la fase di stima della fase, lo stato del nostro sistema è apparentemente :

(∑j=1j=Nβj|uj⟩⊗|λ~j⟩)⊗|0⟩ancilla

Questo sicuramente non può essere scritto come ie

(∑j=1j=Nβj|uj⟩)⊗(∑j=1j=N|λ~j⟩)⊗|0⟩ancilla

|b⟩⊗(∑j=1j=N|λ~j⟩)⊗|0⟩ancilla

Quindi, è chiaro che non è disponibile separatamente nel secondo registro. Quindi non ho idea di come stiano preparando uno stato come in primo luogo! Inoltre, cosa indica quella di ?| Ψ 0 ⟩ C ⊗ | b ⟩ C | Ψ 0 ⟩ C|b⟩|Ψ0⟩C⊗|b⟩C|Ψ0⟩C

3. Da dove compare questa espressione improvvisamente? A che serve simularlo? E che cos'è in ? κ O ( κ / ϵ )∑τ=0T−1|τ⟩⟨τ|C⊗eiAτt0/TκO(κ/ϵ)

Risposte:


5

1. Definizioni

Nomi e simboli utilizzati in questa risposta seguono quelli definiti negli algoritmi dei sistemi lineari quantistici: un primer (Dervovic, Herbster, Mountney, Severini, Usher & Wossnig, 2018) . Di seguito è riportato un richiamo.

1.1 Nomi dei registri

I nomi dei registri sono definiti nella Figura 5. degli algoritmi dei sistemi lineari quantistici: un primer (Dervovic, Herbster, Mountney, Severini, Usher & Wossnig, 2018) (riprodotto di seguito):

  • S (1 qubit) è il registro ancilla utilizzato per verificare se l'output è valido o meno.
  • nC ( qubit) è il registro di clock, cioè il registro utilizzato per stimare gli autovalori dell'hamiltoniano con la stima della fase quantistica (QPE).n
  • m A x = b x S | 1 ⟩I ( qubit) è il registro che memorizza il lato destro dell'equazione . Memorizza , il risultato dell'equazione, quando viene misurato come alla fine dell'algoritmo.mAx=bxS|1⟩

Algoritmo HHL

2. Informazioni su :|Ψ0⟩

  1. Che cosa è esattamente ?|Ψ0⟩

    C|Ψ0⟩ è una possibile stato iniziale del registro orologio .C

  2. Cosa significano e ?τTτ

    T | Ψ 0 ⟩ T | Ψ 0 ⟩ T 2 n CT sta per un grande numero intero positivo. Questo dovrebbe essere il più grande possibile perché l'espressione di minimizza asintoticamente un dato errore per cresce all'infinito. Nell'espressione di , sarà , il numero di stati possibili per l'orologio quantum .T|Ψ0⟩T|Ψ0⟩T2nC

    τ è solo l'indice di somma

  3. Perché un'espressione così gigantesca per ?|Ψ0⟩

    Vedi il post di DaftWullie per una spiegazione dettagliata.

    Seguendo le citazioni dell'algoritmo Quantum per i sistemi lineari di equazioni (Harrow, Hassidim & Lloyd, 2009 v3) finiamo con:

    1. La versione precedente dello stesso algoritmo Quantum per sistemi di equazioni lineari (Harrow, Hassidim & Lloyd, 2009 v2) . Gli autori hanno rivisto il documento 2 volte (ci sono 3 versioni del documento originale HHL) e la versione n ° 3 non include tutte le informazioni fornite nelle versioni precedenti. Nel V2 (sezione A.3. A partire da pagina 17), gli autori forniscono un'analisi dettagliata dell'errore con questo stato iniziale speciale.
    2. Orologi quantici ottimali (Buzek, Derka, Massar, 1998) in cui l'espressione di è data come nell'equazione 10. Non ho le conoscenze per comprendere appieno questa parte, ma sembra che questa espressione sia "ottimale" in un certo senso.| Ψ o p t ⟩|Ψ0⟩|Ψopt⟩

3. Preparazione di :|Ψ0⟩

Come detto nella parte precedente, è uno stato iniziale. Non si preparano dopo la procedura di stima della fase. L'ordinamento delle frasi non è davvero ottimale sulla carta. La procedura di stima di fase che usano nel documento è un po 'diversa dall'algoritmo di stima di fase "classico" rappresentato nel circuito quantico collegato nella parte 1, ed è per questo che lo spiegano in dettaglio.| Ψ 0 ⟩|Ψ0⟩|Ψ0⟩

Il loro algoritmo di stima di fase è:

  1. Preparare la Stato nel registro . C|Ψ0⟩C
  2. Applicare l'evoluzione hamiltoniana condizionale ai registri e (che si trovano nello stato ).I | Ψ 0 ⟩ ⊗ | b ⟩CI|Ψ0⟩⊗|b⟩
  3. Applicare la trasformata quantistica di Fourier allo stato risultante.

Infine, la in significa che lo stato è memorizzato nel registro . Questa è una notazione breve e conveniente per tenere traccia dei registri utilizzati.| Ψ 0 ⟩ C | Ψ 0 ⟩ CC|Ψ0⟩C|Ψ0⟩C

4. Simulazione hamiltoniana:

Prima di tutto, è il numero di condizionamento ( pagina di Wikipedia su "numero di condizionamento" ) della matrice .AκA

∑τ=0T−1|τ⟩⟨τ|C⊗eiAτt0/T è la rappresentazione matematica di una porta quantistica.

La prima parte della somma è una parte di controllo. Significa che l'operazione sarà controllata dallo stato del primo registro quantico (il registro come ci dice l'esponente). C|τ⟩⟨τ|CC

La seconda parte è la porta "Simulazione hamiltoniana", cioè una porta quantistica che applicherà la matrice unitaria data da al secondo registro (il registro che si trova nello stato iniziale ).eiAτt0/TI|b⟩

L'intera somma è la rappresentazione matematica dell'operazione U controllata nel circuito quantico di "1. Definizioni", con .U=eiAτt0/T


3

In risposta alla tua prima domanda, qualche tempo fa mi sono scritto alcune note sulla mia comprensione di come ha funzionato. La notazione è probabilmente un po 'diversa (ho provato a metterla di più in linea, ma è facile perdere bit), ma tenta di spiegare quella scelta dello stato . Sembrano esserci anche alcuni fattori di fluttua in alcuni punti.|Ψ0⟩12

Quando studiamo per la prima volta la stima della fase, di solito ci pensiamo rispetto all'uso in alcuni algoritmi particolari, come l'algoritmo di Shor. Questo ha un obiettivo specifico: ottenere la migliore approssimazione -bit sull'autovalore. O lo fai o non lo fai, e la descrizione della stima di fase è specificamente sintonizzata per dare il più alta probabilità di successo possibile.t

In HHL, stiamo provando a produrre un po 'di stato dove , facendo uso della stima di fase. La precisione dell'approssimazione di questo dipenderà in modo molto più critico da una stima accurata degli autovalori vicini a 0 piuttosto che a quelli lontani da 0. Un passo ovvio quindi è tentare di modificare il protocollo di stima di fase in modo che piuttosto piuttosto che usare `bin 'di larghezza fissa per approssimare le fasi di ( e è il numero di qubit nel registro di stima delle fasi), potremmo piuttosto specificare un insieme di per

|ϕ⟩=∑jβjλj|λj⟩,
|b⟩=∑jβj|λj⟩2π/Te−iAtT=2ttϕyy∈{0,1}t fungere da centro di ogni cestino in modo da poter avere una precisione notevolmente maggiore vicino alla fase 0. Più in generale, è possibile specificare una funzione di compromesso per quanto si possa tollerare gli errori in funzione della fase . La natura precisa di questa funzione può quindi essere regolata su una data applicazione e sulla particolare figura di merito che userete per determinare il successo. Nel caso dell'algoritmo di Shor, la nostra figura di merito era semplicemente questo protocollo di binning: avremmo avuto successo se la risposta fosse nel cestino corretto e senza successo al di fuori di esso. Questo non sarà il caso di HHL, il cui successo è più ragionevolmente catturato da una misura continua come la fedeltà. Quindi, per il caso generale, designeremo una funzione di costoϕC(ϕ,ϕ′)che specifica una penalità per le risposte se la fase vera è .ϕ′ϕ

Ricordiamo che il protocollo di stima di fase standard ha funzionato producendo uno stato di input che era la sovrapposizione uniforme di tutti gli stati di base per . Questo stato è stato utilizzato per controllare l'applicazione sequenziale di più porte controllate , che sono seguite da una trasformata inversa di Fourier. Immagina di poter sostituire lo stato di input con qualche altro stato e quindi il resto del protocollo potrebbe lavorare come prima. Per ora, ignoreremo la questione di quanto sia difficile produrre il nuovo stato , poiché stiamo solo cercando di trasmettere il concetto di base. A partire da questo stato, l'uso della controllata|x⟩x∈{0,1}tU

|Ψ0⟩=∑x∈{0,1}tαx|x⟩,
|Ψ0⟩Ugates (indirizzato a un autovettore di di autovalore ), produce lo stato Applicando la trasformata inversa di Fourier si ottiene La probabilità di ottenere una risposta (cioè ) è quindi il valore atteso della funzione di costo, ipotizzando una distribuzione casuale di , è Uϕ
∑x∈{0,1}tαxeiϕx|x⟩.
1T∑x,y∈{0,1}teix(ϕ−2πyM)αx|y⟩.
yϕ′=2πy/T
1T|∑x∈{0,1}teix(ϕ−2πyT)αx|2
ϕ
C¯=12πT∫02πdϕ∑y∈{0,1}t|∑x∈{0,1}teix(ϕ−2πyT)αx|2C(ϕ,2πy/T),
e il nostro compito è selezionare le ampiezze che minimizzano questo per qualsiasi realizzazione specifica di . Se assumiamo la semplificazione che è solo una funzione di , allora possiamo fare un cambiamento di variabile nell'integrazione per dare Come abbiamo notato, è probabile che la misura più utile sia una misura di fedeltà. Considera che abbiamo uno statoαxC(ϕ,ϕ′)C(ϕ,ϕ′)ϕ−ϕ′
C¯=12π∫02πdϕ|∑x∈{0,1}teixϕαx|2C(ϕ),
|+⟩e desideriamo implementare l'unità , ma invece implementiamo . La fedeltà misura il modo in cui questo raggiunge il compito desiderato, quindi prendiamo poiché nel caso ideale , quindi l'errore, che è ciò che vogliamo minimizzare, può essere preso come . Questa sarà sicuramente la funzione corretta per valutare qualsiasiUϕ=|0⟩⟨0|+eiϕ|1⟩⟨1|Uϕ′=|0⟩⟨0|+eiϕ′|1⟩⟨1|
F=|⟨+|Uϕ′†U|+⟩|2=cos2⁡(ϕ−ϕ′2),
C(ϕ−ϕ′)=sin2⁡(ϕ−ϕ′2),
F=11−FUt, ma per il compito più generale di modificare le ampiezze, non solo le fasi, gli effetti delle imprecisioni si propagano attraverso il protocollo in modo meno banale, quindi è difficile dimostrare l'ottimalità, sebbene la funzione fornirà già un certo miglioramento rispetto alla sovrapposizione uniforme degli Stati. Procedendo con questo modulo, abbiamo ora è possibile eseguire l'integrale over , quindi vogliamo ridurre al minimo la funzione Questo può essere brevemente espresso come C(ϕ−ϕ′)
C¯=12π∫02πdϕ|∑x∈{0,1}teixϕαx|2sin2⁡(12ϕ),
ϕ
12∑x,y=0T−1αxαy⋆(δx,y−12δx,y−1−12δx,y+1).
min⟨Ψ0|H|Ψ0⟩
dove La scelta ottimale di è l'autovettore minimo della matrice , e è l'autovalore minimo Fondamentalmente, per le grandi scale , come anziché che avremmo ottenuto dalla scelta di accoppiamento uniforme
H=12∑x,y=0T−1(δx,y−12δx,y−1−12δx,y+1)|x⟩⟨y|.
|Ψ0⟩H ˉ C ˉ C =1
αx=2T+1sin⁡((x+1)πT+1),
C¯T ˉ C 1/T21/Tαx=1/√
C¯=12−12cos⁡(πT+1).
TC¯1/T21/Tαx=1/T. Ciò produce un vantaggio significativo per l'analisi degli errori.

Se vuoi ottenere lo stesso come riportato nel documento HHL, credo che tu debba aggiungere i termini all'Hamiltoniano. Non ho alcuna giustificazione per farlo, tuttavia, ma questo è probabilmente il mio fallimento.- 1|Ψ0⟩−14(|0⟩⟨T−1|+|T−1⟩⟨0|)

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.