• Non ci sono risultati.

Esempio di codice CSS: il codice Steane

3.3 Costruzione di codici quantistici

3.3.1 Esempio di codice CSS: il codice Steane

Un importante esempio di codice CSS può essere costruito utiliz- zando il codice di Hamming [7, 4, 3] , che denotiamo con C, la cui matrice di parità è H =   1 0 1 0 1 0 1 0 1 1 0 0 1 1 0 0 0 1 1 1 1  , (3.9)

e la matrice generatrice è G =     1 0 1 0 1 0 1 0 1 1 0 0 1 1 0 0 0 1 1 1 1 1 1 1 0 0 0 0     .

Il duale del codice Hamming è il codice [7, 3, 4] generato da H. In questo caso il duale del codice è in realtà contenuto nel codice. Per costruire il codice CSS scegliamo un codice C1 ≡ C e C2 ≡ C⊥.

Dobbiamo innanzitutto vericare che C2 ⊂ C1.

La matrice di parità di C2 ≡ C⊥, per denizione, è uguale alla

trasposta della matrice generatrice di C1 ≡ C :

H (C2) = G (C1) T =     1 0 0 0 0 1 1 0 1 0 0 1 0 1 0 0 1 0 1 1 0 0 0 0 1 1 1 1     . (3.10)

Confrontando 3.9 con 3.10 possiamo notare che lo span delle righe di H (C2)contiene rigorosamente lo span delle righe di H (C1) ,e poichè

i corrispondenti codici sono i nuclei di H (C1)e H (C2) concludiamo

che C2 ⊂ C1.

I codici C1 e C2 hanno entrambi distanza 3, poichè C2⊥= C ⊥⊥

= C, e quindi possono correggere errori su 1 bit.

Il codice CSS (C1, C2) è un codice quantistico [[7, 1]] in quanto è

generato dal codice C1, che è un codice [[7, 4]], e dal codice C2, che

è un codice [[7, 3]]

Questo codice, in grado di correggere errori su un singolo qubit, è noto come codice Steane, dal suo inventore.

Capitolo 4

Codici stabilizzatori

I codici stabilizzatori sono un importante classe di codici quantistici la cui costruzione è analoga a quella dei codici lineari classici. E' utile introdurre, inizialmente, un formalismo stabilizzatore al ne di descrivere le porte unitarie e le misure, e dimostrare un risultato importante che quantica le limitazioni degli operatori stabilizzatori.

4.1 Formalismo stabilizzatore

L'idea di base del formalismo stabilizzatore è che molti stati quanti- stici possono essere descritti più facilmente lavorando con gli opera- tori che li stabilizzano piuttosto che con gli elementi del sottospazio di Hilbert. E' molto utile, inoltre, per descrivere gli errori sui qubit e alcune operazioni come la porta Hadamard, il cancello di fase, la porta CNOT.

Di seguito verrà utilizzata la seguente notazione. Indichiamo con

X1 = X⊗I⊗I = XII X2 = I⊗X⊗I = IXI X3 = I⊗I⊗X = IIX

e

Z1 = Z ⊗I ⊗I = ZII Z2 = I ⊗Z ⊗I = IZI Z3 = I ⊗I ⊗Z = IIZ.

Quindi in generale Zi (risp. Xi) è il prodotto tensore che ha tutte le

componenti uguali a I, tranne l'i − esima componente che è uguale a Z (risp Xi).

La chiave del formalismo stabilizzatore risiede nell'uso intelligente della teoria dei gruppi. Il gruppo di principale interesse è il gruppo di Pauli Gn su n qubit.

Per un singolo qubit il gruppo di Pauli consiste in tutte le matrici di Pauli insieme ai fattori moltiplicativi ±1 e ±i:

G1 ≡ {±I, ±iI, ±X, ±iX, ±Y, ±iY, ±Z, ±iZ} . (4.1)

Questo insieme di matrici forma un gruppo con l'operazione di prodotto matriciale.

Il gruppo di Pauli su n qubit è denito come il prodotto tensoriale n − esimo delle matrici di Pauli, considerando ovviamente i fattori moltiplicativi ±1 e ±i.

Gn =ikA1⊗ . . . ⊗ An| ∀ j ∈ [1, n] , Aj ∈ G1

Supponiamo che S sia un sottogruppo di Gn e deniamo Vs ⊆ 2n

