Quantum Computation
di Giuseppe Sottile
19/02/2023


Qubits

Proprio come un bit classico ha uno stato - o 0 o 1 - anche un qubit ha uno stato. Due possibili stati per un qubit sono gli stati |0> e |1>, che, come si potrebbe pensare, corrispondono agli stati 0 e 1 per un bit classico. La differenza tra i bit e i qubit è che un qubit può trovarsi in uno stato diverso da |0> o |1>. È inoltre possibile formare combinazioni lineari di stati, spesso chiamate sovrapposizioni. $$ |\phi\rangle = \alpha|0\rangle + \beta|1\rangle $$ I numeri α e β sono numeri complessi. Lo stato di un qubit è un vettore in uno spazio vettoriale complesso bidimensionale. Gli stati speciali |0> e |1> sono noti come stati di base computazionale e formano una base ortonormale per questo spazio vettoriale.

ISCRIVITI AL CANALE UFFICIALE
YouSciences Academy


Possiamo esaminare un bit per determinare se si trova nello stato 0 o 1. Ad esempio, i computer lo fanno continuamente quando recuperano il contenuto della loro memoria. In modo sorprendente, non possiamo esaminare un qubit per determinare il suo stato quantistico, ovvero i valori di α e β. Invece, la meccanica quantistica ci dice che possiamo acquisire solo informazioni molto più limitate sullo stato quantistico. Quando misuriamo un qubit, otteniamo il risultato 0, con probabilità |α|², o il risultato 1, con probabilità |β|². Naturalmente, |α|² + |β|² = 1, poiché le probabilità devono sommare a uno. Geometricamente, possiamo interpretare questo come la condizione che lo stato del qubit sia normalizzato a lunghezza 1. Quindi, in generale, lo stato di un qubit è un vettore unitario in uno spazio vettoriale complesso bidimensionale.

Un bit classico è come una moneta: o testa o croce. Per le monete imperfette, potrebbero esserci stati intermedi come tenerla in equilibrio su un bordo, ma questi possono essere trascurati nel caso ideale. Al contrario, un qubit può esistere in un continuum di stati tra |0⟩ e |1⟩ - fino a quando non viene osservato. Sottolineiamo ancora una volta che quando si misura un qubit, dà sempre solo "0" o "1" come risultato della misurazione - in modo probabilistico. Ad esempio, un qubit può essere nello stato $$1/√2|0> + 1/√2|1>$$

Quando misurato, dà il risultato 0 con probabilità del 50% (|1/√2|²) e il risultato 1 con la stessa probabilità del 50%. Questo stato è importante in quanto è utilizzato in molte operazioni di quantum computing ed è talvolta indicato come |+>



Sfera di Bloch
Una rappresentazione geometrica utile per pensare ai qubit è la seguente. Dato che |α|2 + |β|2 = 1, possiamo riscrivere l'equazione \( |\phi\rangle = \alpha|0\rangle + \beta|1\rangle \) come la seguente: $$|\psi\rangle = e^{i\gamma}\left( \cos\frac{\theta}{2}|0\rangle + e^{i\varphi}\sin\frac{\theta}{2}|1\rangle \right) $$ dove θ, \( \varphi \) e γ sono numeri reali. il fattore di eiγ non ha effetti osservabili, e per questo motivo possiamo scrivere efficacemente: $$|\psi\rangle = \cos\frac{\theta}{2}|0\rangle + e^{i\varphi}\sin\frac{\theta}{2}|1\rangle $$
Sfera di Bloch

I numeri θ e \( \varphi \) definiscono un punto sulla sfera tridimensionale unitaria. Questa sfera è spesso chiamata sfera di Bloch; fornisce un utile modo di visualizzare lo stato di un singolo qubit - bisogna tenere presente che questa intuizione è limitata perché non è noto alcuna semplice generalizzazione della sfera di Bloch per i qubit multipli.



Porte Logiche Quantistiche

Le modifiche che avvengono ad uno stato quantistico possono essere descritte utilizzando il linguaggio della computazione quantistica. Analogamente al modo in cui un computer classico è costruito da un circuito elettrico contenente fili e porte logiche, un computer quantistico è costruito da un circuito quantistico contenente fili e porte quantistiche elementari per trasportare e manipolare le informazioni quantistiche. In questa sezione descriviamo alcune semplici porte quantistiche e presentiamo diversi esempi di circuiti che illustrano la loro applicazione, compreso un circuito che teletrasporta qubit!

