Title: Quantum Search Algorithms
1Quantum Search Algorithms
- Introduzione agli algoritmi di ricerca
quantistici
2Perché usare questi algoritmi?
3Formalizziamo il problema
4Cosè un Oracolo?
5- Negli algoritmi quantistici si usa applicare
allOracolo loracle qubit nello stato
- Se x dovesse essere la soluzione
- Di conseguenza lOracolo si comporterà nel
seguente modo
6- Dalla fig 1notiamo che il termine
rimane invariato perciò possiamo ometterlo per
facilitarne la spiegazione, potremo
descrivere lOracolo così
Possiamo dire che lOracolo marchia la soluzione
con un cambiamento di fase.
7Esempio di utilizzo
- Fattorizzazione di m ,dove m è un numero grande
risultato del prodotto di 2 numeri primi p e q
(come nell RSA cryptosystem). - In un computer classico dividiamo tutti i numeri
da 2 a per trovare il più piccolo dei
fattori e ricaviamo il più grande da questo
risultato.
- Un Oracolo potrebbe essere utilizzato per
velocizzare questo processo
8- Si inizia definendo una funzione
- Si costruisce un circuito classico reversibile
(la traduzione di un normale circuito classico - irreversibile)
-
- Successivamente potrà essere tradotto in uno
quantistico -
9- Il punto chiave è che dobbiamo scrivere un
Oracolo che riconosca la soluzione senza
conoscere a priori i fattori primi di m. - Il vantaggio è che possiamo cercare la soluzione
da 2 a con richieste alloracolo
invece che classiche iterazioni .
10La Procedura
- L algoritmo fa uso di un registro a n qubits
- e di altri qubits aggiuntivi usati dallOracolo
- Lalgoritmo inizia nello stato
La trasformata di Hadamard è utilizzata per
portare Il computer nel superposition state
11Grover interation o Grover operator
- Consiste nella continua ripetizione
- dei seguenti passi
- Applico loracolo O
- Applico la trasformata di Hadamard
- Applico un shift di fase condizionato per ogni
stato tranne lo si avrà lo shift di -1 - Applico la trasformata di Hadamard
12Rappresentazione schematica
13(No Transcript)
14Spiegazione Geometrica
- Uniterazione di Grover
corrisponde a una rotazione in uno spazio
bidimensionale coperto da . Per mostrarlo
adotteremo la seguente convenzione
15Spiegazione Geometrica 1
161riflessione
2 riflessione
17Spiegazione Geometrica 2
18Spiegazione Geometrica 3
19Performance
20Performance 1
21Lalgoritmo per M1
22E per MgtN/2 ?
23E per MgtN/2 ? 1
24E per MgtN/2 ? 2
25E per MgtN/2 ? 2
- Se conoscessimo che MgtN/2 possiamo scegliere un
indice a caso tra quelli disponibili e sottoporlo
alloracolo. - Altrimenti possiamo duplicare il numero degli
elementi aggiungendo solo elementi che non sono
soluzioni. Di conseguenza meno di metà degli
elementi saranno soluzioni.
26Esempio dellAlgoritmo
27Esempio dellAlgoritmo 1
28Esempio dellAlgoritmo 2
29Esempio di un algoritmo 3
30Uno sguardo al futuro
- Nonostante l'algoritmo di Grover sia uno
strumento estremamente versatile e potente, in
pratica la ricerca in un database fisico sarÃ
difficilmente una delle sue applicazioni
fondamentali, almeno fino a quando la memoria
classica resterà molto più economica di quella
quantistica. Per queste ragioni, il campo in cui
questo algoritmo da' il meglio di sé è
sicuramente quello della ricerca algoritmica,
nella quale i dati non sono conservati in
memoria, ma sono generati al volo da un
programma pensiamo ad esempio ad un calcolatore
quantistico programmato per giocare a scacchi,
che utilizzi l'algoritmo di Grover per
investigare tutte le possibili mosse a partire da
una determinata configurazione della scacchiera.
31Uno sguardo al futuro 1
- Gilles Brassard dell'Universita' di Montreal ha
recentemente fatto notare, inoltre, un'altra
importantissima applicazione dell'algoritmo di
Grover e' nel campo della crittanalisi, per
attaccare schemi crittografici classici come il
Data Encryption Standard (DES) con un approccio a
forza bruta. Crackare il DES fondamentalmente
richiede una ricerca tra tutte le 256 7 x
1016 possibili chiavi. Un computer classico,
potendo esaminarne ad esempio 1 milione al
secondo, impiegherebbe migliaia di anni a
scoprire quella corretta un computer quantistico
che utilizzi l'algoritmo di Grover, invece, ci
metterebbe meno di 4 minuti.