Come si elabora un qubit – Proviamo il computer quantistico di IBM! – Parte 2

Algebra del qubit, operazioni sui qubit, rappresentazione grafica del qubit

3

Come si elabora un qubit?
IBM ha lanciato il suo programma IBM Quantum Experience!

Noi di Close-up Engineering ci siamo subito iscritti e IBM ci ha gentilmente accettati!
In questo articolo-tutorial composto da 6 parti, vedremo:

Parte 1: Come funziona un computer quantistico Parte 1: Come funziona un computer quantistico Parte 2: L’algebra del qubit e le operazioni base Parte 3: Proviamo il computer quantistico di IBM Parte 4: Sistemi di qubit, gates ed entangled state Parte 5: Potenziamo il computer quantistico di IBM!  Parte 6: Algoritmi Quantistici 

L’Algebra del qubit e le operazioni base

Come abbiamo spiegato nella Parte 1, il qubit base è \(|0\rangle\) e può essere trasformato in altri qubit tramite delle operazioni.
Come abbiamo anche detto, il qubit è rappresentato da un vettore di dimensione due:
$$|0\rangle =\begin{pmatrix}1\\0\end{pmatrix}$$

Se ancora non sapete cosa sia un qubit, beh, potete guardare questo bellissimo video de La Fisica che non ti aspetti, e leggere la prima parte di questa serie di articoli!

Chi già ha studiato algebra lineare, può facilmente dedurre come si elabora un qubit algebricamente:
Matrici 2×2.
In realtà, si utilizzeranno matrici 2×2 unitarie, in modo da mantenere l’amplificazione sulle probabilità e la reversibilità del processo.

Abbiamo dunque:
$$|\psi’\rangle=U|\psi\rangle$$
Dove:
$$U^\dagger U = 1$$
E dove \(|\psi\rangle\) l’abbiamo detto essere un qualsiasi qubit, in stato base o in sovrapposizione.

Ma come si elabora un qubit in computer quantistico? Nel computer quantistico, queste matrici saranno chiamate Gates e compiono operazioni basilari sul qubit.

I pauli operators e operazioni base

Per ora abbiamo spiegato quindi qual è il qubit base e alla domanda “come si elabora un qubit?” abbiamo risposto: Con dei gates.
Vediamo ora i Pauli Operators, cioè i gates base base per elaborare un qubit.

Possiamo notare subito come X sia un classico “NOT” in algebra booleana, e trasformerà un  \(|0\rangle\) in \(|1\rangle\) e viceversa.

Abbiamo poi un phase-flips Z, cioè una matrice che cambia di fase al qubit che moltiplica.

Per finire, abbiamo la combinazione di X e Z in Y, che negherà il nostro qubit e lo cambierà di fase.

Possiamo notare subito come il secondo qubit base \(|1\rangle\) si ottenga dal primo:
$$|1\rangle = Y|0\rangle$$

Rappresentiamo un qubit

Risulta impossibile capire realmente il qubit senza rappresentarlo.
Per farlo ricorriamo alla sfera di Bloch. Per ora vi risulterà arcano il suo funzionamento, ma ci aiuterà a distinguere i vari qubit che creeremo. Successivamente vi verrà spiegato come funziona la rappresentazione. Per ora, basti questo:

Bloch Sphere

Possiamo quindi ridefinire il nostro qubit come:
$$|\psi\rangle = \cos(\theta/2)|0\rangle + e^{i\phi}\sin(\theta/2)|1\rangle$$
Dove \(\theta\) e \(\phi\) sono segnati in figura.
Chiariremo meglio successivamente.

Ecco i qubit che conosciamo:

Qubits

qubit 0: \(|0\rangle\)
qubit 1: \(|1\rangle = X|0\rangle\)
qubit 2: \(Z|0\rangle\)
qubit 3: \(Y|0\rangle\)

Come possiamo vedere i qubit \(|0\rangle\) e \(|1\rangle\) stanno solo nell’asse Z, rispettivamente a +1 e -1.

