Tutto su costruzione e ristrutturazione

Calcoli quantistici. Informatica quantistica contro classica: perché abbiamo bisogno di così tanti numeri?

A causa del boom generale della blockchain e di tutti i tipi di big data, un altro argomento promettente è caduto dalle prime pagine delle notizie tecnologiche: l’informatica quantistica. E, tra l'altro, sono in grado di rivoluzionare diverse aree IT contemporaneamente, a partire dalla famigerata blockchain per finire con la sicurezza delle informazioni. Nei prossimi due articoli, Sberbank e Sberbank Technologies ti spiegheranno perché l'informatica quantistica è interessante e cosa ne stanno facendo adesso.

Calcoli classici: AND, OR, NOT

Per comprendere l’informatica quantistica, dovresti prima rispolverare l’informatica classica. Qui l'unità di informazione elaborata è un po'. Ogni bit può trovarsi solo in uno dei due stati possibili: 0 o 1. Un registro di N bit può contenere una delle 2 N possibili combinazioni di stati ed è rappresentato come una sequenza di essi.

Per elaborare e trasformare le informazioni vengono utilizzate operazioni bit a bit originate dall'algebra booleana. Le operazioni di base sono NOT a un bit e AND e OR a due bit. Le operazioni sui bit sono descritte tramite tabelle di verità. Mostrano la corrispondenza degli argomenti di input con il valore risultante.

Un algoritmo di calcolo classico è un insieme di operazioni bit sequenziali. È più conveniente riprodurlo graficamente, sotto forma di diagramma degli elementi funzionali (SFE), dove ogni operazione ha la propria designazione. Ecco un esempio di SFE per verificare l'equivalenza di due bit.

Informatica quantistica. Base fisica

Ora passiamo ad un nuovo argomento. Informatica quantisticaè un'alternativa agli algoritmi classici basati sui processi della fisica quantistica. Afferma che senza interazione con altre particelle (cioè fino al momento della misurazione), l'elettrone non ha coordinate univoche nell'orbita dell'atomo, ma si trova contemporaneamente in tutti i punti dell'orbita. La regione in cui si trova l’elettrone è chiamata nuvola elettronica. Nel famoso esperimento della doppia fenditura, un elettrone passa attraverso entrambe le fenditure contemporaneamente, interferendo con se stesso. Solo durante la misurazione questa incertezza crolla e le coordinate elettroniche diventano univoche.

La natura probabilistica delle misurazioni inerente all'informatica quantistica è alla base di molti algoritmi, ad esempio la ricerca in un database non strutturato. Algoritmi di questo tipo aumentano passo dopo passo l'ampiezza del risultato corretto, consentendo di ottenerlo in uscita con la massima probabilità.

Qubit

Nell'informatica quantistica Proprietà fisiche gli oggetti quantistici sono implementati nei cosiddetti qubit (q-bit). Un bit classico può trovarsi solo in uno stato: 0 o 1. Prima della misurazione, un qubit può trovarsi in entrambi gli stati contemporaneamente, quindi di solito è indicato dall'espressione a|0⟩ + b|1⟩, dove A e B sono complessi numeri che soddisfano la condizione |A | 2+|B| 2 = 1. La misurazione di un qubit “fa collassare” istantaneamente il suo stato in uno di quelli di base – 0 o 1. In questo caso, la “nuvola” collassa in un punto, lo stato originale viene distrutto e tutte le informazioni su di essa vanno irrimediabilmente perse.

Un'applicazione di questa proprietà è il gatto di Schrödinger come vero generatore di numeri casuali. Il qubit viene introdotto in uno stato in cui il risultato della misurazione può essere 1 o 0 con uguale probabilità. Questa condizione è descritta come segue:

Calcolo quantistico e classico. Primo round

Cominciamo dalle basi. Esiste un insieme di dati iniziali per i calcoli, rappresentati in formato binario da vettori di lunghezza N.

Nei calcoli classici, solo una delle 2 n opzioni di dati viene caricata nella memoria del computer e per questa opzione viene calcolato il valore della funzione. Di conseguenza, solo uno su 2 n possibili set di dati.

Tutte le 2n combinazioni di dati sorgente sono rappresentate simultaneamente nella memoria di un computer quantistico. Le trasformazioni vengono applicate a tutte queste combinazioni contemporaneamente. Di conseguenza, in un'operazione calcoliamo la funzione per tutti 2 n possibili varianti del set di dati (la misurazione alla fine fornirà comunque solo una soluzione, ma ne parleremo più avanti).

Sia il calcolo classico che quello quantistico utilizzano trasformazioni logiche - cancelli. Nel calcolo classico, i valori di input e output vengono memorizzati in bit diversi, il che significa che nelle porte il numero di input può differire dal numero di output:

Consideriamo un problema reale. Dobbiamo determinare se due bit sono equivalenti.

Se durante i calcoli classici ne otteniamo uno in uscita, allora sono equivalenti, altrimenti no:

Ora immaginiamo questo problema utilizzando il calcolo quantistico. In essi, tutte le porte di trasformazione hanno lo stesso numero di uscite come ingressi. Ciò è dovuto al fatto che il risultato della trasformazione non è un nuovo valore, ma un cambiamento nello stato di quelli attuali.

Nell'esempio confrontiamo i valori del primo e del secondo qubit. Il risultato sarà nel qubit zero: il qubit flag. Questo algoritmo è applicabile solo agli stati base: 0 o 1. Questo è l'ordine delle trasformazioni quantistiche.

  1. Influenziamo il flag del qubit con la porta “Not”, impostandola su 1.
  2. Usiamo due volte la porta “Controlled Not” a due qubit. Questa porta inverte il valore del qubit flag solo se il secondo qubit coinvolto nella trasformazione è nello stato 1.
  3. Misuriamo il qubit zero. Se il risultato è 1, allora sia il primo che il secondo qubit sono entrambi nello stato 1 (il qubit flag ha cambiato il suo valore due volte) o nello stato 0 (il qubit flag è rimasto nello stato 1). Altrimenti, i qubit si trovano in stati diversi.

Livello successivo. Porte di Pauli quantistiche a qubit singolo

Proviamo a confrontare l'informatica classica e quella quantistica in problemi più seri. Per questo abbiamo bisogno di una conoscenza un po’ più teorica.

Nell'informatica quantistica, le informazioni elaborate sono codificate in bit quantistici, chiamati qubit. Nel caso più semplice, un qubit, come un bit classico, può trovarsi in uno dei due stati base: |0⟩ (notazione breve per il vettore 1|0⟩ + 0|1⟩) e |1⟩ (per il vettore 0 |0⟩ + 1 |1⟩). Un registro quantistico è un prodotto tensoriale di vettori qubit. Nel caso più semplice, quando ciascun qubit si trova in uno degli stati fondamentali, il registro quantistico è equivalente a quello classico. Un registro di due qubit nello stato |0> può essere scritto come segue:

(1|0⟩ + 0|1⟩)*(1|0⟩ + 0|1⟩) = 1|00⟩ + 0|01⟩ + 0|10⟩ + 0|11⟩ = |00⟩.

Per elaborare e trasformare le informazioni negli algoritmi quantistici vengono utilizzate le cosiddette porte quantistiche. Sono rappresentati sotto forma di matrice. Per ottenere il risultato dell'applicazione della porta, dobbiamo moltiplicare il vettore che caratterizza il qubit per la matrice della porta. La prima coordinata del vettore è il moltiplicatore prima di |0⟩, la seconda coordinata è il moltiplicatore prima di |1⟩. Le matrici delle principali porte a singolo qubit si presentano così:

Ecco un esempio di utilizzo della porta Not:

X * |0⟩ = X * (1|0⟩ + 0|1⟩) = 0|0⟩ + 1|1⟩ = |1⟩

I fattori davanti agli stati base sono chiamati ampiezze e sono numeri complessi. Il modulo di un numero complesso è uguale alla radice della somma dei quadrati della parte reale e immaginaria. Il quadrato della grandezza dell'ampiezza davanti allo stato base è uguale alla probabilità di ottenere questo stato base quando si misura un qubit, quindi la somma dei quadrati della grandezza delle ampiezze è sempre uguale a 1. Potremmo usare matrici arbitrarie per trasformazioni su qubit, ma poiché il vettore norma (lunghezza) deve essere sempre uguale a 1 (la somma delle probabilità di tutti i risultati è sempre uguale a 1), la nostra trasformazione deve preservare la norma del vettore . Ciò significa che la trasformazione deve essere unitaria e la matrice corrispondente deve essere unitaria. Ricordiamo che la trasformazione unitaria è invertibile e UU † =I.

Per lavorare più chiaramente con i qubit, questi sono rappresentati come vettori sulla sfera di Bloch. In questa interpretazione, le porte a qubit singolo rappresentano la rotazione del vettore qubit attorno a uno degli assi. Ad esempio, la porta Not(X) ruota il vettore qubit di Pi rispetto all'asse X. Pertanto, lo stato |0>, rappresentato da un vettore che punta verso l'alto, passa allo stato |1> che punta verso il basso. Lo stato del qubit sulla sfera di Bloch è determinato dalla formula cos(θ/2)|0⟩+e iϕ sin(θ/2)|1⟩

Porte quantistiche a due qubit

Per costruire algoritmi, non ci bastano solo le porte a qubit singolo. Sono necessarie porte che eseguano trasformazioni in base a determinate condizioni. Il principale strumento di questo tipo è il gate a due qubit CNOT. Questa porta viene applicata a due qubit e inverte il secondo qubit solo se il primo qubit è nello stato |1⟩. La matrice della porta CNOT si presenta così:

Ecco un esempio di applicazione:

CNOT *|10⟩ = CNOT * (0|00⟩ + 0|01⟩ + 1|10⟩ + 0|11⟩) = 0|00⟩ + 0|01⟩ + 1|11⟩ + 0|10⟩ = |11⟩

Usare una porta CNOT equivale ad eseguire una classica operazione XOR e scrivere il risultato sul secondo qubit. Infatti, se guardiamo la tavola di verità degli operatori XOR e CNOT, vedremo la corrispondenza:

XOR
CNOT
0
0
0
00
00
0
1
1
01
01
1
0
1
10
11
1
1
0
11
10

La porta CNOT ha una proprietà interessante: dopo la sua applicazione, i qubit si intrecciano o si districano, a seconda dello stato iniziale. Ciò verrà mostrato nel prossimo articolo, nella sezione sul parallelismo quantistico.

Costruzione dell'algoritmo: implementazione classica e quantistica

Con un arsenale completo di porte quantistiche, possiamo iniziare a sviluppare algoritmi quantistici. In una rappresentazione grafica, i qubit sono rappresentati da linee rette - "stringhe" su cui sono sovrapposte le porte. Le porte Pauli a qubit singolo sono designate da quadrati ordinari, all'interno dei quali è raffigurato l'asse di rotazione. Il cancello CNOT sembra un po' più complicato:

Esempio di utilizzo del cancello CNOT:

Una delle azioni più importanti dell'algoritmo è misurare il risultato ottenuto. La misurazione è solitamente indicata da una scala ad arco con una freccia e una designazione relativa all'asse su cui viene effettuata la misurazione.

Quindi, proviamo a costruire un algoritmo classico e quantistico che aggiunga 3 all'argomento.

Sommare i numeri ordinari in una colonna implica eseguire due azioni su ciascuna cifra: la somma delle cifre della cifra stessa e la somma del risultato con un trasferimento dall'operazione precedente, se tale trasferimento è avvenuto.

Nella rappresentazione binaria dei numeri, l'operazione di somma consisterà nelle stesse azioni. Ecco il codice in Python:

Arg = #imposta l'argomento result = #inizializza il risultato carry1 = arg & 0x1 #aggiungi con 0b11, in modo che il riporto dal bit basso appaia se l'argomento ha bit basso = 1 result = arg ^ 0x1 #aggiungi i bit bassi riporto2 = riporto1 | arg #aggiungi con 0b11, quindi il riporto dal bit alto apparirà se l'argomento ha il bit alto = 1 o c'è stato un riporto dal bit basso risultato = arg ^ 0x1 #aggiungi i bit alti risultato ^= riporto1 #applica riporto dal bit basso risultato ^= carry2 #applica riporto dal bit più significativo print(risultato)
Ora proviamo a sviluppare un programma simile per un computer quantistico:

In questo schema, i primi due qubit sono l'argomento, i due successivi sono i trasferimenti e i restanti 3 sono il risultato. Ecco come funziona l'algoritmo.

  1. Il primo passo per superare la barriera è impostare l'argomento nello stesso stato del caso classico: 0b11.
  2. Utilizzando l'operatore CNOT calcoliamo il valore del primo riporto: il risultato dell'operazione arg & 1 è uguale a uno solo quando arg è uguale a 1, in tal caso invertiamo il secondo qubit.
  3. Le successive 2 porte implementano l'aggiunta dei bit meno significativi: trasferiamo il qubit 4 nello stato |1⟩ e vi scriviamo il risultato XOR.
  4. Il rettangolo grande rappresenta la porta CCNOT, un'estensione della porta CNOT. Questa porta ha due qubit di controllo e il terzo è invertito solo se i primi due sono nello stato |1. La combinazione di 2 porte CNOT e una porta CCNOT ci dà il risultato della classica operazione carry2 = carry1 | arg. Le prime 2 porte portano a uno se una di esse è 1, e la porta CCNOT gestisce il caso quando sono entrambe uguali a uno.
  5. Aggiungiamo i qubit più alti e i qubit di trasferimento.

Conclusioni provvisorie

Eseguendo entrambi gli esempi, otteniamo lo stesso risultato. Su un computer quantistico, ciò richiederà più tempo perché è necessario eseguire un’ulteriore compilazione nel codice di assemblaggio quantistico e inviarlo al cloud per l’esecuzione. L'uso dell'informatica quantistica avrebbe senso se la velocità di esecuzione delle operazioni elementari - le porte - fosse molte volte inferiore rispetto al modello classico.

Misurazioni effettuate da esperti mostrano che l'esecuzione di un gate richiede circa 1 nanosecondo. Quindi gli algoritmi per un computer quantistico non dovrebbero copiare quelli classici, ma sfruttare al massimo le proprietà uniche della meccanica quantistica. Nel prossimo articolo esamineremo una delle principali proprietà di questo tipo, il parallelismo quantistico, e parleremo dell'ottimizzazione quantistica in generale. Successivamente identificheremo le aree più adatte per il calcolo quantistico e descriveremo le loro applicazioni.

Basato sui materiali

Di tanto in tanto vediamo una raffica di notizie sull'informatica quantistica. Questo argomento sta attirando molta attenzione, con un'azienda che afferma di avere l'algoritmo di crittografia di cui presto avrai bisogno poiché i computer quantistici renderanno inutili gli attuali algoritmi di crittografia.

Per una persona curiosa, tali affermazioni sollevano domande. Che cos'è l'informatica quantistica (Figura 1)? È vero? Se sì, come funziona? E come si collega questo alla crittografia? Poi sorgono domande più personali. L’informatica quantistica potrebbe cambiare il modo in cui progetto? Dovrei studiare questo materiale?