come l'insieme degli stati di n qubit ssati da ogni elemento di S. Vs è lo spazio vettoriale stabilizzato da S, mentre S si dice

stabilizzatore dello spazio Vs, poichè ogni elemento di Vs è stabile

sotto l'azione di elementi di S. Esempio:

Vediamo un esempio del formalismo stabilizzatore in azione. Prendiamo n = 3 e sia

S ≡ {I, Z1Z2, Z2Z3, Z1Z3} .

Il sottospazio ssato da Z1Z2 è generato da

|000i , |001i , |110i , |111i , e quello ssato da Z2Z3 è attraversato da

|000i , |100i , |011i , |111i .

Possiamo notare che gli stati |000i e |111i sono comuni ad entrambi i sottospazi, ma allora Vs non è altro che lo span degli stati |000i e

|111i .

Inoltre, dato che

Z1Z3 = (Z1Z2) ? (Z2Z3) = (Z ⊗ Z ⊗ I) ? (I ⊗ Z ⊗ Z)

I = (Z1Z2)2 = (Z ⊗ Z ⊗ I) ? (Z ⊗ Z ⊗ I) ,

dove con ? indichiamo il prodotto in Gn, si ha

S = hZ1Z2, Z2Z3i .

@

In questo caso particolare abbiamo determinato Vs semplicemente

osservando gli stati stabilizzati da due operatori di S, abbiamo cioè descritto Vs a partire dai suoi generatori; in questo modo il gruppo

è stato descritto in modo compatto.

Per vedere se un operatore è stabilizzato da un gruppo S basta vericare che è stabilizzato dai generatori, poichè poi è stabilizzato automaticamente dai prodotti dei suoi generatori.

Ogni sottogruppo S del gruppo di Pauli può essere utilizzato come stabilizzatore per lo spazio vettoriale banale.

Ad esempio, consideriamo il sottogruppo di G1costituito da {±I, ±X} .

Ovviamente l'unica soluzione di

(−I) |ψi = |ψi

è |ψi = 0, e quindi {±I, ±X} è lo stabilizzatore dello spazio vetto- riale banale.

Il seguente teorema fornisce le condizioni necessarie per le quali un sottoinsieme di Gn sia lo stabilizzatore di uno spazio vettoriale non

Teorema 4.1

Due condizioni necessarie anchè S sia lo stabilizzatore di uno spazio vettoriale non banale Vs sono:

(a) gli elementi di S commutano;

(b) −I non è un elemento di S (e di conseguenza anche ±iI /∈ S). Dim.

Sia VS uno spazio non banale, quindi contiene un vettore diverso da

zero che indichiamo con |ψi .

Siano, inoltre, M ed N due elementi di S, dunque sono prodotti tensoriali di matrici di Pauli.

Come conseguenza delle proprietà delle matrici di Pauli, M ed N sono matrici tali che

M N = −N M o M N = N M.

Per dimostrare (a) supponiamo che MN = −NM e facciamo vedere che questo porta ad un assurdo.

Se −NM = MN, abbiamo che

− |ψi = −N M |ψi = M N |ψi = |ψi

dove le prime e le ultime due uguaglianze derivano dal fatto che M ed N stabilizzano |ψi. Allora

− |ψi = |ψi ,

il che implica che |ψi è il vettore zero, assurdo poichè è in contrad- dizione con le ipotesi.

Per dimostrare la seconda condizione, ovvero che −I /∈ S, basta semplicemente notare che se −I è un elemento di S allora abbiamo −I |ψi = |ψi ,il che porta alla stessa contraddizione di prima.

E' conveniente, per indicare i generatori di uno stabilizzatore, uti- lizzare lo spazio dei vettori binari.

Indichiamo un generatore generico

g = U1⊗ U2⊗ . . . ⊗ Un

dove le matrici Uisono matrici di Pauli, come vettore di Z2n2 , (a| b) ,

dove le matrici Ui sono matrici di Pauli e per ogni i ∈ {1, . . . , n}

