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|ujAeiAtλ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τ=0T1sinπ(τ+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).| Ψ 0T|Ψ0

Successivamente, applichiamo l'evoluzione condizionale hamiltoniana su , dove . | Ψ 0 C| Bτ=0T1|ττ|CeiAτt0/Tt 0 = O ( κ / ε )|Ψ0C|bt0=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 |Ψ0Tτ

2Tτ=0T1sinπ(τ+12)T|τ

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

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

Questo sicuramente non può essere scritto come ie

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

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

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|Ψ0C|bC|Ψ0C

3. Da dove compare questa espressione improvvisamente? A che serve simularlo? E che cos'è in ? κ O ( κ / ϵ )τ=0T1|ττ|CeiAτ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|Ψ0T|Ψ0T2nC

    τ è 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|Ψ0C
  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|Ψ0C|Ψ0C

4. Simulazione hamiltoniana:

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

τ=0T1|ττ|CeiAτ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.|Ψ012

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|λj2π/TeiAtT=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|xx{0,1}tU

|Ψ0=x{0,1}tαx|x,
|Ψ0Ugates (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.
1Tx,y{0,1}teix(ϕ2πyM)αx|y.
yϕ=2πy/T
1T|x{0,1}teix(ϕ2πyT)αx|2
ϕ
C¯=12πT02π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ϕ=|00|+eiϕ|11|Uϕ=|00|+eiϕ|11|
F=|+|UϕU|+|2=cos2(ϕϕ2),
C(ϕϕ)=sin2(ϕϕ2),
F=11FUt, 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ϕ),
ϕ
12x,y=0T1αxαy(δx,y12δx,y112δ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=12x,y=0T1(δx,y12δx,y112δx,y+1)|xy|.
|Ψ0H ˉ C ˉ C =1
αx=2T+1sin((x+1)πT+1),
C¯T ˉ C 1/T21/Tαx=1/
C¯=1212cos(π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|Ψ014(|0T1|+|T10|)

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.