Anche nei rendering degli artisti, gli elementi del calcolo quantistico sono diversi da qualsiasi cosa nel mondo dell’hardware digitale.

Figura 1 – Visualizzazione degli elementi del calcolo quantistico

Si scopre che queste non sono domande molto semplici da studiare. La letteratura pertinente rientra principalmente in uno dei due generi. Il primo è destinato a un pubblico generale e tratta la meccanica quantistica come un inferno: oscura, forse pericolosa e completamente incomprensibile. Dopo aver letto tale letteratura, è abbastanza difficile trarre conclusioni.

Il secondo genere è completamente diverso, ma ugualmente "utile", scritto da esperti per impressionare altri esperti. Questo genere è caratterizzato dall'uso di termini come macchina di Turing, nome di Richard Feynman, spazio di Hilbert e trasformata di Hadamard, tutto quanto sopra e circa altre 75 parole, seguite da un groviglio di equazioni con terminologia sconosciuta e inspiegabile. Naturalmente ricorderete tutti bene cosa significa |0>!

Tre universi paralleli

Uno dei motivi per cui questo argomento è così complesso è che l’informatica quantistica abbraccia tre discipline con terminologia e interessi molto diversi. Tutto è iniziato con i fisici teorici. Nel 1980, il fisico Paul Benioff ( Paolo Benioff) dell'Argonne National Laboratory ha descritto come alcuni effetti quantomeccanici potrebbero essere utilizzati per implementare una macchina di Turing. Due anni dopo, anche il famoso fisico Richard Feynman sollevò la questione di un computer che utilizzasse il comportamento quantistico.

Ma l’idea è stata ripresa da un gruppo completamente diverso: informatici e matematici. Prendendo dalla fisica le idee di base del bit quantistico (qubit) e delle trasformazioni unitarie reversibili (che chiamavano porte quantistiche o quantili), gli scienziati informatici hanno studiato quali calcoli potrebbero essere eseguiti se esistessero qubit ideali e porte quantistiche. Hanno trovato casi in cui tali presunti computer potrebbero essere molto più veloci dei computer digitali convenzionali.

Questo risultato ha spinto i fisici sperimentali, un terzo gruppo, a iniziare gli sforzi per creare dispositivi fisici che potessero avvicinarsi ai qubit ideali e alle porte quantistiche. Si è trattato di studi lunghi e ad alta intensità di risorse che non hanno ancora dimostrato che un computer quantistico realmente funzionante sia fisicamente possibile. Ma questa possibilità è estremamente incoraggiante.

Alcuni chiarimenti

Allora, qual è questo computer immaginario che ci interessa? Chiariamo innanzitutto alcuni malintesi. Un computer quantistico non è un normale computer che simula fenomeni di meccanica quantistica. Né si tratta di un normale computer digitale, costruito con alcuni transistor (dalla fine della Legge di Moore) così piccoli da immagazzinare o scambiare quanti individuali di energia.

I computer quantistici, invece, sono macchine basate su un comportamento unico descritto dalla meccanica quantistica, completamente diverso dal comportamento dei sistemi classici. Una di queste differenze è la capacità di una particella o di un gruppo di particelle in qualche modo di trovarsi solo in due stati quantistici fondamentali discreti - chiamiamoli 0 e 1. Faremo qui senza parentesi divertenti (notazioni adottate nella teoria quantistica - aggiunte da il traduttore) Esempi di questo tipo possono essere lo spin elettronico, la polarizzazione del fotone o la carica del punto quantico.

In secondo luogo, il calcolo quantistico dipende dalla proprietà di sovrapposizione, ovvero la capacità controintuitiva di una particella di trovarsi in una combinazione degli stati base 0 e 1 contemporaneamente, finché non viene effettuata una misurazione. Una volta misurato tale stato, diventa 0 o 1 e tutte le altre informazioni scompaiono. La meccanica quantistica descrive correttamente uno stato combinato come la somma di due stati fondamentali, ciascuno dei quali è moltiplicato per un fattore complesso. La grandezza totale di questi coefficienti è sempre 1. Questo stato può essere rappresentato come un vettore unitario che inizia dall'origine e termina da qualche parte su una sfera chiamata sfera di Bloch, mostrata nella Figura 2. Il punto chiave ecco che il quadrato (modulo - aggiunto dal traduttore) del coefficiente complesso per lo stato base 0 rappresenta la probabilità che a seguito della misura il qubit si trovi nello stato base 0, analogamente per lo stato base 1. E quando effettui una misurazione, otterrai sempre o esattamente lo stato 0, o esattamente lo stato 1.


Figura 2 – Sfera di Bloch – uno dei modi per visualizzare la sovrapposizione quantistica in un qubit

Questa (proprietà di sovrapposizione - aggiunta dal traduttore) è importante perché consente al qubit di trovarsi in entrambi gli stati 0 e 1 contemporaneamente. Pertanto, un registro composto da n qubit può “contenere” contemporaneamente tutti i possibili numeri binari lunghi n bit. Ciò consente a un computer quantistico di eseguire una singola operazione non solo su un intero a n bit, ma su tutti i possibili numeri interi a n bit contemporaneamente: un parallelismo molto significativo all’aumentare di n.

In terzo luogo, il calcolo quantistico dipende dalla capacità di una porta quantistica di modificare questi coefficienti, e quindi la probabilità di misurare qualsiasi dato numero, in modo prevedibile. Se inizi con uno stato in cui tutti i coefficienti in tutti i qubit sono uguali e poi misuri tutti i qubit in un registro, è altrettanto probabile che troverai qualsiasi stringa di bit compresa tra una stringa di tutti zeri e una stringa di tutti uno, compreso. Ma eseguendo questo stato iniziale attraverso una sequenza di porte quantistiche scelta con cura, un computer quantistico può modificare questi coefficienti in modo che lo stato che è più probabile misurare come output sia il risultato di qualche calcolo, ad esempio è molto probabile che tu misurare i bit di un numero che è un quadrato perfetto.

Computer su carta

Ma cosa c’entra tutto questo con l’informatica reale? Per rispondere a questa domanda dobbiamo spostare la nostra attenzione dai fisici teorici agli informatici e ai matematici. Per ottenere risultati pratici, dobbiamo essere in grado di mappare il registro dei qubit in una specifica sovrapposizione di stati. Abbiamo bisogno di porte quantistiche, possibilmente cavi e qualche tipo di dispositivo di output.

Tutto questo è facile per gli informatici: possono semplicemente presumere che queste idee siano già state implementate nella vita reale. Tuttavia, dovranno fare delle concessioni alla meccanica quantistica. Per evitare di infrangere le leggi della fisica quantistica, gli informatici devono richiedere che le porte quantistiche siano reversibili: è possibile inserire il risultato in output e ottenere i valori di input corretti in input. E insistono sul fatto che le porte quantistiche devono essere trasformazioni unitarie. Secondo l'algebra delle matrici, ciò significa che quando si inserisce uno stato qubit attraverso una porta quantistica, lo stato risultante sarà 0 o 1 quando misurato e la somma delle probabilità dei quadrati (moduli - aggiunti dal traduttore) di questi coefficienti rimarranno pari unità.

Si noti che queste porte quantistiche, anche in teoria, sono molto diverse dalle porte logiche ordinarie. Ad esempio, la maggior parte delle funzioni booleane non sono invertibili. Non c'è modo di emettere l'input da una porta NAND a meno che l'uscita non sia 0. E, naturalmente, le porte logiche funzionano solo con uno e zero (stati 1 e 0), mentre le porte quantistiche funzionano ruotando un vettore all'interno di una sfera di Bloch. In effetti, non c'è nulla in comune tra loro tranne il nome.

Gli informatici hanno scoperto che un insieme molto piccolo di porte quantistiche è sufficiente per emulare una macchina di Turing: solo un insieme di porte quantistiche a ingresso singolo e una porta quantistica a due ingressi. L’esempio più comunemente utilizzato di porta quantistica a due ingressi è il “NOT controllato” (CNOT). Questa funzione reversibile inverte lo stato vettoriale di un qubit o lo lascia invariato, a seconda dello stato del secondo qubit. È più simile a un'analogia XOR quantistica.

Possibili benefici

Non abbiamo ancora risposto alla domanda su come tutto questo possa essere utilizzato. La risposta è che se colleghi insieme un numero sufficiente di porte quantistiche in modo adeguato e se puoi preparare qubit di input che rappresentano tutti i numeri possibili nel dominio dei dati di input, allora all'uscita della matrice di porte quantistiche puoi, in teoria, misurare la bit che rappresentano i valori di alcune funzioni utili.

Facciamo un esempio. Nel 1994, il matematico Peter Shor, dei Bell Labs, sviluppò un algoritmo per fattorizzare numeri molto grandi utilizzando routine quantistiche. Questa fattorizzazione è un problema vitale nella matematica applicata perché non esiste una soluzione analitica: l'unico modo è provare ed sbagliare, e puoi solo rendere l'algoritmo più veloce scegliendo i numeri di prova appropriati con maggiore abilità. Di conseguenza, quando si rende il numero di input molto grande, la quantità di tentativi ed errori diventa enorme. Non è un caso che questa sia la base di algoritmi di crittografia come RSA. I codici RSA e quelli a curva ellittica sono difficili da decifrare, soprattutto perché è molto difficile fattorizzare numeri enormi.

L'algoritmo di Shor combinava alcuni calcoli tradizionali con due funzioni quantistiche che accelerano direttamente l'algoritmo nella parte di prova ed errore, essenzialmente provando tutti i numeri possibili allo stesso tempo. Una dimostrazione dell'algoritmo è fornita nella Figura 3. Una di queste funzioni quantistiche esegue l'esponenziazione modulare e l'altro esegue una versione quantistica della trasformata veloce di Fourier (FFT). Per ragioni che solo un matematico potrebbe amare, se dovessimo introdurre un insieme di n qubit preparati in modo tale che insieme rappresentino tutti i possibili numeri binari fino alla lunghezza n, allora nelle porte quantistiche i diversi stati in una sovrapposizione si annullano a vicenda - come l'interferenza di due raggi luminosi coerenti - e ci rimane una certa struttura di stati nel registro di uscita.


Figura 3 – L'algoritmo di Shor dipende da routine quantistiche per l'elevamento a potenza modulare e operazioni FFT. (immagine per gentile concessione di Tyson Williams)

Questa procedura non produce un fattore primo: è solo un passaggio intermedio che consente di calcolare un possibile fattore primo. Questo calcolo viene effettuato misurando i qubit (nota che siamo nel regno della possibilità, ma non della precisione, di misurare lo stato più probabile di ciascun qubit) e quindi eseguendo numerosi calcoli di routine su un normale processore (CPU) per ottenere certo che il risultato è corretto.

Tutto ciò può sembrare irrimediabilmente complicato e impossibile. Ma la capacità dell’elevamento a potenza quantistica e della FFT quantistica di lavorare simultaneamente con tutte le possibili potenze di 2 per trovare il fattore primo più grande rende l’algoritmo di Shor più veloce dei calcoli convenzionali per grandi numeri, anche quando si utilizzano routine quantistiche teoriche piuttosto lente.

L'algoritmo di Shor è un brillante esempio di calcolo quantistico perché è diverso dal calcolo convenzionale e potenzialmente estremamente importante. Ma lui non è solo. Il National Institute of Standards and Technology (NIST) degli Stati Uniti mantiene una vasta libreria di algoritmi di calcolo quantistico nel suo Quantum Algorithms Zoo, all'indirizzo math.nist.gov/quantum/zoo/.

Questi algoritmi sono solo esercizi di matematica? È troppo presto per dirlo con certezza. Ma in pratica, i ricercatori hanno effettivamente creato calcolatori quantistici da laboratorio con diversi qubit funzionanti. Queste macchine hanno scomposto con successo il numero 15 (fatto per la prima volta presso IBM nel 2001), producendo prevedibilmente 3 e 5, e l’attuale record mondiale è 21 (fatto da un team multi-istituto nel 2012). Quindi per numeri piccoli l’idea funziona. L’idoneità di questo approccio per grandi numeri potrà essere testata in futuro solo su macchine con più qubit. E questo porta la questione a un livello pratico.

Percorso verso la realizzazione

Per creare dispositivi funzionali di calcolo quantistico, è necessario passare attraverso una serie di fasi di implementazione. Dobbiamo costruire qubit funzionanti: non solo cinque, ma migliaia. Dobbiamo organizzare una struttura di porte quantistiche e l'equivalente di fili, a meno che non riusciamo a far sì che le porte agiscano direttamente sullo stato nel registro quantistico di input. Sono tutti problemi complessi e i tempi per la loro soluzione sono imprevedibili.

Purtroppo i problemi sono legati non tanto alla novità dei problemi, ma alle leggi della meccanica quantistica e della fisica classica. Forse il più importante e meno familiare di questi è chiamato decoerenza. Il ruolo di un qubit è quello di mantenere un oggetto fisico, come uno ione, un pacchetto di fotoni o un elettrone, in posizione in modo da poterlo influenzare e, infine, misurare una quantità quantizzata come la carica o lo spin. Affinché questa quantità si comporti in modo quantistico anziché classico, dobbiamo essere in grado di restringere il suo stato a una sovrapposizione di due stati base puri, che abbiamo chiamato 0 e 1.

Ma la natura dei sistemi quantistici è tale da collegarli alle cose che li circondano, aumentando notevolmente il numero di possibili stati sottostanti. I fisici chiamano questa confusione degli stati puri decoerenza. Un'analogia potrebbe essere un raggio laser coerente in una guida di luce, disperso da disomogeneità nel materiale e imbrattato dalla sovrapposizione di due modi in una luce completamente incoerente. L’obiettivo della creazione di un qubit fisico è prevenire la decoerenza il più a lungo possibile.

In pratica, ciò significa che anche un singolo qubit è uno strumento di laboratorio complesso, che magari utilizza laser o trasmettitori radio ad alta frequenza, campi elettrici e magnetici controllati con precisione, dimensioni precise, materiali speciali e possibilmente raffreddamento criogenico. Il suo utilizzo è essenzialmente una procedura sperimentale complessa. Nonostante tutti questi sforzi, oggi questo “il più lungo possibile” si misura in decine di microsecondi. Pertanto, hai pochissimo tempo per eseguire calcoli quantistici prima che i tuoi qubit perdano la loro coerenza. Cioè, prima che le informazioni scompaiano.

Oggi, queste limitazioni precludono la possibilità di registri quantistici di grandi dimensioni o di calcoli che richiedono più di pochi microsecondi. Tuttavia, la ricerca è attualmente in corso nel campo della microelettronica per creare array molto più grandi di qubit e porte quantistiche.

Tuttavia, questo lavoro in sé è alquanto sconnesso perché non è ancora certo quale fenomeno fisico utilizzare per memorizzare gli stati quantistici. Esistono progetti di qubit che quantizzano la polarizzazione dei fotoni, la carica degli elettroni intrappolati nei punti quantici, lo spin netto degli ioni superraffreddati in una trappola, la carica in un dispositivo chiamato transmon e molti altri approcci.