Quelle che per ora ci sembrano operazioni inutili (Z e Y) acquisiranno significato fra poco, introducendo i Clifford Gates.

Clifford gates

I Clifford Gates sono gli operatori secondari che servono a passare in uno stato di sovrapposizione.
Introduciamo quindi altre 3 matrici:

La prima, nota come Hadamard Gate serve a creare una nuova base detta diagonale, portando il nostro qubit \(|0\rangle\) in uno stato di sovrapposizione, con le due probabilità (di essere \(|0\rangle\) o \(|1\rangle\) ) a \(1/2\) se misurato con la base canonica.
Questo qubit rappresenta quello che nella Parte 1 abbiamo chiamato  \(|+\rangle\).

qubit H

Se lo andiamo a rappresentare, capiamo cosa succede:
Il qubit non sta più sull’asse Z. Abbiamo quindi un qubit che è sia \(|0\rangle\) che \(|1\rangle\) per metà del tempo.

Questo qubit è il risultato di questa operazione:
\(H|0\rangle\)

 

 

 

E cosa succede se neghiamo con X il nostro nuovo qubit?
Come risultato, otteniamo \(|-\rangle\) :

qubit XH
Abbiamo anche qui un qubit che è sia  \(|0\rangle\) che \(|1\rangle\) per metà del tempo, ma differisce da quello precedente.

Questo qubit è dato da questa operazione:
\(XH|0\rangle\)

E possiamo facilmente asserire che i due qubit appena creati sono ortogonali tra loro.

 

 

Abbiamo quindi una nuova base detta diagonale. Se misuriamo i vettori della base diagonale sulla base canonica otteniamo una misurazione al 50% \(|0\rangle\) e al 50% \(|1\rangle\), e viceversa se misuriamo i vettori della base canonica rispetto alla base diagonale.

Nel modello di computer quantistico che ci fornisce IBM, non possiamo scegliere in che base misurare un qubit, ma basta reinvertire gli assi applicando ancora la matrice H per ottenere lo stesso risultato che misurare i qubit nella nuova base diagonale:
qubit HH

 

 

Questo qubit è dato da questa operazione:
\(HH|0\rangle\)

 

 

 

qubit HXH

 

Questo qubit è dato da questa operazione:
\(HXH|0\rangle\)

 

 

 

 

Arriviamo ad una terza base, la base circolare:
$$|\circlearrowright\rangle = \frac{1}{\sqrt{2}}(|0\rangle+i|1\rangle)$$
$$|\circlearrowleft\rangle = \frac{1}{\sqrt{2}}(|0\rangle-i|1\rangle)$$
Questa base si ricava applicando la matrice S dopo aver applicato la matrice H:
$$|\circlearrowright\rangle = SH|1\rangle $$
$$|\circlearrowleft\rangle = SZH|1\rangle $$

I due qubit saranno rappresentati sull’asse Y.
Ancora, se si misura un qubit di questo tipo su una base canonica, si ottiene un risultato incerto. Se si misura nella base circolare, si ottiene un risultato determinato.

L’ultima matrice \(S^T\) serve ad eseguire l’operazione inversa di S e quindi a passare dalla base circolare a quella canonica o diagonale.

Sveliamo l’arcano sulla sfera di Bloch

E’ il momento di capire come si rappresentano i qubit in sovrapposizionenella sfera di Bloch .
Possiamo ricostruire un qualsiasi qubit (anche in sovrapposizione) calcolando il vettore di Bloch relativo, un vettore a tre dimensioni rappresentato in questo modo:
$$\langle X \rangle = \text{tr}(|\psi\rangle\langle \psi|X)$$
$$\langle Y \rangle = \text{tr}(|\psi\rangle\langle \psi|Y)$$
$$\langle Z \rangle = \text{tr}(|\psi\rangle\langle \psi|Z)$$

Lo stato è dato da:
$$|\psi\rangle \langle\psi|=(I+\langle X\rangle X + \langle Y \rangle Y + \langle Z \rangle Z)/2$$

E infine, ogni valore \(\langle Q \rangle\) è calcolato misurando il qubit nella base standard e calcolandone le due probabilità:
$$\langle Q\rangle = P(0) – P(1)$$