I circuiti dei computer classici consistono di fili e porte logiche. I fili sono utilizzati per trasportare l'informazione nel circuito, mentre le porte logiche eseguono manipolazioni dell'informazione, convertendola da una forma all'altra. Consideriamo, ad esempio, le porte logiche classiche a singolo bit. L'unico membro non banale di questa classe è la porta, il cui funzionamento è definito dalla sua tabella di verità, in cui 0 → 1 e 1 → 0, ovvero gli stati 0 e 1 sono scambiati.

È possibile definire un gate quantistico analogo per i qubit? Immaginiamo di avere un processo che porta lo stato |0⟩ nello stato |1⟩ e viceversa. Tale processo sarebbe ovviamente un buon candidato per un'analogo quantistico del gate. Tuttavia, specificare l'azione del gate sugli stati |0⟩ e |1⟩ non ci dice cosa accade alle sovrapposizioni degli stati |0⟩ e |1⟩, senza ulteriori conoscenze sulle proprietà dei gate quantistici. In realtà, il gate quantistico agisce in modo lineare, cioè prende lo stato α|0⟩ + β|1⟩ e lo trasforma nello stato corrispondente in cui il ruolo di |0⟩ e |1⟩ è stato scambiato, α|1⟩ + β|0⟩. Perché il gate quantistico agisce in modo lineare e non in qualche modo non lineare è una domanda molto interessante, e la risposta non è affatto ovvia. Si scopre che questo comportamento lineare è una proprietà generale della meccanica quantistica, e molto ben motivata empiricamente; inoltre, il comportamento non lineare può portare a apparenti paradossi come i viaggi nel tempo, la comunicazione più veloce della luce e le violazioni delle leggi della termodinamica. C'è un modo conveniente di rappresentare il gate quantistico in forma matriciale, che segue direttamente dalla linearità dei gate quantistici. Supponiamo di definire una matrice X per rappresentare il gate quantistico come segue: $$X \equiv \begin{pmatrix} 0 & 1 \\ 1 & 0 \end{pmatrix}$$

La notazione X per il gate quantistico è usata per ragioni storiche. Se lo stato quantistico α|0⟩ + β|1⟩ è scritto in notazione vettoriale come con la prima entry corrispondente all'ampiezza per lo stato |0⟩ e la seconda entry l'ampiezza per lo stato |1⟩, allora l'uscita corrispondente dal gate quantistico è Si noti che l'azione del gate è quella di prendere lo stato |0⟩ e sostituirlo con lo stato corrispondente alla prima colonna della matrice X. Allo stesso modo, lo stato |1⟩ è sostituito dallo stato corrispondente alla seconda colonna della matrice X. Quindi i gate quantistici su un singolo qubit possono essere descritti da matrici due per due. Ci sono vincoli sulle matrici che possono essere utilizzate come gate quantistici? Si scopre che sì. Ricordiamo che la condizione di normalizzazione richiede |α|² + |β|² = 1 per uno stato quantistico α|0⟩ + β|1⟩. Questo deve essere vero anche per lo stato quantistico |ψ⟩ = α|0⟩ + β|1⟩ dopo che il gate ha agito. Si scopre che la condizione appropriata per la matrice che rappresenta il gate è che la matrice U che descrive il gate su un singolo qubit sia unitaria, cioè U†U = I, dove U† è l'aggiunto di U (ottenuto trasponendo e poi complesso coniugando U), e I è la matrice identità due per due. Ad esempio, per il gate X è facile verificare che X†X = ISi noti che l'azione del gate è quella di prendere lo stato |0⟩ e sostituirlo con lo stato corrispondente alla prima colonna della matrice X. Allo stesso modo, lo stato |1⟩ è sostituito dallo stato corrispondente alla seconda colonna della matrice X. Quindi i gate quantistici su un singolo qubit possono essere descritti da matrici due per due. Ci sono vincoli sulle matrici che possono essere utilizzate come gate quantistici? Si scopre che sì. Ricordiamo che la condizione di normalizzazione richiede |α|² + |β|² = 1 per uno stato quantistico α|0⟩ + β|1⟩. Questo deve essere vero anche per lo stato quantistico |ψ⟩ = α|0⟩ + β|1⟩ dopo che il gate ha agito. Si scopre che la condizione appropriata per la matrice che rappresenta il gate è che la matrice U che descrive il gate su un singolo qubit sia unitaria, cioè U†U = I, dove U† è l'aggiunto di U (ottenuto trasponendo e poi complesso coniugando U), e I è la matrice identità due per due. Ad esempio, per il gate X è facile verificare che X†X = I