Il tipo di qubit scelto determinerà naturalmente l'implementazione della porta quantistica. Ad esempio, è possibile utilizzare l'interazione degli impulsi radio con gli spin interni nelle molecole in una trappola o l'interazione dei divisori di fascio con le modalità fotoniche nelle guide d'onda. Ovviamente, l'essenza della questione risiede nel campo della fisica sperimentale. E, come già accennato, l’implementazione di qubit o porte quantistiche richiede l’uso di un gran numero di apparecchiature diverse, dalla logica digitale ai laser o trasmettitori radio, alle antenne, ai raffreddatori criogenici.

L'implementazione di un qubit dipende anche da come viene misurato lo stato del qubit. Potrebbe essere necessario un fotometro o un bolometro ultrasensibile, un ponte resistivo o qualche altro dispositivo incredibilmente sensibile per misurare i qubit e forzare lo stato di sovrapposizione nello stato fondamentale. E oltre a ciò, questo processo di misurazione dello stato di un qubit introduce un altro problema non familiare all’informatica tradizionale: ottenere la risposta sbagliata.

Dubbi

Esistono due tipi principali di problemi con l’estrazione dello stato fondamentale da un qubit. Innanzitutto, stai misurando una sovrapposizione quantistica, non una quantità classica. Supponendo che il qubit rimanga coerente, otterrai l'uno o l'altro degli stati base, ma non puoi essere sicuro in anticipo quale otterrai: puoi solo essere sicuro che la probabilità di ottenere un particolare stato sarà il quadrato ( modulo – aggiunto dal traduttore) del coefficiente di questo stato in sovrapposizione. Se misuri un qubit esattamente nello stesso stato cento volte, otterrai una distribuzione di zeri e uno che converge ai quadrati dei coefficienti.

Quindi non sai se lo stato di base che hai misurato in qualche prova ha effettivamente la probabilità più alta. Dopo aver letto il registro di output quantistico, misurando i bit e impostandoli tutti ai loro stati base, hai tre opzioni. Potresti dubitare di avere la risposta giusta e andare avanti. Puoi verificare con calcoli tradizionali, come fa l'algoritmo di Shor, per vedere se il numero che stavi contando è effettivamente vero la decisione giusta. Oppure puoi ripetere il calcolo un gran numero di volte, in sequenza o in parallelo, e prendere il risultato che si verifica più frequentemente. Puoi anche organizzare i tuoi calcoli in modo che la risposta sia una distribuzione di probabilità degli stati sottostanti piuttosto che un numero binario specifico. Anche in questo caso è necessaria la ripetizione.

Questo è vero anche per un computer quantistico teoricamente perfetto. Ma l’implementazione vera e propria presenta un ulteriore problema: il buon vecchio rumore classico. Anche se tutto va bene, non c’è decoerenza dei qubit, e il calcolo è progettato per produrre una risposta con una probabilità molto alta, stai comunque osservando i qubit mentre cerchi di misurare quantità fisiche molto, molto piccole. Il rumore è ancora lì. Ancora una volta, l'unica soluzione è rilevare l'errore mediante ulteriori calcoli oppure eseguire i calcoli così tante volte da essere disposti ad accettare come risultato qualsiasi incertezza rimanente. Il concetto di risposta corretta garantita è estraneo all’essenza stessa dell’informatica quantistica.

Se tutto ciò non dipinge un quadro roseo del futuro dell’informatica quantistica, allora è qualcosa da prendere molto sul serio. La ricerca è in corso scelta migliore per implementare i qubit, sebbene la risposta possa dipendere dall'algoritmo. Gli scienziati di microelettronica stanno lavorando per miniaturizzare i componenti quantistici utilizzando nuovi materiali e strutture che consentirebbero la creazione di array molto ampi di dispositivi di calcolo quantistico che potrebbero essere prodotti in serie come i chip dei processori tradizionali. Gli informatici stanno sviluppando prototipi di assemblatori e compilatori in grado di tradurre un algoritmo nella disposizione dei registri quantistici e delle porte quantistiche in una particolare tecnologia.

Ne vale la pena? Ecco un fatto. Shore ha calcolato che un modesto computer ibrido, ovvero quantistico più convenzionale, potrebbe decifrare il potente algoritmo di crittografia RSA più velocemente di quanto un computer convenzionale potrebbe crittografarlo. Risultati simili sono stati trovati per problemi come l'ordinamento e la districazione di altri problemi matematici complessi simili. Quindi, ci sono abbastanza promesse in quest’area per mantenere entusiasti i ricercatori. Ma sarebbe bello vedere tutto questo mentre sei ancora in vita.

Il contenuto del concetto di “parallelismo quantistico” può essere rivelato come segue: “I dati nel processo di calcolo rappresentano l’informazione quantistica, che alla fine del processo viene convertita in informazione classica misurando lo stato finale del registro quantistico. Il guadagno negli algoritmi quantistici si ottiene grazie al fatto che quando si applica un’operazione quantistica, un gran numero di coefficienti di sovrapposizione di stati quantistici, che contengono informazioni classiche in forma virtuale, vengono trasformati simultaneamente”.

L'entanglement quantistico, chiamato anche "sovrapposizione quantistica", di solito significa quanto segue: "Immaginiamo un atomo che potrebbe subire un decadimento radioattivo in un certo periodo di tempo. Oppure potrebbe non farlo. Possiamo aspettarci che questo atomo abbia solo due stati possibili: "decadimento" " e "non decadimento", /.../ ma nella meccanica quantistica un atomo può avere una sorta di stato unificato - "decadimento - non decadimento", cioè né l'uno né l'altro, ma come se fosse nel mezzo. Questo stato si chiama "sovrapposizione".

Le caratteristiche di base dei computer quantistici in teoria consentono loro di superare alcune delle limitazioni incontrate nel funzionamento dei computer classici.

Teoria

Qubit

L'idea dell'informatica quantistica, espressa per la prima volta da Yu. I. Manin e R. Feynman, è che un sistema quantistico di l elementi quantistici a due livelli (qubit) ha 2 l stati linearmente indipendenti, e quindi, per il principio di sovrapposizione quantistica, 2 l Spazio degli stati di Hilbert bidimensionale. Un'operazione nell'informatica quantistica corrisponde a una rotazione in questo spazio. Quindi, un dispositivo di calcolo quantistico di grandi dimensioni l un qubit può eseguirne 2 in parallelo l operazioni.

Supponiamo che ci sia un qubit. In questo caso, dopo la misurazione, nella cosiddetta forma classica, il risultato sarà 0 o 1. In realtà un qubit è un oggetto quantistico e quindi, per il principio di indeterminazione, può essere sia 0 che 1 con un certa probabilità. Se un qubit è 0 (o 1) con una probabilità del 100%, il suo stato è indicato utilizzando il simbolo |0> (o |1>) - nella notazione Dirac. |0> e |1> sono gli stati di base. Nel caso generale, lo stato quantistico di un qubit è compreso tra quelli base e si scrive nella forma , dove | UN|² e | B|² - probabilità di misurazione rispettivamente 0 o 1; ; | UN|² + | B|² = 1. Inoltre, subito dopo la misurazione, il qubit entra nello stato quantistico di base, in modo simile al risultato classico.

C'è un qubit in uno stato quantistico In questo caso, la probabilità di ottenere durante la misurazione In questo caso, durante la misurazione, abbiamo ottenuto 0 con una probabilità del 64%. Quindi il qubit passa a un nuovo stato quantico 1*|0>+0*|1>=|0>, ovvero la prossima volta che misuriamo questo qubit otterremo 0 con una probabilità al cento per cento. Ciò è dovuto al fatto che il vettore degli stati di Dirac non dipende dal tempo, cioè è scomposto in una somma di vettori di stati fondamentali con coefficienti indipendenti dal tempo.

Per spiegare questo facciamo due esempi tratti dalla meccanica quantistica: 1) il fotone è in uno stato di sovrapposizione di due polarizzazioni; la misurazione fa collassare una volta per tutte lo stato del fotone in uno con una certa polarizzazione; 2) un atomo radioattivo ha una certa emivita; una misurazione può rivelare che non è ancora decaduto, ma ciò non significa che non decadrà mai.

Passiamo a un sistema di due qubit. Misurando ciascuno di essi può dare 0 o 1. Pertanto, il sistema ha 4 stati classici: 00, 01, 10 e 11. Gli stati quantistici di base sono simili a loro: |00>, |01>, |10> e |11 >. E infine, lo stato quantistico generale del sistema ha la forma . Ora | UN|² - probabilità di misurare 00, ecc. Nota che | UN|²+| B|²+| C|²+| D|²=1 come probabilità totale.

In generale, i sistemi da l ha 2 qubit l stati classici (00000...(L-zeri),...00001(L-cifre),..., 11111...(L-unità)), ciascuno dei quali può essere misurato con probabilità di 0-100 %.

Pertanto, un'operazione su un gruppo di qubit influisce su tutti i valori che può assumere, a differenza di un bit classico. Ciò garantisce un parallelismo dei calcoli senza precedenti.

Calcolo

Uno schema di calcolo semplificato su un computer quantistico si presenta così: viene preso un sistema di qubit su cui viene registrato lo stato iniziale. Lo stato del sistema o dei suoi sottosistemi viene quindi modificato attraverso operazioni quantistiche di base. Alla fine si misura il valore e questo è il risultato del computer.

Si scopre che per costruire qualsiasi calcolo sono sufficienti due operazioni fondamentali. Il sistema quantistico fornisce un risultato corretto solo con una certa probabilità. Ma aumentando leggermente le operazioni nell'algoritmo, puoi avvicinare il più possibile la probabilità di ottenere il risultato corretto a uno.

Utilizzando operazioni quantistiche di base, è possibile simulare il funzionamento delle normali porte logiche che compongono i comuni computer. Pertanto, qualsiasi problema risolto ora verrà risolto da un computer quantistico, e quasi nello stesso tempo. Quindi, nuovo schema l’informatica non sarà più debole di quella attuale.

Perché un computer quantistico è migliore di uno classico? La maggior parte dei computer moderni funziona secondo lo stesso schema: n bit di memoria memorizzano lo stato e vengono modificati dal processore ad ogni ciclo temporale. Nel caso quantistico, un sistema di n qubit si trova in uno stato che è una sovrapposizione di tutti gli stati base, quindi un cambiamento nel sistema riguarda tutti e 2 n stati fondamentali contemporaneamente. In teoria, il nuovo schema può funzionare molto (in modo esponenziale molte volte) più velocemente di quello classico. In pratica, l'algoritmo di ricerca nel database (quantistico) di Grover mostra un aumento quadratico di potenza rispetto agli algoritmi classici. Finora non esistono in natura.

Algoritmi

È stato dimostrato che l’“accelerazione quantistica” non è possibile per ogni algoritmo.

Teletrasporto quantistico

L'algoritmo di teletrasporto implementa l'esatto trasferimento dello stato di un qubit (o sistema) ad un altro. IN lo schema più semplice Vengono utilizzati 4 qubit: sorgente, ricevitore e due ausiliari. Si noti che come risultato dell'algoritmo, lo stato iniziale della sorgente verrà distrutto: questo è un esempio dell'azione generale principio di impossibilità di clonazione- è impossibile creare una copia esatta di uno stato quantistico senza distruggere l'originale. In effetti, è abbastanza semplice creare stati identici sui qubit. Ad esempio, avendo misurato 3 qubit, trasferiremo ciascuno di essi negli stati base (0 o 1) e su almeno due di essi coincideranno. Impossibile copiare arbitrario stato e il teletrasporto sostituisce questa operazione.

Il teletrasporto consente di trasferire lo stato quantico di un sistema utilizzando i normali canali di comunicazione classici. In questo modo è possibile in particolare ottenere lo stato legato di un sistema costituito da sottosistemi situati a grande distanza.

Applicazioni dei computer quantistici

Specifiche dell'applicazione

Può sembrare che un computer quantistico sia un tipo di computer analogico. Ma questo non è vero: si tratta essenzialmente di un dispositivo digitale, ma di natura analogica.

I principali problemi associati alla creazione e all'uso dei computer quantistici:

  • è necessario garantire un'elevata precisione di misurazione;
  • le influenze esterne possono distruggere il sistema quantistico o introdurre distorsioni in esso.

Applicazioni alla crittografia

Grazie all’enorme velocità di scomposizione in fattori primi, un computer quantistico consentirà di decriptare i messaggi crittografati utilizzando un popolare algoritmo crittografico asimmetrico, aprendo nuove possibilità nel campo della trasmissione dei messaggi. Prototipi di sistemi di questo tipo sono in fase di sviluppo.

Implementazioni

La società canadese D-Wave ha annunciato nel febbraio 2007 la creazione di un campione di computer quantistico composto da 16 qubit (il dispositivo si chiamava Orion). Tuttavia, le informazioni su questo dispositivo non soddisfacevano i severi requisiti di un accurato rapporto scientifico; la notizia non ha ricevuto riconoscimento scientifico. Inoltre, i futuri progetti dell’azienda (la creazione di un computer da 1024 qubit nel prossimo futuro) hanno suscitato scetticismo tra i membri della comunità di esperti.

Nel novembre 2007, la stessa società, D-Wave, ha dimostrato online il funzionamento di un campione di computer da 28 qubit in una conferenza sul supercalcolo. Questa dimostrazione suscitò anche un certo scetticismo.

Nel dicembre 2008, l'azienda ha organizzato il progetto di calcolo distribuito AQUA@home( UN diabatico Q.U. antum UN lgorithms), che testa algoritmi che ottimizzano i calcoli sui computer quantistici superconduttori adiabatici D-Wave.

Guarda anche

Appunti

Letteratura

  • Kilin S.Ya. Quanti e informazione / Progressi in ottica. - 2001. -Vol. 42. - P. 1-90.
  • Kilin S.Ya. Informazioni quantistiche / Progressi nelle scienze fisiche. - 1999. - T. 169. - P. 507-527.
  • Pro e contro dell'informatica quantistica. Ed. Sadovnichy V. A.
  • Computer quantistico e calcolo quantistico. Ed. Sadovnichy V. A.
  • Valiev K. A., Kokin A. A. Computer quantistici: speranze e realtà. Mosca, Izhevsk: Dinamiche regolari e caotiche, 2004. 320 p. ISBN 5-93972-024-2