ai = ( 1 se Ui = X o Y 0 se Ui = I o Z e bi = ( 1 se Ui = Z o Y 0 se Ui = I o X (4.2) Per esempio, X1X3Z5Y6Z7Y8 = X ⊗ I ⊗ X ⊗ I ⊗ Z ⊗ Y ⊗ Z ⊗ Y è indicato come (10100101| 00001111) .

Uno stabilizzatore con m generatori, quindi, può essere descritto da una matrice m × 2n, che ha per righe gli m generatori. Tale matrice prende il nome di matrice di controllo1.

Esempio:

La matrice di controllo di un codice di Steane a sette qubit, che ha per generatori:

g1 = I I I X X X X

g2 = I X X I I X X

1così chiamata perchè gioca un ruolo, nella teoria dei codici stabilizzatori, analogo alla

g3 = X I X I X I X g4 = I I I Z Z Z Z g5 = I Z Z I I Z Z g6 = Z I Z I Z I Z, è        0 0 0 1 1 1 1 0 1 1 0 0 1 1 1 0 1 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 1 1 0 0 1 1 1 0 1 0 1 0 1        . (4.3) @

Un collegamento utile tra l'indipendenza dei generatori e la matrice di controllo è stabilito dalla seguente proposizione:

Proposizione 4.2

Sia S = hg1, . . . , gli ⊂ Gn tale che −I /∈ S; allora i generatori

g1, . . . , gl sono indipendenti se e solo se le corrispondenti righe della

matrice di controllo sono linearmente indipendenti. Dim.

Dimostriamo la contronominale. Indichiamo con r (g) il vettore 2n−dimensionale che corrisponde alla riga del generatore g della matrice di controllo.

Possiamo osservare che ∀i g2

i = gi e che

r (g) + r (g0) = r (gg0) .

In questo modo le righe della matrice di controllo sono linearmente dipendenti e vale

X

i

air (gi) = 0,

con aj 6= 0 per qualche j, se e solo se Qigiai è uguale all'identità, a

meno di un fattore moltiplicativo.

Ma −I /∈ S, in modo che il fattore moltiplicativo deve essere 1, e l'ultima condizione corrisponde alla condizione

gj = gj−1 =

Y

i6=j

gai

i ,

e quindi g1, . . . , gl non sono generatori indipendenti.

@

Altri risultati utili per il nostro studio sono i seguenti: Proposizione 4.3

Sia S = hg1, . . . , gli ⊂ Gn generato da l generatori linearmente

indipendenti tale che −I /∈ S. Fissiamo i nell'intervallo 1, . . . , l. Allora esiste g ∈ Gn tale che

ggig† = −gi e ggjg†= gj ∀j 6= i,

dove con g† indichiamo il coniugio (coniugato trasposto).

Dim.

Sia C la matrice di controllo associata ai generatori g1, . . . , gl. Le

righe di C sono linearmente indipendenti per la proposizione 5.2, quindi esiste un vettore 2n-dimensionale x tale che

CΛx = ei,

dove ei è un vettore l−dimensionale che ha 1 nella posizione i-esima

Λ = 0 I

I 0

 .

Sia g tale che r (g) = xT. Allora, per denizione di x, abbiamo che

r (gj) Λr (g) T = 0, r (gi) Λr (g) T = 1 per i 6= j e quindi ggig† = −gi e ggjg† = gj per i 6= j. @

Un importante risultato per il nostro studio è il seguente: Proposizione 4.4

Sia S = hg1, . . . , gn−ki ⊂ Gn generato da n − k elementi, linear-

mente indipendenti e che commutano, tale che −I /∈ S. Allora VS è

uno spazio vettoriale 2kdimensionale.

Dim.

Sia x = (x1, . . . , xn−k)un vettore di n−k elementi di Z2. Deniamo

PSx ≡ Qn−k j=1 (I + (−1) xj gj) 2n−k . Poiché (I+gj)

2 è il proiettore sull'autospazio di gj, relativo all'auto-

valore 1, è facile vedere che P(0...0)

S è il proiettore su VS. Per la

proposizione 4.3 ∀ x esiste gx ∈ Gn tale che

gxP (0...0) S (gx)

e quindi la dimensione di Px

S è la stessa della dimensione di VS.

Inoltre, per x distinti i Px

S sono ortogonali.

Concludiamo osservando che

I =X

x

PSx.

I è un proiettore sullo spazio 2ndimensionale, mentre il lato destro

dell'uguaglianza è somma su 2n−k proiettori su spazi che sono orto-

gonali che hanno la stessa dimensione di VS, e quindi la dimensione

di VS è 2k.

@

In tutta la nostra successiva discussione del formalismo stabilizzato- re usiamo la convenzione che gli stabilizzatori sono sempre descrit- ti in termini di generatori indipendenti e commutativi e tale che −I /∈ S.

Documenti correlati