Sorprendentemente, questo vincolo di unitarietà è l'unico vincolo sui gate quantistici. Qualsiasi matrice unitaria specifica un gate quantistico valido! L'interessante implicazione è che, a differenza del caso classico, in cui esiste solo un gate per bit singolo non banale, ovvero il gate NOT, esistono molti gate per qubit singolo non banali. Due importanti gate che useremo in seguito sono il gate Z: $$Z \equiv \begin{pmatrix} 1& 0 \\ 0 & -1 \end{pmatrix}$$ che lascia invariato |0⟩, e cambia il segno di |1⟩ in -|1⟩, e il gate di Hadamard: $$H \equiv {1 \over \sqrt 2}\begin{pmatrix} 1 & 1 \\ 1 &-1 \end{pmatrix}$$ Questo gate viene talvolta descritto come un gate "radice quadrata", poiché trasforma un |0⟩ in (|0⟩ + |1⟩)/√2 (prima colonna di H), "a metà strada" tra |0⟩ e |1⟩, e trasforma |1⟩ in (|0⟩ - |1⟩)/√2 (seconda colonna di H), che è anche "a metà strada" tra |0⟩ e |1⟩. Tuttavia, si noti che H2 non è un gate, poiché semplici operazioni algebriche mostrano che H2 = I, e quindi applicare H due volte a uno stato non fa nulla ad esso. Il gate di Hadamard è uno dei gate quantistici più utili, e vale la pena cercare di visualizzare la sua operazione considerando l'immagine della sfera di Bloch. In questa immagine, si scopre che i gate per qubit singolo corrispondono a rotazioni e riflessioni della sfera. L'operazione di Hadamard è solo una rotazione della sfera attorno all'asse yˆ di 90◦, seguita da una rotazione attorno all'asse xˆ di 180◦.

Ci sono infinite matrici unitarie 2x2 e quindi infiniti gate di singolo qubit. Tuttavia, si scopre che le proprietà dell'insieme completo possono essere comprese dalle proprietà di un insieme molto più piccolo. Ad esempio, un gate unitario di singolo qubit arbitrario può essere scomposto come prodotto di rotazioni $$\begin{pmatrix}\cos{\gamma/2} & -\sin{\gamma/2} \\ \sin{\gamma/2} & \cos{\gamma/2}\end{pmatrix}$$ e un gate che capiremo in seguito come una rotazione attorno all'asse z , $$\begin{pmatrix}e^{-i\beta/2} & 0 \\ 0 & e^{i\beta/2}\end{pmatrix}$$ insieme a uno spostamento di fase globale, ovvero un moltiplicatore costante della forma eiα. Queste porte possono essere ulteriormente scomposte: non abbiamo bisogno di essere in grado di eseguire queste porte per valori arbitrari di α, β e γ, ma possiamo costruire approssimazioni arbitrariamente buone a tali porte utilizzando solo determinati valori fissi speciali di α, β e γ. In questo modo è possibile costruire una porta quantistica a singolo qubit arbitraria utilizzando un insieme finito di porte quantistiche. In generale, un calcolo quantistico arbitrario su qualsiasi numero di qubit può essere generato da un insieme finito di porte che viene detto universale per il calcolo quantistico. Per ottenere un tale insieme universale, dobbiamo prima introdurre alcune porte quantistiche che coinvolgono più qubit



Porte Logiche Quantistiche a piu qubit

Il gate logico quantistico multi-qubit prototipico è il gate controllato o gate. Questo gate ha due qubit di input, chiamati rispettivamente qubit di controllo e qubit target. La linea superiore rappresenta il qubit di controllo, mentre quella inferiore rappresenta il qubit target. L'azione del gate può essere descritta come segue. Se il qubit di controllo è impostato a 0, allora il qubit target viene lasciato inalterato. Se il qubit di controllo è impostato a 1, allora il qubit target viene invertito. In equazioni: |00⟩→|00⟩; |01⟩→|01⟩; |10⟩→|11⟩; |11⟩→|10⟩. (1.18) Un altro modo di descrivere il gate controllato è come una generalizzazione del gate classico, poiché l'azione del gate può essere riassunta come |A, B⟩→|A, B ⊕ A⟩, dove ⊕ è l'addizione modulo due, che è esattamente ciò che fa il gate. Ciò significa che il qubit di controllo e il qubit target sono connessi e memorizzati nel qubit target. Un altro modo di descrivere l'azione del gate controllato è quello di dare una rappresentazione matriciale. Si può facilmente verificare che la prima colonna di UCN descrive la trasformazione che avviene su |00⟩, e analogamente per gli altri stati di base computazionale, |01⟩, |10⟩ e |11⟩. Come per il caso di un singolo qubit, il requisito che la probabilità sia conservata è espresso dal fatto che UCN è una matrice unitaria, cioè U† CN UCN = I.


Torna alla home