Collegamenti

  • Computer quantistico e sua base elementare a semiconduttore
  • Kitaev A., Shen A., Vyalyi M. Informatica classica e quantistica
  • QWiki (inglese) e Quantiki (inglese) - Risorse Wiki per la scienza dell'informazione quantistica
  • Linguaggio di programmazione QCL per computer quantistici
  • Corso “Problemi moderni di informatica teorica” (lezioni frontali sull'informatica quantistica: introduzione, codifica super-densa, teletrasporto quantistico, algoritmi di Simon e Shor)
  • InFuture.ru: Il futuro dei computer quantistici è nell'informatica ternaria
  • Valiev K. A. “Computer quantistici e calcolo quantistico” UFN 175 3 (2005)

Fondazione Wikimedia. 2010.

  • Effetto dimensione quantistica
  • Effetti quantidimensionali

Scopri cos'è il termine "informatica quantistica" in altri dizionari:

    Computer quantistici- 3 qubit di un registro quantistico contro 3 bit di uno convenzionale Un computer quantistico è un ipotetico dispositivo di calcolo che, eseguendo algoritmi quantistici, utilizza in modo significativo effetti quantomeccanici nel suo funzionamento, come ... ... Wikipedia

    TEORIE TOPOLOGICHE DEI CAMPI QUANTISTICI- meccanica quantistica o teorie quantistiche dei campi, tutte funzioni di correlazione in cui non dipendono dalla scelta di coordinate e metriche sia nello spazio tempo che in altri spazi coinvolti nella definizione della teoria. Ciò consente di utilizzare... ... Enciclopedia fisica

    Computer quantistico- 3 qubit di un registro quantistico contro 3 bit di un registro convenzionale.Il computer quantistico è un dispositivo informatico che funziona sulla base della meccanica quantistica. Un computer quantistico è fondamentalmente diverso dai computer classici basati su... Wikipedia

MINISTERO DELL'ISTRUZIONE DELLA FEDERAZIONE RUSSA

ISTITUTO EDUCATIVO STATALE

Saggio

Informatica quantistica

introduzione

Capitolo I. Concetti base della meccanica quantistica

Capitolo II. Concetti e principi di base dell'informatica quantistica

Capitolo III. Algoritmo di Grover

Conclusione

Bibliografia

introduzione

Immagina un computer la cui memoria sia esponenzialmente più grande di quanto le sue dimensioni fisiche ti porterebbero ad aspettarti; un computer in grado di gestire simultaneamente un insieme esponenzialmente più grande di dati di input; un computer che esegue calcoli nello spazio di Hilbert, che è confuso per la maggior parte di noi.

Quindi pensi a un computer quantistico.

L'idea di un dispositivo informatico basato sulla meccanica quantistica fu presa in considerazione per la prima volta all'inizio degli anni '70 e all'inizio degli anni '80 da fisici e scienziati informatici come Charles H. Bennett dell'IBM Thomas J. Watson Research Center e Paul A. Benioff dell'Argonne National Laboratory dell'Illinois, David Deutsch dell'Università di Oxford e successivamente Richard P. Feynman del California Institute of Technology (Caltech). L'idea è nata quando gli scienziati si sono interessati ai limiti fondamentali dell'informatica. Si resero conto che se la tecnologia avesse continuato a ridurre gradualmente le dimensioni delle reti di computer racchiuse in chip di silicio, i singoli elementi sarebbero diventati non più di pochi atomi. Poi è sorto un problema, poiché le leggi della fisica quantistica operano a livello atomico, non classico. Ciò sollevò la questione se fosse possibile costruire un computer basato sui principi della fisica quantistica.

Feynman è stato uno dei primi a cercare di rispondere a questa domanda. Nel 1982 ha proposto un modello di un sistema quantistico astratto adatto al calcolo. Ha anche spiegato come un tale sistema potrebbe essere un simulatore della fisica quantistica. In altre parole, i fisici potrebbero condurre esperimenti computazionali su un computer quantistico di questo tipo.

Più tardi, nel 1985, Deutsch si rese conto che l'affermazione di Feynman avrebbe potuto portare alla realizzazione di un computer quantistico di uso generale e pubblicò un lavoro teorico fondamentale che mostrava che qualsiasi processo fisico poteva, in linea di principio, essere simulato su un computer quantistico.

Sfortunatamente, tutto ciò che riuscirono a inventare in quel momento furono alcuni problemi matematici piuttosto inverosimili, finché Shor pubblicò il suo lavoro nel 1994, in cui presentò un algoritmo per risolvere un importante problema della teoria dei numeri su un computer quantistico, vale a dire: scomposizione in fattori primi. Ha mostrato come potrebbe farlo una serie di operazioni matematiche progettate specificamente per un computer quantistico fattorizzare(fattorizzare) numeri enormi in modo incredibilmente rapido, molto più velocemente dei computer convenzionali. Si è trattato di una svolta che ha trasformato l’informatica quantistica da un interesse accademico a un problema di interesse per il mondo intero.


Capitolo IO . Concetti di base della meccanica quantistica

Alla fine del XIX secolo era diffusa tra gli scienziati l’opinione che la fisica fosse una scienza “praticamente completa” e che mancasse ben poco per raggiungere la sua completa “completezza”: spiegare la struttura spettri ottici degli atomi e distribuzione spettrale radiazione termica . Spettri ottici di un atomo sono ottenuti dall'emissione o dall'assorbimento di luce (onde elettromagnetiche) da parte di atomi liberi o debolmente legati; I gas e i vapori monoatomici, in particolare, hanno tali spettri.

Radiazione termicaè un meccanismo per trasferire il calore tra parti spazialmente separate del corpo a causa della radiazione elettromagnetica.

Tuttavia, all’inizio del XX secolo si è capito che non si poteva parlare di “completezza”. Divenne chiaro che per spiegare questi e molti altri fenomeni era necessario rivedere radicalmente i concetti alla base della scienza fisica.

Ad esempio, sulla base della teoria ondulatoria della luce, si è rivelato impossibile dare una spiegazione esaustiva dell'intero insieme dei fenomeni ottici.

Risolvendo il problema della composizione spettrale della radiazione, il fisico tedesco Max Planck nel 1900 suggerì che l'emissione e l'assorbimento della luce da parte della materia avviene in porzioni finite, ovvero quanti. Allo stesso tempo, l'energia fotone - quanto di radiazione elettromagnetica(in senso stretto - luce) è determinato dall'espressione

Dov’è la frequenza della luce emessa (o assorbita), e dove è la costante universale, ora chiamata costante di Planck.

Spesso viene utilizzata la costante di Dirac

Quindi l'energia quantistica è espressa come , dove

Frequenza circolare della radiazione.

Le contraddizioni tra la visione della luce come un flusso di particelle cariche e come onde hanno portato al concetto dualità onda-particella.

Da un lato, il fotone dimostra le proprietà di un'onda elettromagnetica nei fenomeni diffrazione(le onde si piegano attorno a ostacoli paragonabili alla lunghezza d'onda) e interferenza(sovrapposizione di onde con la stessa frequenza e la stessa fase iniziale) su scale paragonabili alla lunghezza d'onda del fotone. Ad esempio, i singoli fotoni che passano attraverso una doppia fenditura creano sullo schermo una figura di interferenza che può essere descritta Le equazioni di Maxwell. Tuttavia, l'esperimento mostra che i fotoni vengono emessi e assorbiti interamente da oggetti le cui dimensioni sono molto inferiori alla lunghezza d'onda del fotone (ad esempio gli atomi) o, in generale, con una certa approssimazione possono essere considerati puntiformi (ad esempio un elettrone), cioè, si comportano come particelle - corpuscoli. Nel macrocosmo che ci circonda, ci sono due modi fondamentali per trasferire energia e quantità di moto tra due punti nello spazio: il movimento diretto della materia da un punto all'altro e il processo ondulatorio di trasferimento di energia senza trasferimento di materia. Tutti i vettori energetici qui sono rigorosamente divisi in corpuscolari e ondulatori. Nel micromondo, invece, tale divisione non esiste. A tutte le particelle, e in particolare ai fotoni, vengono attribuite sia proprietà corpuscolari che ondulatorie. La situazione non è chiara. Questa è una proprietà oggettiva dei modelli quantistici.

La radiazione a frequenza quasi monocromatica emessa da una sorgente luminosa può essere pensata come costituita da "pacchetti di radiazioni" che chiamiamo fotoni. Radiazione monocromatica: avente una diffusione di frequenza molto piccola, idealmente una lunghezza d'onda.

La propagazione dei fotoni nello spazio è correttamente descritta dalle classiche equazioni di Maxwell. In questo caso ogni fotone è considerato classico in un treno onde, definito da due campi vettoriali: l'intensità del campo elettrostatico e l'induzione del campo magnetico. Un treno d'onde è una serie di disturbi intervallati da interruzioni. La radiazione di un singolo atomo non può essere monocromatica, perché la radiazione dura un periodo di tempo finito, presentando periodi di salita e di discesa.

Non è corretto interpretare la somma dei quadrati delle ampiezze come la densità di energia nello spazio in cui si muove il fotone; invece, ogni quantità che dipende quadraticamente dall'ampiezza dell'onda dovrebbe essere interpretata come una quantità proporzionale alla probabilità di qualche processo. Diciamo che non è uguale all'energia fornita dal fotone in questa regione, ma è proporzionale alla probabilità di rilevare un fotone in questa regione.

L'energia trasferita in qualsiasi punto dello spazio da un fotone è sempre pari a . In tal modo dove è la probabilità di trovare un fotone in una data area ed è il numero di fotoni.

Nel 1921 l'esperimento Stern-Gerlach confermò la presenza degli atomi Indietro e il fatto della quantizzazione spaziale della direzione dei loro momenti magnetici (dall'inglese spin - ruotare, girare.). Rotazione- il momento angolare intrinseco delle particelle elementari, che ha natura quantistica e non è associato al movimento della particella nel suo insieme. Quando si è introdotto il concetto di spin, si è ipotizzato che l'elettrone potesse essere considerato come una “cima rotante” e che il suo spin fosse una caratteristica di tale rotazione. Spin è anche il nome dato al momento angolare intrinseco di un nucleo o atomo atomico; in questo caso lo spin è definito come la somma vettoriale (calcolata secondo le regole della somma dei momenti della meccanica quantistica) degli spin delle particelle elementari che compongono il sistema, e dei momenti orbitali di queste particelle, dovuti al loro moto all'interno del sistema sistema.

Lo spin è misurato in unità (costanti di Planck ridotte o costanti di Dirac) ed è uguale a , dove J- un numero positivo intero (compreso lo zero) o semiintero caratteristico di ciascun tipo di particella - numero quantico di spin, che di solito viene chiamato semplicemente spin (uno dei numeri quantici). A questo proposito si parla di spin intero o semiintero di una particella. Tuttavia, i concetti di spin e numero quantico di spin non devono essere confusi. Un numero quantico di spin è un numero quantico che determina il valore di spin di un sistema quantistico (atomo, ione, nucleo atomico, molecola), cioè il suo momento angolare (interno). La proiezione dello spin su qualsiasi direzione fissa z nello spazio può assumere i valori J , J-1, ..., -J. Quindi, una particella con spin J potrebbe essere dentro 2J+1 Stati di spin (at J= 1/2 - in due stati), che equivale alla presenza di un ulteriore grado di libertà interno.

L'elemento chiave della meccanica quantistica è Principio di indeterminazione di Heisenberg, che dice che è impossibile determinare contemporaneamente con precisione la posizione di una particella nello spazio e la sua quantità di moto. Questo principio spiega la quantizzazione della luce, nonché la dipendenza proporzionale dell'energia del fotone dalla sua frequenza.

Il moto di un fotone può essere descritto dal sistema di equazioni di Maxwell, mentre l'equazione del moto di qualsiasi altra particella elementare come un elettrone è descritta dall'equazione di Schrödinger, che è più generale.

Il sistema di equazioni di Maxwell è invariante rispetto alla trasformazione di Lorentz. Trasformazioni di Lorentz nella teoria della relatività speciale vengono chiamate trasformazioni a cui sono sottoposte le coordinate spazio-temporali (x,y,z,t) ogni evento durante la transizione da un sistema di riferimento inerziale ad un altro. In sostanza, queste trasformazioni sono trasformazioni non solo nello spazio, come le trasformazioni di Galileo, ma anche nel tempo.

Capitolo II . Concetti e principi di base dell'informatica quantistica

Sebbene i computer siano diventati più piccoli e molto più veloci di prima nel loro compito, il compito stesso rimane lo stesso: manipolare una sequenza di bit e interpretare quella sequenza come un utile risultato computazionale. Un bit è un'unità fondamentale di informazione, solitamente rappresentata come 0 o 1 nel tuo computer digitale. Ogni bit classico è fisicamente realizzato da un sistema fisico macroscopico, come la magnetizzazione su un disco rigido o la carica su un condensatore. Ad esempio, un testo composto da N caratteri e memorizzati sul disco rigido di un tipico computer, sono descritti da una stringa di 8n zeri e uno. È qui che risiede la differenza fondamentale tra il tuo computer classico e un computer quantistico. Mentre un computer classico obbedisce alle leggi ben comprese della fisica classica, un computer quantistico è un dispositivo che sfrutta i fenomeni della meccanica quantistica (in particolare interferenza quantistica) per implementare un modo completamente nuovo di elaborare le informazioni.

In un computer quantistico, l'unità fondamentale di informazione (chiamata bit quantistico o qubit), non è di natura binaria, ma piuttosto quaternaria. Questa proprietà del qubit nasce come diretta conseguenza della sua sottomissione alle leggi della meccanica quantistica, che sono radicalmente diverse dalle leggi della fisica classica. Un qubit può esistere non solo in uno stato corrispondente a 0 o 1 logico, come un bit classico, ma anche in stati corrispondenti a stati misti o sovrapposizioni questi stati classici. In altre parole, un qubit può esistere come zero, come uno e sia come 0 che come 1. In questo caso, è possibile specificare un determinato coefficiente numerico che rappresenta la probabilità di trovarsi in ciascuno stato.

Le idee sulla possibilità di costruire un computer quantistico risalgono al lavoro di R. Feynman nel 1982-1986. Considerando la questione del calcolo dell'evoluzione dei sistemi quantistici su un computer digitale, Feynman ha scoperto l '"irrisolvibilità" di questo problema: si scopre che le risorse di memoria e la velocità delle macchine classiche non sono sufficienti per risolvere i problemi quantistici. Ad esempio, un sistema di N particelle quantistiche con due stati (spin 1/2 ) Esso ha 2 N stati fondamentali; per descriverlo è necessario specificare (e scrivere nella memoria del computer) 2 N ampiezze di questi stati. Sulla base di questo risultato negativo, Feynman ha suggerito che è probabile che un “computer quantistico” avrà proprietà che gli permetteranno di risolvere problemi quantistici.

I computer “classici” sono costruiti su circuiti a transistor che hanno relazioni non lineari tra le tensioni di ingresso e di uscita. Sono essenzialmente elementi bistabili; ad esempio, quando la tensione di ingresso è bassa ("0 logico"), la tensione di ingresso è alta ("1 logico") e viceversa. Nel mondo quantistico, un circuito a transistor bistabile può essere paragonato a una particella quantistica a due livelli: assegniamo i valori di logico allo stato, stato, - valore booleano. Le transizioni in un circuito a transistor bistabile qui corrisponderanno alle transizioni da un livello all'altro: . Tuttavia, un elemento bistabile quantistico, chiamato qubit, ha una nuova, rispetto a quella classica, proprietà di sovrapposizione di stati: può trovarsi in qualsiasi stato di sovrapposizione, dove sono presenti numeri complessi, . Stati di un sistema quantistico da P le particelle a due livelli hanno in generale la forma di una sovrapposizione 2 N condizione di base . In definitiva, il principio quantistico della sovrapposizione degli stati rende possibile conferire “capacità” fondamentalmente nuove a un computer quantistico.

È stato dimostrato che un computer quantistico può essere costruito da soli due elementi (porte): un elemento da un qubit e un elemento NOT controllato da due qubit (CNOT). Matrice 2x2 l'elemento ha la forma:

(1)