In questo modo, possiamo rappresentare un qualsiasi qubit a prescindere dalla base, in un unico grafico.
Questo è essenziale perchè i qubit \(|\circlearrowright\rangle\), \(|\circlearrowleft\rangle\), \(|+\rangle\) e \(|-\rangle\) , quando misurati nella base canonica, si comporteranno esattamente allo stesso modo, cioè risultando per metà \(|0\rangle\) e per metà \(|1\rangle\). Ma quei qubit SONO DIVERSI, e per capirne la differenza, basta rappresentarli nella sfera di Bloch.

3 COMMENTI

  1. Ciao! Articolo interessantissimo, mi sfugge solo una cosa: qual è il punto di parametrizzare un qubit con due angoli? Non basta usare cos(theta)|0> + sin(theta)|1>? E quindi rimanere su una circonferenza? Grazie 🙂

    • Ciao Vincenzo!
      Scusa se rispondo solo ora.

      Il punto è proprio il fatto che ci possono essere due qubit DIVERSI che rappresentati su una circonferenza sarebbero uguali, ovvero, due qubit diversi che se misurati (in una determinata base) danno le stesse probabilità di essere \(|1\rangle o |0\rangle \).
      Quando si misura un qubit si fa proprio questo: lo si proietta su una circonferenza, misurandone le probabilità in quella base (quella che genera il piano della circonferenza).
      Ma un qubit può essere misurato in basi diverse, e quei due qubit sono uguali solo se misurati in una particolare base.
      Prendi per esempio \(|+\rangle o |\circlearrowright\rangle \):
      Entrambi se misurati nella base canonica avranno probabilità al 50% in uno stato e 50% nell’altro.
      Ma se li misuri nella base diagonale, il qubit \(|+\rangle\)sarà sempre \(|1\rangle \) mentre il qubit \(|\circlearrowright\rangle \) sarà ancora a 50% nei due stati!
      Se ancora non sei convinto: se li rappresenti algebricamente (facendo la moltiplicazione con la matrice) sono evidentemente diversi!
      Infine, come spiegato nelle parti successive, c’è addirittura uno stato (che comprende infiniti qubit diversi) che non è rappresentabile nella sfera di Bloch: l’entangled state. (viene rappresentato in realtà con il punto nell’origine)

      Spero di aver risposto bene e chiarito il tuo dubbio, e anche di averti incuriosito sulle parti successive! 😉

    • Ciao Vincenzo!
      Scusa se rispondo solo ora.

      Il punto è proprio il fatto che ci possono essere due qubit DIVERSI che rappresentati su una circonferenza sarebbero uguali, ovvero, due qubit diversi che se misurati (in una determinata base) danno le stesse probabilità di essere \(|1\rangle o |0\rangle \).
      Quando si misura un qubit si fa proprio questo: lo si proietta su una circonferenza, misurandone le probabilità in quella base (quella che genera il piano della circonferenza).
      Ma un qubit può essere misurato in basi diverse, e quei due qubit sono uguali solo se misurati in una particolare base.
      Prendi per esempio \(|+\rangle o |\circlearrowright\rangle \):
      Entrambi se misurati nella base canonica avranno probabilità al 50% in uno stato e 50% nell’altro.
      Ma se li misuri nella base diagonale, il qubit \(|+\rangle\)sarà sempre \(|1\rangle \) mentre il qubit \(|\circlearrowright\rangle \) sarà ancora a 50% nei due stati!
      Se ancora non sei convinto: se li rappresenti algebricamente (facendo la moltiplicazione con la matrice) sono evidentemente diversi!
      Infine, come spiegato nelle parti successive, c’è addirittura uno stato (che comprende infiniti qubit diversi) che non è rappresentabile nella sfera di Bloch: l’entangled state. (viene rappresentato in realtà con il punto nell’origine)

      Spero di aver risposto bene e chiarito il tuo dubbio, e anche di averti incuriosito sulle parti successive! 😉

LASCIA UN COMMENTO