Il gate descrive la rotazione del vettore di stato del qubit dall'asse z all'asse polare specificato dagli angoli . Se sono numeri irrazionali, allora con l'uso ripetuto al vettore di stato può essere dato qualsiasi orientamento predeterminato. Questa è precisamente l’“universalità” di una porta a qubit singolo nella forma (1). In un caso particolare, otteniamo un elemento logico a qubit singolo NOT (NOT): NOT=, NOT=. Quando si implementa fisicamente un elemento, NON è necessario influenzare una particella quantistica (qubit) con un impulso esterno che trasferisce il qubit da uno stato all'altro. La porta NOT controllata viene eseguita influenzando due qubit interagenti: in questo caso, attraverso l'interazione, un qubit controlla l'evoluzione dell'altro. Le transizioni sotto l'influenza di impulsi esterni sono ben note nella spettroscopia di risonanza magnetica pulsata. La valvola NON corrisponde a uno spin flip sotto l'influenza di un impulso (rotazione della magnetizzazione attorno all'asse di un angolo) . Il cancello CNOT viene eseguito su due giri 1/2 con hamiltoniano (controlli di spin). Il CNOT viene eseguito in tre fasi: impulso + precessione libera nel tempo - impulso. Se (il qubit di controllo è nello stato), allora sotto le influenze specificate il qubit controllato effettua transizioni (O ). Se (il qubit di controllo è nello stato), il risultato dell'evoluzione del qubit controllato sarà diverso: (). Pertanto, lo spin si evolve in modo diverso a : ecco lo stato del qubit di controllo.

Quando si considera la questione dell'implementazione di un computer quantistico su determinati sistemi quantistici, vengono innanzitutto esaminate la fattibilità e le proprietà delle porte NOT elementari e NOT controllate.

Per quanto segue è utile introdurre anche la trasformata Hadamard a un qubit:

Nella tecnologia della risonanza magnetica queste porte vengono eseguite da impulsi:

Lo schema di un computer quantistico è mostrato in figura. Prima che il computer inizi a funzionare, tutti i qubit (particelle quantistiche) devono essere portati nello stato, cioè allo stato fondamentale. Questa condizione di per sé non è banale.


Richiede un raffreddamento profondo (a temperature dell'ordine dei millikelvin) o l'uso di metodi di polarizzazione. sistema P I qubit in uno stato possono essere considerati un registro di memoria preparato per registrare i dati di input ed eseguire calcoli. Oltre a questo registro, di solito si presume che esistano registri aggiuntivi (ausiliari) necessari per registrare i risultati intermedi dei calcoli. I dati vengono registrati influenzando ciascun qubit del computer in un modo o nell'altro. Supponiamo, ad esempio, che su ogni qubit del registro venga eseguita una trasformazione di Hadamard:

Di conseguenza, il sistema è entrato in uno stato di sovrapposizione da 2 pag stati base con ampiezza 2 - N /2 . Ogni stato di base è un numero binario da a . Le linee orizzontali nella figura indicano gli assi temporali.

L'esecuzione dell'algoritmo avviene tramite una trasformazione di sovrapposizione unitaria. è una matrice unitaria di dimensione 2 pag. Quando implementata fisicamente attraverso influenze pulsate sui qubit dall'esterno, la matrice deve essere rappresentata come un prodotto vettoriale di matrici di dimensione 2 e . Quest'ultimo può essere eseguito influenzando sequenzialmente singoli qubit o coppie di qubit :

Il numero di fattori in questa espansione determina la durata (e la complessità) dei calcoli. Tutto in (3) viene eseguito utilizzando le operazioni NOT, CNOT, H (o loro variazioni).

È interessante notare che l'operatore lineare unitario agisce simultaneamente su tutti i termini della sovrapposizione

I risultati del calcolo sono scritti nel registro di riserva, che era nello stato prima dell'uso. In un'esecuzione del processo di calcolo otteniamo i valori della funzione desiderata f per tutti i valori dell'argomento X = 0,..., 2 p - 1 . Questo fenomeno è chiamato parallelismo quantistico.

La misurazione del risultato dei calcoli si riduce alla proiezione del vettore di sovrapposizione in (4) sul vettore di uno degli stati fondamentali :

(5)

Qui emerge uno dei punti deboli di un computer quantistico: il numero “cade” durante il processo di misurazione secondo la legge del caso. Trovare per un dato , è necessario eseguire calcoli e misurazioni più volte finché non cade accidentalmente .

Quando si analizza l'evoluzione unitaria di un sistema quantistico che esegue un processo computazionale, si rivela l'importanza dei processi fisici come l'interferenza. Le trasformazioni unitarie avvengono nello spazio dei numeri complessi e l'addizione delle fasi di questi numeri ha la natura dell'interferenza. La produttività delle trasformate di Fourier nei fenomeni di interferenza e spettroscopia è nota. Si è scoperto che gli algoritmi quantistici contengono invariabilmente trasformate di Fourier. La trasformata di Hadamard è la trasformata discreta di Fourier più semplice. Porte di tipo NOT e CNOT possono essere implementate direttamente sull'interferometro di Mach-Zehnder sfruttando il fenomeno dell'interferenza dei fotoni e della rotazione del suo vettore di polarizzazione.

Sono in fase di ricerca diversi modi implementazione fisica dei computer quantistici. Esperimenti modello sull'informatica quantistica sono stati eseguiti su uno spettrometro a risonanza magnetica nucleare pulsata. In questi modelli, due o tre spin (qubit) funzionavano, ad esempio due spin di nuclei 13C e uno spin di un protone in una molecola di tricloroetilene

Tuttavia, in questi esperimenti il ​​computer quantistico era “ensemble”: i segnali in uscita dal computer sono composti da un gran numero di molecole in una soluzione liquida (~ 10 20).

Ad oggi sono state avanzate proposte per implementare computer quantistici su ioni e molecole in trappole nel vuoto, sugli spin nucleari nei liquidi (vedi sopra), sugli spin nucleari di atomi di 31 P nel silicio cristallino, sugli spin degli elettroni nei sistemi quantistici punti creati nel gas elettronico bidimensionale nelle eterostrutture di GaAs, alle giunzioni Josephson. Come vediamo, in linea di principio, un computer quantistico può essere costruito su particelle atomiche nel vuoto, liquide o cristalli. In ogni caso, è necessario superare alcuni ostacoli, ma tra questi ce ne sono molti comuni, determinati dai principi di funzionamento dei qubit in un computer quantistico. Assegniamo il compito di creare un computer quantistico su larga scala contenente, diciamo, 10 3 qubit (anche se a n = 100 un computer quantistico potrebbe essere uno strumento utile).

1. Dobbiamo trovare il modo di “inizializzare” i qubit del computer nello stato. Per i sistemi di rotazione nei cristalli, è ovvio l’uso di temperature ultra-basse e campi magnetici ultra-forti. L'uso della polarizzazione dello spin mediante pompaggio può essere utile quando vengono applicati contemporaneamente raffreddamento e campi magnetici elevati.

Per gli ioni nelle trappole a vuoto, il raffreddamento ultra-basso degli ioni (atomi) viene ottenuto mediante metodi laser. Anche la necessità del freddo e del vuoto ultra spinto è ovvia.

2. È necessario disporre di una tecnologia per l'impatto selettivo degli impulsi su qualsiasi qubit selezionato. Nel campo delle radiofrequenze e della risonanza di spin, ciò significa che ogni spin deve avere una propria frequenza di risonanza (in termini di risoluzione spettroscopica). Le differenze nelle frequenze di risonanza per gli spin nelle molecole sono dovute a spostamenti chimici per gli spin di un isotopo e di un elemento; esistono le necessarie differenze di frequenza per gli spin dei nuclei di vari elementi. Tuttavia, il buon senso impone che è improbabile che queste differenze naturali nelle frequenze di risonanza siano sufficienti con cui lavorare 10 3 gira

Approcci più promettenti sembrano essere quelli in cui la frequenza di risonanza di ciascun qubit può essere controllata esternamente. Nella proposta per un computer quantistico al silicio, il qubit è lo spin nucleare di un atomo di impurità 31 R. La frequenza di risonanza è determinata dalla costante UN Interazione iperfine degli spin nucleari ed elettronici dell'atomo 31 R. Campo elettrico su un nanoelettrodo situato sopra l'atomo 31 P, polarizza l'atomo e cambia la costante UN(rispettivamente, la frequenza di risonanza dello spin nucleare). Pertanto, la presenza di un elettrodo incorpora un qubit in un circuito elettronico e ne sintonizza la frequenza di risonanza.

3. Per eseguire l'operazione CNOT (NOT controllato), è necessaria l'interazione tra i qubit e il modulo . Tale interazione avviene tra gli spin dei nuclei in una molecola se i nuclei sono separati da un legame chimico. In linea di principio è necessario poter eseguire l’operazione su qualsiasi coppia di qubit . Difficilmente è possibile avere un’interazione fisica di qubit della stessa scala di grandezza e secondo il principio “tutti con tutti” nell’ambiente naturale. Esiste un’evidente necessità di trovare un modo per ottimizzare l’ambiente tra i qubit dall’esterno introducendo elettrodi con un potenziale controllato. In questo modo è possibile creare, ad esempio, una sovrapposizione delle funzioni d'onda degli elettroni in punti quantici vicini e l'emergere di un'interazione della forma tra gli spin degli elettroni [. La sovrapposizione delle funzioni d'onda degli elettroni degli atomi vicini di 31 P provoca la comparsa di un'interazione del tipo tra spin nucleari.

Per fornire l'operazione , dove e sono qubit distanti tra i quali non c'è interazione della forma, è necessario applicare nel computer l'operazione di scambio di stati lungo una catena in modo che l'operazione sia assicurata poiché lo stato coincide con lo stato .

4. Durante l’esecuzione di una trasformazione unitaria corrispondente all’algoritmo selezionato, i qubit del computer sono esposti all’influenza dell’ambiente; di conseguenza, l'ampiezza e la fase del vettore di stato del qubit subiscono cambiamenti casuali - decoerenza. Essenzialmente, la decoerenza è il rilassamento di quei gradi di libertà della particella utilizzati nel qubit. Il tempo di decoerenza è uguale al tempo di rilassamento. Nella risonanza magnetica nucleare nei liquidi, i tempi di rilassamento sono 1-10 s. Per ioni in trappole con transizioni ottiche tra i livelli E0 E E1 Il tempo di decoerenza è il tempo dell'emissione spontanea e il tempo delle collisioni con gli atomi residui. È ovvio che la decoerenza rappresenta un serio ostacolo all'informatica quantistica: il processo computazionale avviato acquisisce le caratteristiche della casualità dopo che è trascorso il tempo di decoerenza. Tuttavia, è possibile ottenere un processo di calcolo quantistico stabile per un tempo arbitrariamente lungo m > ma se vengono utilizzati sistematicamente metodi di codifica quantistica e correzione degli errori (fase e ampiezza). È stato dimostrato che con requisiti relativamente bassi per l'esecuzione senza errori di operazioni elementari come NOT e CNOT (probabilità di errore non superiore a 10 -5), i metodi di correzione degli errori quantistici (QEC) garantiscono un funzionamento stabile di un computer quantistico.

È anche possibile sopprimere attivamente il processo di decoerenza se vengono effettuate misurazioni periodiche sul sistema di qubit. La misurazione molto probabilmente troverà la particella nello stato “corretto” e piccoli cambiamenti casuali nel vettore di stato collasseranno durante la misurazione (effetto Zeno quantistico). Tuttavia, è difficile dire ancora quanto utile possa essere una tale tecnica, dal momento che tali misurazioni stesse possono influenzare e interrompere il processo computazionale.

5. Gli stati dei qubit dopo il completamento del processo di calcolo devono essere misurati per determinare il risultato del calcolo. Oggi non esiste una tecnologia avanzata per tali misurazioni. Tuttavia, il percorso verso la ricerca di tale tecnologia è ovvio: è necessario utilizzare metodi di amplificazione nella misurazione quantistica. Ad esempio, lo stato di spin nucleare viene trasferito allo spin dell'elettrone; la funzione d'onda orbitale dipende da quest'ultima; conoscendo la funzione d'onda orbitale, è possibile organizzare il trasferimento di carica (ionizzazione); la presenza o l'assenza di carica su un singolo elettrone può essere rilevata mediante metodi elettrometrici classici. I metodi di microscopia a forza di sonda giocheranno probabilmente un ruolo importante in queste misurazioni.

Ad oggi sono stati scoperti algoritmi quantistici che portano ad un’accelerazione esponenziale dei calcoli rispetto ai calcoli su un computer classico. Questi includono l'algoritmo di Shor per determinare i fattori primi di numeri grandi (a più cifre). Questo problema puramente matematico è strettamente correlato alla vita della società, poiché i moderni codici di crittografia si basano sulla “non computabilità” di tali fattori. Fu questa circostanza a suscitare scalpore quando fu scoperto l'algoritmo di Shor. Per i fisici è importante che la soluzione dei problemi quantistici (risoluzione dell'equazione di Schrödinger per sistemi a molte particelle) sia accelerata in modo esponenziale se viene utilizzato un computer quantistico.

Infine, è molto importante che nel corso della ricerca sui problemi dell'informatica quantistica, i principali problemi della fisica quantistica siano sottoposti a nuova analisi e verifica sperimentale: problemi di località, realtà, complementarità, parametri nascosti, collasso della funzione d'onda.

Le idee dell'informatica quantistica e della comunicazione quantistica sono nate cento anni dopo la nascita delle idee originali della fisica quantistica. La possibilità di costruire computer quantistici e sistemi di comunicazione è stata dimostrata dagli studi teorici e sperimentali completati fino ad oggi. La fisica quantistica è “sufficiente” per la progettazione di computer quantistici basati su varie “basi di elementi”. I computer quantistici, se potranno essere costruiti, saranno la tecnologia del 21° secolo. La loro fabbricazione richiederà la creazione e lo sviluppo di nuove tecnologie a livello nanometrico e atomico. Questo lavoro potrebbe probabilmente richiedere diversi decenni. La costruzione dei computer quantistici sarebbe un’altra conferma del principio dell’inesauribilità della natura: la natura ha i mezzi per svolgere qualsiasi compito correttamente formulato dall’uomo.

In un computer convenzionale, le informazioni vengono codificate come una sequenza di bit e questi bit vengono elaborati in sequenza da porte logiche booleane per produrre il risultato desiderato. Allo stesso modo, un computer quantistico elabora i qubit eseguendo una sequenza di operazioni su porte logiche quantistiche, ciascuna delle quali rappresenta una trasformazione unitaria che agisce su un singolo qubit o una coppia di qubit. Eseguendo queste trasformazioni in sequenza, un computer quantistico può eseguire una complessa trasformazione unitaria sull’intero insieme di qubit preparati in uno stato iniziale. Successivamente è possibile effettuare misurazioni sui qubit, che daranno il risultato finale dei calcoli. Queste somiglianze nel calcolo tra un computer quantistico e un computer classico suggeriscono che, almeno in teoria, un computer classico può replicare esattamente il funzionamento di un computer quantistico. In altre parole, un computer classico può fare tutto ciò che può fare un computer quantistico. Allora perché tutto questo trambusto con un computer quantistico? Il punto è che, sebbene teoricamente un computer classico possa simulare un computer quantistico, è molto inefficiente, così inefficiente che praticamente un computer classico non è in grado di risolvere molti problemi che può fare un computer quantistico. Simulazione di un computer quantistico su un computer classico dal punto di vista computazionale problema complesso, perché le correlazioni tra bit quantistici sono qualitativamente diverse dalle correlazioni tra bit classici, come mostrato per la prima volta da John Bell. Ad esempio, possiamo prendere un sistema di poche centinaia di qubit. Esiste nello spazio di Hilbert con dimensione ~10 90 , ciò richiederebbe, durante la modellazione con un computer classico, l'uso di matrici esponenzialmente grandi (per eseguire calcoli per ogni singolo stato che è anche descritto dalla matrice). Ciò significa che un computer classico impiegherà esponenzialmente più tempo rispetto anche a un computer quantistico primitivo.

Richard Feynman fu tra i primi a riconoscere il potenziale della sovrapposizione quantistica per risolvere tali problemi molto più velocemente. Ad esempio, un sistema di 500 qubit, che è quasi impossibile da modellare classicamente, è una sovrapposizione quantistica di 2 500 stati. Ciascun valore di tale sovrapposizione è classicamente equivalente a un elenco di 500 uno e zeri. Qualsiasi operazione quantistica su un tale sistema, ad esempio un impulso sintonizzato di onde radio che può eseguire un'operazione NOT controllata, ad esempio, sul centesimo e sul centunesimo qubit, influenzerà simultaneamente 2 500 stati. Pertanto, in un battito dell'orologio del computer, l'operazione quantistica non calcola uno stato della macchina, come i computer convenzionali, ma 2 500 afferma immediatamente! Tuttavia, alla fine viene effettuata una misurazione sul sistema di qubit e il sistema collassa in un unico stato quantistico corrispondente a un’unica soluzione al problema, un unico insieme di 500 uno e zero, come dettato dall’assioma di misurazione della meccanica quantistica. Si tratta di un risultato davvero entusiasmante, poiché questa soluzione, trovata mediante un processo collettivo di calcolo quantistico parallelo con origini in sovrapposizione, equivale a eseguire la stessa operazione su un supercomputer classico con ~ 10 150 processori separati (il che, ovviamente, è impossibile)!! I primi ricercatori in questo campo furono ovviamente ispirati da possibilità così gigantesche, e così iniziò presto la caccia a problemi adatti per una tale potenza di calcolo. Peter Shor, ricercatore e informatico presso i Bell Laboratories dell'AT&T nel New Jersey, ha proposto un problema che potrebbe essere risolto su un computer quantistico e utilizzando un algoritmo quantistico. L'algoritmo di Shor utilizza il potere della sovrapposizione quantistica per fattorizzare grandi numeri (dell'ordine di ~10.200 bit o più) in fattori in pochi secondi. Questo problema ha importanti applicazioni pratiche per la crittografia, dove il comune (e migliore) algoritmo di crittografia, noto come RSA, si basa proprio sulla difficoltà di fattorizzare grandi numeri compositi in fattori primi . , che risolve facilmente questo problema, è ovviamente di grande interesse per le numerose organizzazioni governative che utilizzano RSA, che fino ad ora era considerato "inattaccabile", e per chiunque sia interessato alla sicurezza dei propri dati.

La crittografia, tuttavia, è solo una delle possibili applicazioni di un computer quantistico. Shor ha sviluppato tutta una serie di operazioni matematiche che possono essere eseguite esclusivamente su un computer quantistico. Alcune di queste operazioni vengono utilizzate nel suo algoritmo di fattorizzazione. Inoltre, Feynman sosteneva che un computer quantistico potrebbe fungere da dispositivo di simulazione per la fisica quantistica, aprendo potenzialmente la porta a molte scoperte nel campo. Attualmente, la potenza e le capacità di un computer quantistico sono principalmente oggetto di speculazioni teoriche; l’avvento del primo computer quantistico veramente funzionale porterà senza dubbio molte nuove ed entusiasmanti applicazioni pratiche.

Capitolo III . Algoritmo di Grover

Il problema della ricerca è il seguente: esiste un database non ordinato composto da N elementi, di cui solo uno soddisfa le condizioni specificate: questo è l'elemento che deve essere trovato. Se un elemento può essere ispezionato, determinare se soddisfa o meno le condizioni richieste è un processo in un'unica fase. Tuttavia, il database è tale che non esiste alcun ordinamento per facilitare la selezione di un articolo. L'algoritmo classico più efficiente per questo compito consiste nel controllare gli elementi del database uno per uno. Se l'elemento soddisfa le condizioni richieste la ricerca termina; in caso contrario l'elemento viene accantonato per non essere nuovamente controllato. Ovviamente questo algoritmo richiede che venga controllata una media degli elementi prima di trovare quello desiderato.

Quando si implementa questo algoritmo, è possibile utilizzare la stessa attrezzatura del caso classico, ma specificando l'input e l'output nel modulo sovrapposizioni states, puoi trovare un oggetto per O () passaggi della meccanica quantistica invece di DI( N )) passaggi classici. Ogni passo della meccanica quantistica consiste in un'operazione unitaria elementare, che considereremo di seguito.

Per implementare questo algoritmo, abbiamo bisogno delle seguenti tre operazioni elementari. Il primo è la preparazione di uno stato in cui il sistema si trova con uguale probabilità in uno qualsiasi dei suoi N stati fondamentali; la seconda è la trasformata di Hadamard e la terza è la rotazione di fase selettiva degli stati.

Come è noto, l’operazione principale per l’informatica quantistica è l’operazione M, agendo per bit, che è rappresentato dalla seguente matrice:

cioè un bit nello stato 0 si trasforma in una sovrapposizione di due stati: (1/, 1/). Allo stesso modo, un bit nello stato 1 viene trasformato in (1/, -1/,), ovvero il valore di ampiezza per ciascuno stato è 1/, ma la fase nello stato 1 è invertita. La fase non ha analoghi negli algoritmi probabilistici classici. Nasce nella meccanica quantistica, dove l'ampiezza della probabilità è complessa. In un sistema in cui lo Stato è descritto P bit (cioè c'è N = 2 p stati possibili), possiamo effettuare la trasformazione M su ciascun bit in modo indipendente, modificando in sequenza lo stato del sistema. Nel caso in cui la configurazione iniziale fosse una configurazione con P bit nel primo stato, la configurazione risultante avrà ampiezze uguali per ciascuno stato. In questo modo si crea una sovrapposizione con la stessa ampiezza per tutti gli stati.

La terza trasformazione di cui avremo bisogno è ruotare selettivamente la fase dell'ampiezza in determinati stati. La trasformazione qui presentata per un sistema a due Stati è della forma:

Dove J = E - numeri reali arbitrari. Si noti che, a differenza della trasformata di Hadamard e di altre matrici di trasformazione di stato, la probabilità di ciascuno stato rimane la stessa, poiché il quadrato della grandezza assoluta dell'ampiezza in ciascuno stato rimane lo stesso.

Consideriamo il problema in forma astratta.

Lasciamo che il sistema abbia N = 2 p stati, che sono indicati come ,..., . Questi 2 pag gli stati sono rappresentati come stringhe di n bit. Sia presente un unico stato, ad esempio , che soddisfi la condizione C() = 1, mentre per tutti gli altri stati S, CON( ,) = 0 (si assume che per ogni stato S la condizione venga valutata per unità di tempo). Il compito è riconoscere lo Stato

Passiamo all'algoritmo stesso

I passi (1) e (2) sono una sequenza di operazioni unitarie elementari descritte in precedenza. La fase (3) è la misurazione finale effettuata dal sistema esterno.

(1) Portiamo il sistema in uno stato di sovrapposizione:

con ampiezze identiche per ciascuno degli N stati. Questa sovrapposizione può essere ottenuta per gradi.

(2) Ripetiamo la seguente operazione unitaria DI( ) una volta:

UN. Supponiamo che il sistema si trovi in ​​uno stato S:

Quando CON( S ) = 1, ruotare la fase in radianti;

Quando С(S) = 0, lascia il sistema invariato.

B . Applicare la trasformazione della diffusione D che è determinato dalla matrice D come segue: se ;" e . D può essere implementato come esecuzione sequenziale di trasformazioni unitarie: , dove W– Matrice di trasformazione di Hadamard, R – matrice di rotazione delle fasi.

(3) Misurare lo stato risultante. Questo stato sarà lo stato CON( )„ (vale a dire, lo stato desiderato che soddisfa la condizione (C() = 1) con una probabilità almeno non inferiore a 0,5. Si noti che il passaggio (2a) è una rotazione di fase. La sua implementazione deve includere uno stato della procedura di riconoscimento e quindi la determinazione se effettuare o meno la rotazione delle fasi, che deve essere effettuata in modo tale da non lasciare traccia sullo stato del sistema, in modo che si abbia la certezza che i percorsi che conducono allo stesso stato finale siano indistinguibili e possano interferire.Si noti che questa procedura Non include misurazioni classiche.

Questo algoritmo di ricerca quantistica è probabilmente più semplice da implementare rispetto a molti altri algoritmi quantistici noti, poiché le operazioni richieste sono solo la trasformata di Walsh-Hadamard e l'operazione di sfasamento condizionale, ciascuna delle quali è relativamente semplice rispetto alle operazioni utilizzate da gli altri algoritmi quantomeccanici.


Conclusione

Ora computer quantistici e quantistici tecnologie dell'informazione rimanere in uno stato di sviluppo pionieristico. Risolvere le difficoltà che queste tecnologie affrontano attualmente garantirà che i computer quantistici avanzeranno al posto che spetta loro, diventando le macchine informatiche più veloci fisicamente possibili. Ormai, la correzione degli errori ha fatto progressi significativi, avvicinandoci al punto in cui potremo costruire computer sufficientemente robusti da resistere agli effetti della decoerenza. D’altra parte, la creazione di apparecchiature quantistiche è ancora solo un’industria emergente; ma il lavoro svolto finora ci convince che è solo questione di tempo prima di poter costruire macchine sufficientemente grandi da eseguire algoritmi seri come quello di Shor. Pertanto, appariranno sicuramente i computer quantistici. Per lo meno, questi saranno i dispositivi informatici più avanzati e i computer che abbiamo oggi diventeranno obsoleti. L’informatica quantistica ha le sue origini in aree molto specifiche della fisica teorica, ma il suo futuro avrà senza dubbio un enorme impatto sulla vita di tutta l’umanità.


Bibliografia

1. Informatica quantistica: pro e contro. Ed. V.A. Sadovnichigo. – Izhevsk: Casa editrice dell'Università di Udmurt, 1999. – 212 p.

2. Belonuchkin V.E., Zaikin D.A., Tsypenyuk Yu.M., Fondamenti di fisica. Corso di fisica generale: libro di testo. In 2 volumi T. 2. Fisica quantistica e statistica. – M.: FIZMATLIT, 2001. – 504 p.

3. Valiev K.A. “Computer quantistici: possono essere resi “grandi”?”, Advances in Physical Sciences, vol. 169, n. 6, 1999.

4. Valiev K.A. “Scienza dell'informazione quantistica: computer, comunicazioni e crittografia”, BOLLETTINO DELL'ACCADEMIA RUSSA DELLE SCIENZE, volume 70, n° 8, p. 688-695, 2000

5. Maslov. D. “Informatica quantistica e comunicazione: realtà e prospettive”, Computerra, n. 46, 2004.

6. Khalfin L.A. “Effetto Quantum Zeno”, Advances in Physical Sciences, v. 160, n. 10, 1990.

7. Kholevo A. "Scienza dell'informazione quantistica: passato, presente, futuro",

NEL MONDO DELLA SCIENZA, n. 7, 2008.

8. Centro per le tecnologie quantistiche, Università Nazionale di Singapore www.quantumlah.org

Solo cinque anni fa, solo gli specialisti nel campo della fisica quantistica conoscevano i computer quantistici. Tuttavia, dentro l'anno scorso Il numero di pubblicazioni su Internet e in pubblicazioni specializzate dedicate all'informatica quantistica è aumentato in modo esponenziale. Il tema dell’informatica quantistica è diventato popolare e ha generato molte opinioni diverse, che non sempre corrispondono alla realtà.
In questo articolo cercheremo di parlare nel modo più chiaro possibile di cos'è un computer quantistico e in quale fase si trovano gli sviluppi moderni in questo settore.

Capacità limitate dei computer moderni

Si parla spesso di computer quantistici e di calcolo quantistico come un'alternativa alle tecnologie al silicio per la creazione di microprocessori, il che, in generale, non è del tutto vero. In realtà, perché dobbiamo cercare un’alternativa alla moderna tecnologia informatica? Come dimostra l’intera storia dell’industria informatica, la potenza di calcolo dei processori sta aumentando in modo esponenziale. Nessun altro settore si sta sviluppando a un ritmo così rapido. Di norma, quando si parla del tasso di crescita della potenza di calcolo dei processori, si ricorda la cosiddetta legge di Gordon Moore, derivata nell'aprile 1965, cioè appena sei anni dopo l'invenzione del primo circuito integrato (IC) .

Su richiesta della rivista Electronics, Gordon Moore ha scritto un articolo dedicato al 35° anniversario della pubblicazione. Ha fatto una previsione su come si svilupperanno i dispositivi a semiconduttore nei prossimi dieci anni. Dopo aver analizzato il ritmo di sviluppo dei dispositivi a semiconduttore e dei fattori economici negli ultimi sei anni, cioè dal 1959, Gordon Moore suggerì che entro il 1975 il numero di transistor in un circuito integrato sarebbe stato di 65mila.

Secondo le previsioni di Moore, infatti, il numero di transistor in un singolo chip sarebbe aumentato di oltre mille volte in dieci anni. Allo stesso tempo, ciò significava che ogni anno il numero di transistor in un chip doveva raddoppiare.

Successivamente sono state apportate modifiche alla legge di Moore (per correlarla con la realtà), ma il significato non è cambiato: il numero di transistor nei microcircuiti aumenta in modo esponenziale. Naturalmente, è possibile aumentare la densità dei transistor su un chip solo riducendo le dimensioni dei transistor stessi. A questo proposito la domanda rilevante è: fino a che punto è possibile ridurre le dimensioni dei transistor? Già ora le dimensioni dei singoli elementi transistor nei processori sono paragonabili a quelle atomiche; ad esempio, la larghezza dello strato di biossido che separa il dielettrico di gate dal canale di trasferimento della carica è solo di diverse decine di strati atomici. È chiaro che esiste un limite puramente fisico che rende impossibile ridurre ulteriormente le dimensioni dei transistor. Anche supponendo che in futuro avranno una geometria e un'architettura leggermente diverse, è teoricamente impossibile creare un transistor o un elemento simile con una dimensione inferiore a 10 -8 cm (il diametro di un atomo di idrogeno) e un circuito operativo frequenza superiore a 10 15 Hz (la frequenza delle transizioni atomiche). Pertanto, che ci piaccia o no, è inevitabile il giorno in cui la Legge di Moore dovrà essere archiviata (a meno che, ovviamente, non venga corretta ancora una volta).

Le limitate possibilità di aumentare la potenza di calcolo dei processori riducendo le dimensioni dei transistor sono solo uno dei colli di bottiglia dei classici processori al silicio.

Come vedremo più avanti, i computer quantistici non rappresentano in alcun modo un tentativo di risolvere il problema della miniaturizzazione degli elementi base dei processori.

La risoluzione del problema della miniaturizzazione dei transistor, la ricerca di nuovi materiali per creare gli elementi base della microelettronica, la ricerca di nuovi principi fisici per dispositivi con dimensioni caratteristiche paragonabili alla lunghezza d'onda di De Broglie, che ha un valore di circa 20 nm: questi problemi sono all’ordine del giorno da quasi due decenni. Come risultato della loro soluzione, è stata sviluppata la nanotecnologia. Un serio problema affrontato durante la transizione al campo dei dispositivi nanoelettronici è la riduzione della dissipazione di energia durante le operazioni computazionali. L'idea della possibilità di operazioni "logicamente reversibili" che non sono accompagnate da dissipazione di energia fu espressa per la prima volta da R. Landauer nel 1961. Un passo significativo nella risoluzione di questo problema è stato compiuto nel 1982 da Charles Bennett, che ha dimostrato teoricamente che un computer digitale universale può essere costruito su porte logicamente e termodinamicamente reversibili in modo tale che l'energia venga dissipata solo a causa di processi periferici irreversibili di immissione delle informazioni. nella macchina (preparazione dello stato iniziale) e, di conseguenza, in uscita da essa (lettura del risultato). Le tipiche valvole universali reversibili includono le valvole Fredkin e Toffoli.

Un altro problema con i computer classici risiede nell'architettura stessa di von Neumann e nella logica binaria di tutti i processori moderni. Tutti i computer, dalla macchina analitica di Charles Babbage ai moderni supercomputer, si basano sugli stessi principi (architettura von Neumann) sviluppati negli anni '40 del secolo scorso.

Qualsiasi computer a livello software funziona con bit (variabili che assumono il valore 0 o 1). Utilizzando le porte logiche, vengono eseguite operazioni logiche sui bit, che consentono di ottenere un determinato stato finale in uscita. La modifica dello stato delle variabili viene eseguita utilizzando un programma che definisce una sequenza di operazioni, ciascuna delle quali utilizza un piccolo numero di bit.

I processori tradizionali eseguono i programmi in sequenza. Nonostante l'esistenza di sistemi multiprocessore, processori multi-core e varie tecnologie volti ad aumentare il livello di parallelismo, tutti i computer costruiti sulla base dell'architettura von Neumann sono dispositivi con una modalità sequenziale di esecuzione delle istruzioni. Tutti i processori moderni implementano il seguente algoritmo per l'elaborazione di comandi e dati: recupero di comandi e dati dalla memoria ed esecuzione di istruzioni sui dati selezionati. Questo ciclo si ripete molte volte e ad una velocità tremenda.

Tuttavia, l'architettura di von Neumann limita la capacità di aumentare la potenza di calcolo dei PC moderni. Un tipico esempio di attività che va oltre le capacità dei moderni PC è la scomposizione di un numero intero in fattori primi (un fattore primo è un fattore divisibile per se stesso e 1 senza resto).

Se vuoi scomporre un numero in fattori primi X, avendo N caratteri in notazione binaria, il modo più ovvio per risolvere questo problema è provare a dividerlo sequenzialmente in numeri da 2 a. Per fare ciò, dovrai passare attraverso 2 n/2 opzioni. Ad esempio, se stai considerando un numero composto da 100.000 caratteri (in notazione binaria), dovrai utilizzare le opzioni 3x10 15.051. Se assumiamo che per una ricerca sia necessario un ciclo del processore, quindi a una velocità di 3 GHz, la ricerca tra tutti i numeri richiederà un tempo superiore all'età del nostro pianeta. Esiste, tuttavia, un algoritmo intelligente che risolve lo stesso problema in exp( N 1/3) passaggi, ma anche in questo caso nessun supercomputer moderno può far fronte al compito di fattorizzare un numero con un milione di cifre.

Il problema della fattorizzazione di un numero in fattori primi appartiene alla classe dei problemi che si dice non siano risolvibili in tempo polinomiale (problema NP-completo - Tempo polinomiale non deterministico completo). Tali problemi sono inclusi nella classe dei problemi non calcolabili nel senso che non possono essere risolti sui computer classici in un polinomio temporale dipendente dal numero di bit N, che rappresenta l'attività. Se parliamo di fattorizzare un numero in fattori primi, allora all'aumentare del numero di bit, il tempo necessario per risolvere il problema aumenta in modo esponenziale, non polinomiale.

Guardando al futuro, notiamo che il calcolo quantistico è associato alla prospettiva di risolvere problemi NP-completi in tempo polinomiale.

La fisica quantistica

Naturalmente, la fisica quantistica è vagamente correlata a quella che viene chiamata la base elementare dei computer moderni. Tuttavia, quando si parla di computer quantistico, è semplicemente impossibile evitare di menzionare alcuni termini specifici della fisica quantistica. Comprendiamo che non tutti hanno studiato il leggendario terzo volume di "Fisica teorica" ​​di L.D. Landau e E.M. Lifshitz, e per molti concetti come la funzione d'onda e l'equazione di Schrödinger sono qualcosa dell'altro mondo. Per quanto riguarda l'apparato matematico specifico della meccanica quantistica, si tratta di formule solide e parole oscure. Pertanto, cercheremo di aderire a un livello di presentazione generalmente accessibile, evitando, se possibile, l'analisi tensoriale e altre specificità della meccanica quantistica.

Per la stragrande maggioranza delle persone, la meccanica quantistica va oltre la comprensione. Il punto non è tanto nel complesso apparato matematico, ma nel fatto che le leggi della meccanica quantistica sono illogiche e non hanno un'associazione subconscia: sono impossibili da immaginare. Tuttavia, l'analisi dell'illogicità della meccanica quantistica e la nascita paradossale della logica armoniosa da questa illogicità è compito dei filosofi; toccheremo aspetti della meccanica quantistica solo nella misura necessaria per comprendere l'essenza dell'informatica quantistica.

La storia della fisica quantistica inizia il 14 dicembre 1900. Fu in questo giorno che il fisico tedesco e futuro premio Nobel Max Planck riferì in una riunione della Società di fisica di Berlino sulla scoperta fondamentale delle proprietà quantistiche della radiazione termica. Così è apparso in fisica il concetto di quanto di energia e, tra le altre costanti fondamentali, anche la costante di Planck.

La scoperta di Planck e la teoria dell'effetto fotoelettrico di Albert Einstein, apparsa poi nel 1905, nonché la creazione nel 1913 della prima teoria quantistica degli spettri atomici da parte di Niels Bohr stimolarono la creazione e l'ulteriore rapido sviluppo della teoria quantistica e degli studi sperimentali sull'effetto fotoelettrico. fenomeni.

Già nel 1926 Erwin Schrödinger formulò la sua famosa equazione d'onda, ed Enrico Fermi e Paul Dirac ottennero una distribuzione statistica quantistica per il gas di elettroni, tenendo conto del riempimento dei singoli stati quantistici.

Nel 1928, Felix Bloch analizzò il problema quantomeccanico del movimento di un elettrone in un campo periodico esterno di un reticolo cristallino e dimostrò che lo spettro energetico elettronico in un solido cristallino ha una struttura a bande. In effetti, questo fu l'inizio di una nuova direzione nella fisica: la teoria dello stato solido.

L'intero XX secolo è un periodo di intenso sviluppo della fisica quantistica e di tutti quei rami della fisica di cui la teoria quantistica è diventata il capostipite.

L’emergere dell’informatica quantistica

L'idea di utilizzare il calcolo quantistico fu espressa per la prima volta dal matematico sovietico Yu.I. Manin nel 1980 nella sua celebre monografia “Computable and Incomputable”. È vero, l'interesse per il suo lavoro sorse solo due anni dopo, nel 1982, dopo la pubblicazione di un articolo sullo stesso argomento da parte di un fisico teorico americano vincitore del Nobel Richard Feynmann. Notò che alcune operazioni della meccanica quantistica non possono essere trasferite esattamente a un computer classico. Questa osservazione lo portò a credere che tali calcoli potessero essere più efficienti se eseguiti utilizzando operazioni quantistiche.

Consideriamo, ad esempio, il problema della meccanica quantistica di cambiare lo stato di un sistema quantistico costituito da N gira per un certo periodo di tempo. Senza entrare nei dettagli dell'apparato matematico della teoria quantistica, notiamo che lo stato generale del sistema da N gli spin sono descritti da un vettore nello spazio complesso bidimensionale e il cambiamento nel suo stato è descritto da una matrice unitaria di dimensione 2nx2n. Se l'intervallo di tempo considerato è molto breve, allora la matrice è strutturata in modo molto semplice e ciascuno dei suoi elementi è facile da calcolare, conoscendo l'interazione tra gli spin. Se è necessario conoscere il cambiamento nello stato del sistema per un lungo periodo di tempo, è necessario moltiplicare tali matrici e ciò richiede un numero esponenzialmente elevato di operazioni. Ancora una volta ci troviamo di fronte ad un problema PN-completo, irrisolvibile in tempo polinomiale sui computer classici. Al momento non esiste alcun modo per semplificare questo calcolo ed è probabile che la modellazione della meccanica quantistica sia un problema matematico esponenzialmente difficile. Ma se i computer classici non sono in grado di risolvere i problemi quantistici, forse sarebbe opportuno utilizzare il sistema quantistico stesso per questo scopo? E se ciò fosse effettivamente possibile, i sistemi quantistici sarebbero adatti a risolvere altri problemi informatici? Domande simili furono prese in considerazione da Feynman e Manin.

Già nel 1985 David Deutsch propose uno specifico modello matematico di una macchina quantistica.

Tuttavia, fino alla metà degli anni ’90, il campo dell’informatica quantistica si è sviluppato piuttosto lentamente. L’implementazione pratica dei computer quantistici si è rivelata molto difficile. Inoltre, la comunità scientifica era pessimista sul fatto che le operazioni quantistiche potessero accelerare la soluzione di alcuni problemi computazionali. Ciò continuò fino al 1994, quando il matematico americano Peter Shor propose un algoritmo di decomposizione per un computer quantistico N-cifre in fattori primi in un polinomio temporale dipendente da N(algoritmo di fattorizzazione quantistica). L'algoritmo di fattorizzazione quantistica di Shor è diventato uno dei principali fattori che hanno portato allo sviluppo intensivo di metodi di calcolo quantistico e all'emergere di algoritmi che consentono di risolvere alcuni problemi NP.

Naturalmente sorge la domanda: perché, in effetti, l'algoritmo di fattorizzazione quantistica proposto da Shor ha portato a tali conseguenze? Il fatto è che il problema della scomposizione di un numero in fattori primi è direttamente correlato alla crittografia, in particolare ai popolari sistemi di crittografia RSA. Essendo in grado di fattorizzare un numero in fattori primi in tempo polinomiale, un computer quantistico potrebbe teoricamente essere in grado di decrittografare i messaggi codificati utilizzando molti algoritmi crittografici popolari, come RSA. Finora questo algoritmo era considerato relativamente affidabile metodo efficace la fattorizzazione dei numeri in fattori primi è attualmente sconosciuta per un computer classico. Shor ha ideato un algoritmo quantistico che permette di fattorizzare N-numero digitale per N 3 (log N) k passi ( K=cost). Naturalmente, l’implementazione pratica di un simile algoritmo potrebbe avere conseguenze più negative che positive, poiché renderebbe possibile selezionare chiavi per cifrare, falsificare firme elettroniche, ecc. Tuttavia, l’implementazione pratica di un vero computer quantistico è ancora molto lontana, e quindi nei prossimi dieci anni non vi è alcun timore che i codici possano essere decifrati utilizzando computer quantistici.

L'idea dell'informatica quantistica

Quindi dopo breve descrizione storia dell’informatica quantistica, possiamo passare a considerarne l’essenza stessa. L'idea (ma non la sua implementazione) dell'informatica quantistica è piuttosto semplice e interessante. Ma anche per una comprensione superficiale è necessario familiarizzare con alcuni concetti specifici della fisica quantistica.

Prima di considerare i concetti quantistici generalizzati del vettore di stato e del principio di sovrapposizione, consideriamo un semplice esempio di un fotone polarizzato. Un fotone polarizzato è un esempio di un sistema quantistico a due livelli. Lo stato di polarizzazione di un fotone può essere specificato da un vettore di stato che determina la direzione della polarizzazione. La polarizzazione di un fotone può essere diretta verso l'alto o verso il basso, quindi si parla di due stati principali, o fondamentali, che sono indicati come |1 e |0.

Queste notazioni (notazioni reggiseno/gatto) sono state introdotte da Dirac e hanno una definizione strettamente matematica (vettori di stato di base), che determina le regole per lavorare con esse, tuttavia, per non addentrarci nella giungla matematica, non le considereremo sottigliezze in dettaglio.

Ritornando al fotone polarizzato, notiamo che come afferma la base potremmo scegliere non solo orizzontale e verticale, ma anche qualsiasi direzione di polarizzazione reciprocamente ortogonale. Il significato di stati base è che qualsiasi polarizzazione arbitraria può essere espressa come una combinazione lineare di stati base, cioè a|1+b|0. Poiché siamo interessati solo alla direzione della polarizzazione (l'entità della polarizzazione non è importante), il vettore di stato può essere considerato un'unità, ovvero |a| 2+|b| 2 = 1.

Ora generalizziamo l'esempio con la polarizzazione dei fotoni a qualsiasi sistema quantistico a due livelli.

Supponiamo di avere un sistema quantistico arbitrario a due livelli, caratterizzato dagli stati ortogonali di base |1 e |0. Secondo le leggi (postulati) della meccanica quantistica (principio di sovrapposizione), i possibili stati di un sistema quantistico saranno anche sovrapposizioni y = a|1+b|0, dove a e b sono numeri complessi chiamati ampiezze. Si noti che non esiste alcun analogo dello stato di sovrapposizione nella fisica classica.

Uno dei postulati fondamentali della meccanica quantistica afferma che per poter misurare lo stato di un sistema quantistico è necessario distruggerlo. Cioè, qualsiasi processo di misurazione nella fisica quantistica viola lo stato iniziale del sistema e lo trasferisce in un nuovo stato. Non è così facile comprendere questa affermazione, quindi soffermiamoci su di essa più in dettaglio.

In generale, il concetto di misura nella fisica quantistica gioca un ruolo speciale e non dovrebbe essere considerato una misura nel senso classico. Una misurazione di un sistema quantistico avviene ogni volta che entra in interazione con un oggetto “classico”, cioè un oggetto che obbedisce alle leggi della fisica classica. Come risultato di tale interazione, lo stato del sistema quantistico cambia e la natura e l'entità di questo cambiamento dipendono dallo stato del sistema quantistico e quindi possono fungere da sua caratteristica quantitativa.

A questo proposito, un oggetto classico viene solitamente chiamato dispositivo e il suo processo di interazione con un sistema quantistico viene definito misurazione. Va sottolineato che questo non significa affatto il processo di misurazione a cui partecipa l'osservatore. Per misurazione nella fisica quantistica intendiamo qualsiasi processo di interazione tra oggetti classici e quantistici che avviene in aggiunta e indipendentemente da qualsiasi osservatore. La chiarificazione del ruolo della misurazione nella fisica quantistica spetta a Niels Bohr.

Quindi, per misurare un sistema quantistico, è necessario in qualche modo agire su di esso con un oggetto classico, dopodiché il suo stato originale verrà interrotto. Inoltre si può sostenere che come risultato della misurazione il sistema quantistico verrà trasferito in uno dei suoi stati fondamentali. Ad esempio, per misurare un sistema quantistico a due livelli, è necessario almeno un oggetto classico a due livelli, cioè un oggetto classico che può assumere due possibili valori: 0 e 1. Durante il processo di misurazione, lo stato del quanto sistema verrà trasformato in uno dei vettori base, e se l'oggetto classico assume un valore pari a 0, allora l'oggetto quantistico viene trasformato nello stato |0, e se l'oggetto classico assume un valore pari a 1, allora l'oggetto quantistico si trasforma nello stato |1.

Pertanto, sebbene un sistema quantistico a due livelli possa trovarsi in un numero infinito di stati di sovrapposizione, come risultato della misurazione assume solo uno dei due possibili stati base. Modulo di ampiezza al quadrato |a| 2 determina la probabilità di rilevare (misurare) il sistema nello stato di base |1 e il quadrato del modulo di ampiezza |b| 2 - allo stato fondamentale |0.

Torniamo però al nostro esempio con un fotone polarizzato. Per misurare lo stato di un fotone (la sua polarizzazione), abbiamo bisogno di un dispositivo classico con base classica (1,0). Allora lo stato di polarizzazione del fotone a|1+b|0 sarà definito come 1 (polarizzazione orizzontale) con probabilità |a| 2 e come 0 (polarizzazione verticale) con probabilità |b| 2.

Poiché la misurazione di un sistema quantistico lo porta in uno degli stati fondamentali e, quindi, distrugge la sovrapposizione (ad esempio, durante la misurazione si ottiene un valore pari a |1), ciò significa che a seguito della misurazione il sistema quantistico va in un nuovo stato quantico e alla misurazione successiva otteniamo il valore |1 con una probabilità del 100%.

Il vettore di stato di un sistema quantistico a due livelli è anche chiamato funzione d'onda degli stati quantistici y del sistema a due livelli o, nell'interpretazione dell'informatica quantistica, un qubit (bit quantistico, qubit). A differenza di un bit classico, che può assumere solo due valori logici, un qubit è un oggetto quantistico e il numero dei suoi stati determinati dalla sovrapposizione è illimitato. Tuttavia, sottolineiamo ancora una volta che il risultato della misurazione di un qubit ci porta sempre a uno dei due valori possibili.

Consideriamo ora un sistema di due qubit. Misurando ciascuno di essi può dare un valore oggetto classico di 0 o 1. Pertanto, un sistema di due qubit ha quattro stati classici: 00, 01, 10 e 11. Analoghi a loro sono gli stati quantistici di base: |00, |01, |10 e |11. Il corrispondente vettore di stato quantistico è scritto come UN|00+B|01+ C|10+ D|11, dove | UN| 2 - probabilità durante la misurazione di ottenere il valore 00, | B| 2 - probabilità di ottenere il valore 01, ecc.

In generale, se un sistema quantistico è costituito da l qubit, allora ne ha 2 l possibili stati classici, ciascuno dei quali può essere misurato con una certa probabilità. La funzione di stato di un tale sistema quantistico sarà scritta come:

dove | N- Stati quantistici di base (ad esempio, stato |001101 e | CN| 2 - probabilità di trovarsi nello stato di base | N.

Per modificare lo stato di sovrapposizione di un sistema quantistico è necessario implementare un’influenza esterna selettiva su ciascun qubit. Da un punto di vista matematico tale trasformazione è rappresentata da matrici unitarie di dimensione 2 l x2 l. Di conseguenza, si otterrà un nuovo stato di sovrapposizione quantistica.

Struttura di un computer quantistico

La trasformazione che abbiamo considerato dello stato di sovrapposizione di un sistema quantistico costituito da l qubits è essenzialmente un modello di computer quantistico. Consideriamo, ad esempio, un esempio più semplice di implementazione del calcolo quantistico. Supponiamo di avere un sistema di l qubit, ognuno dei quali è idealmente isolato dal mondo esterno. In ogni momento, possiamo scegliere due qubit arbitrari e agire su di essi con una matrice unitaria di dimensione 4x4. La sequenza di tali influenze è una sorta di programma per un computer quantistico.

Per utilizzare un circuito quantistico per il calcolo, è necessario essere in grado di inserire dati di input, eseguire il calcolo e leggere il risultato. Ecco perché schema elettrico qualsiasi computer quantistico (vedi figura) deve includere i seguenti blocchi funzionali: un registro quantistico per l'immissione dei dati, un processore quantistico per la conversione dei dati e un dispositivo per la lettura dei dati.

Un registro quantistico è una raccolta di un certo numero l qubit Prima di inserire informazioni nel computer, tutti i qubit del registro quantistico devono essere portati negli stati base |0. Questa operazione è chiamata preparazione o inizializzazione. Successivamente, alcuni qubit (non tutti) sono soggetti a un'influenza esterna selettiva (ad esempio, utilizzando impulsi di un campo elettromagnetico esterno controllato da un computer classico), che modifica il valore dei qubit, cioè passano dallo stato |0 a stato |1. In questo caso, lo stato dell'intero registro quantistico andrà in una sovrapposizione degli stati fondamentali | N s, cioè lo stato del registro quantistico nell'istante iniziale sarà determinato dalla funzione:

È chiaro che questo stato di sovrapposizione può essere utilizzato per la rappresentazione binaria di un numero N.

In un processore quantistico, i dati in ingresso sono sottoposti ad una sequenza di operazioni logiche quantistiche, che, da un punto di vista matematico, sono descritte da una trasformazione unitaria che agisce sullo stato dell'intero registro. Di conseguenza, dopo un certo numero di cicli del processore quantistico, lo stato quantistico iniziale del sistema diventa una nuova sovrapposizione della forma:

Parlando del processore quantistico, dobbiamo fare una nota importante. Si scopre che per costruire qualsiasi calcolo sono sufficienti solo due operazioni booleane logiche di base. Usando le operazioni quantistiche di base, è possibile imitare il funzionamento delle normali porte logiche di cui sono fatti i computer. Poiché le leggi della fisica quantistica a livello microscopico sono lineari e reversibili, i corrispondenti dispositivi logici quantistici che eseguono operazioni con gli stati quantistici dei singoli qubit (porte quantistiche) risultano essere logicamente e termodinamicamente reversibili. Le porte quantistiche sono simili alle corrispondenti porte classiche reversibili, ma, a differenza di queste, sono in grado di eseguire operazioni unitarie su sovrapposizioni di stati. Si suppone che l'implementazione di operazioni logiche unitarie sui qubit venga eseguita utilizzando appropriate influenze esterne controllate da computer classici.

Struttura schematica di un computer quantistico

Dopo aver implementato le trasformazioni in un computer quantistico, la nuova funzione di sovrapposizione è il risultato dei calcoli in un processore quantistico. Non resta che contare i valori ottenuti, per i quali viene misurato il valore del sistema quantistico. Di conseguenza, si forma una sequenza di zero e uno e, a causa della natura probabilistica delle misurazioni, può essere qualsiasi cosa. Pertanto, un computer quantistico può fornire qualsiasi risposta con una certa probabilità. In questo caso uno schema di calcolo quantistico è considerato corretto se la risposta corretta si ottiene con una probabilità sufficientemente vicina all'unità. Ripetendo i calcoli più volte e scegliendo la risposta che ricorre più spesso, è possibile ridurre la probabilità di errore a un valore arbitrariamente piccolo.

Per capire in che modo i computer classici e quantistici differiscono nel loro funzionamento, ricordiamo cosa immagazzina in memoria un computer classico l bit che cambiano durante ogni ciclo del processore. In un computer quantistico, la memoria (registro di stato) memorizza i valori l qubit, tuttavia, il sistema quantistico è in uno stato che è una sovrapposizione di tutte le basi 2 l stati e un cambiamento nello stato quantistico del sistema prodotto da un processore quantistico influisce su tutti e 2 l stati fondamentali contemporaneamente. Di conseguenza, in un computer quantistico, la potenza di calcolo viene raggiunta attraverso l’implementazione di calcoli paralleli e, teoricamente, un computer quantistico può funzionare in modo esponenzialmente più veloce di un circuito classico.

Si ritiene che per implementare un computer quantistico su vasta scala, superiore in termini di prestazioni a qualsiasi computer classico, indipendentemente dai principi fisici su cui opera, devono essere soddisfatti i seguenti requisiti di base:

  • un sistema fisico che sia un computer quantistico su vasta scala deve contenere un numero sufficientemente grande l>103 qubit chiaramente visibili per eseguire operazioni quantistiche rilevanti;
  • è necessario garantire la massima soppressione degli effetti di distruzione della sovrapposizione di stati quantistici causata dall'interazione del sistema qubit con l'ambiente, per cui l'esecuzione di algoritmi quantistici potrebbe diventare impossibile. Il tempo necessario per la distruzione di una sovrapposizione di stati quantistici (tempo di decoerenza) deve essere almeno 104 volte maggiore del tempo necessario per eseguire operazioni quantistiche di base (tempo di ciclo). Per fare ciò, il sistema qubit deve essere abbastanza liberamente accoppiato al suo ambiente;
  • è necessario garantire una misurazione con affidabilità sufficientemente elevata dello stato del sistema quantistico in uscita. Misurare lo stato quantistico finale è una delle principali sfide dell’informatica quantistica.

Applicazioni pratiche dei computer quantistici

Per applicazione pratica Finora non è stato creato un solo computer quantistico che soddisfi tutte le condizioni di cui sopra. Tuttavia, in molti paesi sviluppati, viene prestata molta attenzione allo sviluppo dei computer quantistici e ogni anno vengono investiti decine di milioni di dollari in tali programmi.

SU questo momento Il più grande computer quantistico è composto da soli sette qubit. Questo è sufficiente per implementare l'algoritmo di Shor e fattorizzare il numero 15 in fattori primi di 3 e 5.

Se parliamo di possibili modelli di computer quantistici, allora, in linea di principio, ce ne sono molti. Il primo computer quantistico creato in pratica era uno spettrometro di risonanza magnetica nucleare pulsata (NMR) ad alta risoluzione, sebbene, ovviamente, non fosse considerato un computer quantistico. Fu solo quando emerse il concetto di computer quantistico che gli scienziati si resero conto che uno spettrometro NMR era una variante di un computer quantistico.

In uno spettrometro NMR, gli spin dei nuclei della molecola in studio formano qubit. Ogni nucleo ha la propria frequenza di risonanza in un dato campo magnetico. Quando un nucleo viene esposto a un impulso alla sua frequenza di risonanza, inizia ad evolversi, mentre i restanti nuclei non subiscono alcun impatto. Per forzare l'evoluzione di un altro nucleo, è necessario prendere una frequenza di risonanza diversa e darle un impulso. Pertanto, l’azione pulsata sui nuclei a una frequenza di risonanza rappresenta un effetto selettivo sui qubit. Inoltre, la molecola ha una connessione diretta tra gli spin, quindi è una preparazione ideale per un computer quantistico, e lo spettrometro stesso è un processore quantistico.

I primi esperimenti sugli spin nucleari di due atomi di idrogeno in molecole di 2,3-dibromotiofene SCH:(CBr) 2:CH e su tre spin nucleari - uno nell'atomo di idrogeno H e due negli isotopi del carbonio 13 C in molecole di tricloroetilene CCl 2:CHCl - sono andati in scena nel 1997 a Oxford (Regno Unito).

Nel caso dell'utilizzo di uno spettrometro NMR, è importante che, per influenzare selettivamente gli spin nucleari di una molecola, sia necessario che differiscano notevolmente nelle frequenze di risonanza. Successivamente, le operazioni quantistiche sono state eseguite in uno spettrometro NMR con il numero di qubit 3, 5, 6 e 7.

Il vantaggio principale di uno spettrometro NMR è che può utilizzare un numero enorme di molecole identiche. Inoltre, ogni molecola (più precisamente, i nuclei degli atomi che la compongono) è un sistema quantistico. Sequenze di impulsi a radiofrequenza, agendo come determinate porte logiche quantistiche, eseguono trasformazioni unitarie degli stati dei corrispondenti spin nucleari simultaneamente per tutte le molecole. Cioè, l’influenza selettiva su un singolo qubit viene sostituita dall’accesso simultaneo ai qubit corrispondenti in tutte le molecole di un grande insieme. Un computer di questo tipo è chiamato computer quantistico bulk-ensemble. Tali computer possono funzionare a temperatura ambiente e il tempo di decoerenza degli stati quantistici degli spin nucleari è di diversi secondi.

Nel campo della NMR dei computer quantistici su liquidi organici ad oggi sono stati compiuti i maggiori progressi. Essi sono dovuti principalmente alla tecnica ben sviluppata della spettroscopia NMR pulsata, che consente di eseguire varie operazioni su sovrapposizioni coerenti di stati di spin nucleare, e alla possibilità di utilizzare a questo scopo spettrometri NMR standard operanti a temperatura ambiente.

La principale limitazione dei computer quantistici NMR è la difficoltà di inizializzare lo stato iniziale nel registro quantistico. Il fatto è che in un grande insieme di molecole lo stato iniziale dei qubit è diverso, il che rende complicato portare il sistema allo stato iniziale.

Un'altra limitazione dei computer quantistici NMR è dovuta al fatto che il segnale misurato all'uscita del sistema diminuisce esponenzialmente all'aumentare del numero di qubit l. Inoltre, il numero di qubit nucleari in una singola molecola con frequenze di risonanza ampiamente variabili è limitato. Ciò porta al fatto che i computer quantistici NMR non possono avere più di dieci qubit. Dovrebbero essere considerati solo come prototipi dei futuri computer quantistici, utili per testare i principi dell’informatica quantistica e testare gli algoritmi quantistici.

Un'altra versione di un computer quantistico si basa sull'uso di trappole ioniche, quando il ruolo dei qubit è il livello energetico degli ioni catturati dalle trappole ioniche, che vengono create nel vuoto da una certa configurazione del campo elettrico in condizioni di raffreddamento del laser a temperature ultra-basse. Il primo prototipo di computer quantistico basato su questo principio fu proposto nel 1995. Il vantaggio di questo approccio è che è relativamente semplice controllare individualmente i singoli qubit. I principali svantaggi dei computer quantistici di questo tipo sono la necessità di creare temperature ultra-basse, garantire la stabilità dello stato degli ioni nella catena e il numero limitato possibile di qubit - non più di 40.

Sono possibili anche altri progetti per computer quantistici, il cui sviluppo è attualmente in corso. Tuttavia, ci vorranno almeno altri dieci anni prima che i veri computer quantistici vengano finalmente creati.