Podstawy informatyki kwantowej Jerzy KLAMKA 1. Wprowadzenie 2

Transkrypt

Podstawy informatyki kwantowej Jerzy KLAMKA 1. Wprowadzenie 2
Podstawy informatyki kwantowej
Jerzy KLAMKA
1. Wprowadzenie
2. Qubity
2.1. Qubity w zapisie wektorowym
2.2. Notacja Diraca
2.3. Macierze gęstości
2.4. Stany kwantowe splątane
2.5. Obserwable
3. Bramki kwantowe
3.1. Bramki 1-qubitowe
3.2. Bramki 2-qubitowe
4. Perspektywiczny uniwersalny komputer kwantowy
5. Algorytmy kwantowe
5.1. Algorytm poszukiwań Grovera
5.2. Algorytm faktoryzacji Shora
1. Wprowadzenie
2. Qubity
2.1. Qubity w zapisie wektorowym
W klasycznej informatyce pojedynczy bit może przyjmować
tylko dwie ustalone wartości logiczne to znaczy 0 lub 1. Natomiast
elementarną jednostką kwantowej informatyki jest kwantowy bit
zwany qubitem oraz oznaczony symbolem .
W opisie matematycznym pojedynczy qubit  jest
dwuwymiarowym znormalizowanym (o długości 1), wektorem o
współczynnikach zespolonych, a więc jest elementem 2-wymiarowej
zespolonej przestrzeni C2. Dwa ortogonalne stany dla pojedynczego
qubitu są postaci {0,1} i tworzą one bazę ortogonalną
 1
 
 0
 0 
,  
 1 
w 2-wymiarowej zespolonej przestrzeni C2.
W zapisie tym wektory bazowe
 1
0    C2
 0
 0
1    C2
 1
reprezentują odpowiednio wartości logiczne 0 oraz 1 klasycznego bitu
algebry Boole'a.
Dowolny qubit C2 może być przedstawiony w postaci
liniowej kombinacji wektorów bazowych
 
1
0
             1   0
 
0
1
,
gdzie liczby zespolone  oraz  nazywane są amplitudami
prawdopodobieństwa, natomiast wektor  jest wektorem
2
znormalizowanym o długości 1 to znaczy  2    1 [1], [3], [8].
Oznacza to, że qubit C2 przyjmuje wartość logiczną 0 z
prawdopodobieństwem
2
oraz
wartość
logiczną
1
z
2
prawdopodobieństwem  .
Przestrzenią stanów kwantowych dla 2 qubitów jest iloczyn
tensorowy (oznaczony symbolem ) przestrzeni stanów kwantowych
dla pojedynczych qubitów. W przypadku 2 qubitów jest to 4wymiarowa przestrzeń zespolona C4=C2C2. Przykładowo, iloczyn
tensorowy dwóch dowolnych qubitów postaci
 
=0+1=   C2
 
oraz
 
=0+1=   C2,
 
będący wektorem w 4-wymiarowej zespolonej przestrzeni C4 jest dany
następującym wzorem:
 =    = 0+10+1 =
 1
0   1
0     
=                   =      =
1      
1   0
 0 
1
0 
0 
0 
0 
1
0 
0 
              
= 0 
0 
1
0  =
 
 
 
 
0 
0 
0 
1
=0 + 1 + 2 + 3=
 
 
4
 
=00 + 01 + 10 + 11 =     C
 
  
Iloczyn tensorowy wektorów jest działaniem łącznym ale nie jest
przemienny to znaczy
    
Ogólnie, układ kwantowy złożony z n qubitów można
rozpatrywać jako wektor w 2n-wymiarowej zespolonej przestrzeni
n
C 2 , która jest iloczynem tensorowym n 2-wymiarowych przestrzeni
zespolonych C2, czyli
n
2
C2  C

C2

...

C2

n  razy
która zawiera 2n wzajemnie ortogonalnych stanów postaci
{0,1,...,i,...,2n-1},
gdzie i jest liczbą naturalną przedstawioną za pomocą n-bitowego
kodu binarnego, i=0,1,2,...,2n-1.
W tym przypadku stosuje się również równoważny zapis
wykorzystujący bezpośrednio wagowy kod binarny liczby naturalnej
k  n 1
i
a 2
k
k 0
k
,
to znaczy
i=an-1an-2...ak...a1a0
gdzie ak, k=0,1,2,...,(n-1) przyjmujące wartości 0 lub
współczynnikami odpowiadającymi wagom 2k, k=0,1,2,...,(n-1).
1
są
n
Zatem, wektor i C 2 posiada 1 na (i+1) pozycji a zera na
wszystkich pozostałych. Wykorzystując iloczyn tensorowy wektor i
można przedstawić w następującej postaci
i  an1an2 ak a1a0  an1  an2    ak    a1  a0
Ponadto, 2n-wymiarowe wektory postaci
T
2
i  [0
,0
,...,
0
,
1
,
0
,
0
,
0
,
0
,...,
0
,
0
]

C
 
 

i  razy
n
( 2n i 1)  razy
n
tworzą bazę ortogonalną w zespolonej przestrzeni C 2 .
Układ kwantowy n qubitów jest znormalizowanym wektorem
n
 w przestrzeni C 2 , który może być przedstawiony w postaci
liniowej kombinacji 2n wzajemnie ortogonalnych wektorów bazowych
0, 1, 2,..., i,..., 2n-1.
Stąd:
 
i  2 n 1

i 0
i  2 n 1
gdzie

i 0
i
2
i
i
1
Przykładowo, dla układu kwantowego złożonego z 2 qubitów 4
wektory bazowe wzajemnie ortogonalne
{0,1,2,3}={00,01,10,11}
w 4-wymiarowej zespolonej przestrzeni C4 są postaci następującej:
1
 
1 1 0
0  00  0  0       
C4
0  0  0 
 
0 
0 
 
1 0 1
1  01  0  1       
C4
0 1 0
 
0 
0 
 
0 1 0
2  10  1  0       
C4
1 0 1
 
0 
0 
 
 0   0  0 
3  11  1  1       
C4
1 1 0
 
1
Rejestr kwantowy jest zbudowany z qubitów z wykorzystaniem
superpozycji stanów kwantowych oraz operacji iloczynu tensorowego.
Niech kC2, k=0,1,..,n-1, będzie danym zbiorem n qubitów. Rejestr
kwantowy jest iloczynem tensorowym n qubitów postaci
  1   2  ...   k  ...   n 1
2.2. Notacja Diraca.
Symbol
 c1 
c 
 2

  
 ci 

 
cn 
ciC, i=1,2,...,n oznacza n-wymiarowy
elementach zespolonych, natomiast symbol

wektor
  c1 c2  ci  cn
kolumnowy
o
,
ci C,
i=1,2,...,n oznacza n-wymiarowy wektor wierszowy o
sprzężonych elementach zespolonych. Elementy zespolonych wektorów
znormalizowanych o długości 1 spełniają równość
i n
2
2
2
2
2
 ci  c1  c2    ci    cn  1
i 1
Iloczyn skalarny   n-wymiarowych wektorów  oraz 
dany jest wzorem

   c1 c2  ci
 d1 
d 
 2
   i n
 cn     cidi
 di  i 1

 
d n 

Stąd

   c1 c2  ci
 c1 
c 
 2
in 2
   in
 cn     cici   ci
i 1
 ci  i 1

 
cn 

Niech w przestrzeni Cn będzie dana baza ortonormalna złożona z
wektorów jednostkowych {e1,e2,…,ei,…en}. Wówczas
1 n
i n
i 1
i 1
   ei  ei   ci ei
i n
i n
i n
i 1
i 1
i 1
     ei ei     ei ei  ei ei 
Iloczyn  
jest nn wymiarową
zespolonych, której rząd wynosi 1.
macierzą
o
elementach
2.3. Macierze gęstości.
Macierz  nn-wymiarowa nazywa się macierzą gęstości jeżeli jest
macierzą dodatnio określoną o śladzie równym 1.
Szczególnym przypadkiem macierzy gęstości jest macierz
rzutowania na dany wektor q oznaczona symbolem Pq, której rząd jest
równy 1. Macierze gęstości nie będące macierzami rzutowania mają
zawsze rząd większy od 1.
Każdemu wektorowi qCn można przyporządkować w sposób
jednoznaczny operator rzutowania Pq, który rzutuje dowolny wektor
wCn na 1-wymiarową podprzestrzeń liniową generowaną przez dany
wektor q.
Pq w  q w q
Operator
rzutowania
reprezentowany
hermitowską (symetryczną) macierzą
jest
nxn-wymiarową
Pq  q q
i jak łatwo można sprawdzić spełnia warunek rzutowania
PqPq=Pq.
Przestrzenią stanów jest 2n-wymiarowa przestrzeń C 2
C
2n
 C 2  C 2  ...  C 2
n
W przestrzeni C 2 czyste stany kwantowe są reprezentowane
znormalizowanymi wektorami o długości 1.
n
Niech symbol B  0,1 oznacza zbiór dwuelementowy oraz B n  0,1n
zbiór będący iloczynem kartezjańskim n zbiorów B  0,1 . Ponadto,
niech xi  B dla i=1,2,...,n. Wówczas 2n-wymiarowe znormalizowane
wektory postaci
x1 , x2 ,..., xi ,..., xn  x1  x2  ...  xi  ...  xn
tworzą bazę ortonormalną w zespolonej przestrzeni
kwantowych C 2 .
stanów
n
Zatem dowolny stan kwantowy q  C 2 układu kwantowego złożonego z
n qubitów można przedstawić w postaci kombinacji liniowej stanów
bazowych
n
q 
c
x1 , x2 ,...,xi ,...,xn
( x1 , x2 ,...,xi ,...,xn )B n
x1 , x2 ,..., xi ,..., xn
gdzie zespolone współczynniki cx , x ,...,x ,...,x spełniają równość
1

( x1 , x2 ,...,xi ,...,xn )B n
2
i
n
c x1 , x2 ,...,xi ,...,xn
2
1
c x , x ,...,x ,...,x
Zespolone współczynniki
noszą nazwę
prawdopodobieństwa względem bazy ortonormalnej
1
2
i
n
amplitud
Współczynniki cx , x ,...,x ,...,x mają interpretację fizyczną, a mianowicie
1
2
i
n
kwadraty ich modułów c x , x ,...,x ,...,x
1
2
i
2
n
reprezentują prawdopodobieństwa
znalezienia się układu kwantowego w stanie bazowym
x1 , x2 ,..., xi ,..., xn  C 2
n
.
W przypadku, gdy układ kwantowy składa się z dwóch podukładów
kwantowych odpowiednio o przestrzeniach stanów C k oraz C m ,
wówczas jego 2n-wymiarowa, (n=k+m) przestrzeń stanów C n jest
iloczynem tensorowym
2
2
2
C
2n
 C C
2k
2m
.
q ,
Wykorzystując postać wektora
można zdefiniować
odpowiadający mu operator rzutowania reprezentowany następującą
2 n  2 n -wymiarową, hermitowską (symetryczną), dodatnio określoną,
macierzą rzutowania
Pq  q  q
Ponadto ślad macierzy rzutowania Tr(Pq)=1.
Macierz rzutowania Pq reprezentuje operator rzutowania na
jednowymiarową podprzestrzeń generowaną przez wektor q .
Zatem istnieje wzajemna odpowiedniość pomiędzy danym qubitem
n
q w postaci 2 -wymiarowego wektora, a dopowiadającym mu
operatorem gęstości Pq w postaci macierzy rzutowania (gęstości).
W mechanice kwantowej występują:
stany kwantowe czyste reprezentowane wektorami lub macierzami
rzutowania, oraz
stany kwantowe mieszane będące wypukłymi kombinacjami liniowymi
stanów czystych reprezentowane macierzami gęstości.
Dowolny samosprzężony, dodatnio określony operator
 : C  C 2 , reprezentowany 2n  2n -wymiarową macierzą gęstości,
której ślad tr = 1, nazywa się stanem układu kwantowego złożonego z
n qubitów.
2n
n
Macierzy gęstości  jest 2n  2n -wymiarową macierzą hermitowską
(symetryczną), dodatnio określoną, posiadającą 2n rzeczywistych
pojedynczych lub wielokrotnych wartości własnych s1 , s2 ,..., si ,..., s2 ,
którym odpowiadają rzeczywiste 2n-wymiarowe wektory własne
w1 , w2 ,..., wi ,..., w2 , a jej ślad
n
n
i 2n
Tr( Pq )   si  1
i 1
Wykorzystując wartości własne si, i=1,2,...,2n oraz odpowiadające
im wektory własne wi, i=1,2,...,2n, macierz gęstości  można
przedstawić w postaci liniowej kombinacji macierzy rzutowania na 2n
wektorów własnych
i 2n
   si wi  wi
i 1
Należy jednak zaznaczyć, że powyższe przedstawienie macierzy
gęstości  jest jednoznaczne jedynie w przypadku pojedynczych
wartości własnych.
W tym przypadku wartości własne si, i=1,2,...,2n reprezentują
prawdopodobieństwa znalezienia się układu kwantowego w stanie
kwantowym odpowiadającym wektorowi własnemu wi, i=1,2,...,2n lub
równoważnie macierzy rzutowania wi  wi , i=1,2,...,2n.
W przypadku, gdy
i 2n
Tr (  )  Tr  z z    zi zi  1
2
i 1
macierz gęstości jest jednocześnie macierzą rzutowania =Pq na
wektor q oraz odpowiadający tej macierzy stan kwantowy nazywa się
czystym stanem kwantowym. Natomiast w pozostałych przypadkach
macierz gęstości reprezentuje tak zwany mieszany stan kwantowy.
Rozróżnianie stanów kwantowych czystych i mieszanych jest
możliwe poprzez badanie śladu kwadratu macierzy gęstości. Dla
czystych stanów kwantowych mamy:
i 2n
Tr (  )  Tr (  )  Tr ( Pq )  Tr  q q    qi qi  1
2
i 1
co wynika z normalizacji wektora q, którego długość wynosi 1 Zatem
w tym przypadku =Pq=2 .
W przypadku mieszanych stanów kwantowych, odpowiadające
im wektory zespolone q znajdują się wewnątrz kuli jednostkowej w
przestrzeni C2, a zatem ich długość jest zawsze mniejsza od 1. W tym
przypadku ślad kwadratu macierzy gęstości 2 reprezentujący
kwadrat długości wektora q jest mniejszy od jedności i wynosi
i 2n
Tr (  )  Tr  q q    zi zi  1
2
i 1
2.4. Stany kwantowe splątane.
Niech i A oraz j B będą bazami ortonormalnymi odpowiednio
dla n-wymiarowego układu kwantowego A oraz m-wymiarowego
układu kwantowego B. Zatem dla stanów kwantowych  A oraz  B
mamy

i n
A
  ai i
i 1
A

oraz
j m
B
  bj j
j 1
B
Stąd iloczyn tensorowy tych stanów kwantowych jest postaci

A

i n j m
B
   aib j i
i 1 j 1
i n j m
A
j
B
   cij i
i 1 j 1
A
j
B
gdzie cij = aibj , i=1,2,…,n, j=1,2,…,m są dowolnymi współczynnikami
zespolonymi. W ogólnym przypadku faktoryzacja ta nie jest możliwa i
wówczas stan kwantowy reprezentowany wektorem nm-wymiarowym
w przestrzeni Cnm nie posiadający tej faktoryzacji nazywa się stanem
splątanym.
Przykładowo stan kwantowy

1
0
2
A
1B1A 0
B

jest stanem kwantowym splątanym.
n
Splątanie oznacza zatem, że dany stan kwantowy  C 2 nie
może być przedstawiony jednoznacznie w postaci iloczynu
tensorowego n stanów kwantowych iC2, i=1,2,...,n. Oznacza to, że
między poszczególnymi stanami kwantowymi i istnieją wzajemne
korelacje.
Przykładowo, niech
 
1
2
 1  2   12  01  10  C 4
Wektor ten reprezentuje stan kwantowy będący wynikiem
splątania, gdyż nie można znaleźć dwóch stanów kwantowych 1C2
oraz 2C2 takich, że
 = 2  2.
Pojęcie splątania wiąże się bezpośrednio z tak zwaną bazą
ortogonalną Bella, którą w zespolonej przestrzeni C4 tworzą
następujące 4 wzajemnie ortogonalne wektory bazowe:
00+11C4,
00-11C4,
01+10C4,
01-10C4.
2.5.
Obserwable.
Niech Q będzie 2n  2n -wymiarową, macierzą hermitowską, to znaczy
Q = Q*, reprezentującą obserwablę Q. Wówczas wartość liczbowa
obserwabli oznaczona symbolem Q dla qubitu q  C 2 jest postaci:
n
Q  qQ q
Z drugiej strony wykorzystując znane z algebry pojęcie śladu
macierzy otrzymuje się równość
Tr(QPq )  TrQ q q 
Zatem po wykonaniu odpowiednich przekształceń macierzowych
wartość liczbową obserwabli Q można wyrazić wzorem:
Q  q Q q  Tr(QPq )
gdzie Pq jest macierzą rzutowania na 2n-wymiarowy wektor q.
W szczególnym przypadku, gdy wektor q jest wektorem własnym
obserwabli Q, wówczas wartośc liczbowa obserwabli jest wartością
własną odpowiadająca wektorowi własnemu q.
W szczególnym przypadku obserwabla może być reprezentowana
operatorem rzutowania lub kombinacją liniową operatorów
rzutowania.
Q  z Pq z
gdzie Pq jest macierzą rzutowania na 2n-wymiarowy wektor q.
3. Bramki kwantowe
3.1. Bramki 1-qubitowe.
Kwantowymi bramkami logicznymi są wszystkie operacje
kwantowe wykonywane w przestrzeni stanów kwantowych.
Podstawowe operacje kwantowe wykonywane na pojedynczym qubicie
nazywane jedno-qubitowymi kwantowymi bramkami logicznymi
reprezentowane są 22-wymiarowymi macierzami unitarnymi U
będącymi liniowymi wzajemnie odwracalnymi odwzorowaniami w
zespolonej przestrzeni C2.
Macierze unitarne spełniają następującą podstawową równość:
U = U*, gdzie U-1 jest macierzą odwrotną, natomiast w przypadku
rzeczywistych macierzy unitarnych U-1 = UT, gdzie UT jest macierzą
transponowaną. Macierze unitarne reprezentują w zespolonej
przestrzeni C2 obroty o pewien kąt wokół początku układu
współrzędnych, które nie zmieniają długości poszczególnych
wektorów. Ponieważ istnieje nieskończenie wiele 22-wymiarowych
macierzy unitarnych, zatem dla pojedynczego qubitu teoretycznie
istnieje nieskończenie wiele różnych kwantowych bramek logicznych,
odpowiadających poszczególnym macierzom unitarnym U, oraz
realizujących zadaną kwantową operację matematyczną [1], [4], [8].
-1
Należy zaznaczyć, że w przypadku klasycznej dwustanowej
algebry Boole’a w odniesieniu do jednego bitu istnieją tylko dwie
operacje logiczne, to znaczy identyczność oznaczona symbolem I, oraz
negacja oznaczona symbolem NOT. W układach kwantowych operacje
te są reprezentowane odpowiednio następującymi macierzami
unitarnymi
 1 0

 0 1
UI = 
 0 1

 1 0
UNOT = 
dla operacji identyczności I, oraz
dla operacji negacji NOT.
Przykładowo, działanie
wektorów bazowych
 1
2
0    C oraz
 0
bramki
NOT
dla
ortogonalnych
0 
2
1    C
1
można przedstawić następująco: 01, oraz 10, gdzie symbol
 oznacza transformację wektora.
0 1 1 0
U NOT 0  
  1



1 0 0 1
0 1 0 1
U NOT 1  
 1  0  0
1
0

   
Biorąc pod uwagę postać macierzy unitarnej UNOT
reprezentującej kwantową operację negacji oraz stosując
standardowy zapis wektorowy otrzymuje się następującą zależność:
1
0 
U NOT   U NOT ( 0   1 )  U NOT (       ) 
0 
1
0 1     
1
0 



(



     
0 
1 )  (  0   1 )  
1
0

   
 
 
Zatem, działanie kwantowej bramki NOT dla dowolnego
znormalizowanego
stanu
kwantowego
=0+1C2
reprezentowanego wektorem o współczynnikach zespolonych , ,
można przedstawić następująco:
 = 0 + 1  1 + 0 = 
gdzie symbol  oznacza negację w zapisie kwantowym, to znaczy
zamianę współczynników  oraz..
Bramka kwantowa Hadamarda H jest
następującą 22-wymiarową macierzą unitarną

H 

1
2
1
2
1 
2

 12 


1
2
reprezentowana
1 1 
1  1


Działanie bramki Hadamarda H dla ortogonalnych wektorów
bazowych 0C2 oraz 1C2 można przedstawić następująco:
0 1 2 (0+1)C2,
oraz
1 1 2 (0-1)C2.
Działanie bramki Hadamarda H dla dowolnego stanu
kwantowego =0+1C2 reprezentowanego wektorem o
współczynnikach zespolonych , , można przedstawić następująco:
 = 0 + 1 
1
2
( + )0 +
1
2
( - )1
Istotną rolę w obliczeniach kwantowych odgrywają
wymiarowe hermitowskie unitarne macierze Pauliego postaci
2 × 2-
Ogólnie liczby zespolone uij, i,j=1,2 tworzą 22-wymiarową
macierz unitarną
 u11
U 
 u21
u12 
u22 
Przykładowo, mogą to być macierze postaci:
 e i / 4 cos( / 8)
e i / 4 sin( / 8) 
F    i / 4

sin( / 8) e  i / 4 cos( / 8) 
 e
 cos( / 8)  sin( / 8) 
G 

 sin( / 8) cos( / 8) 
 e  i / 4
H 
 0
0 

e i / 4 
1
0 
J 
 i / 4 
0 e

 cos( / 2)
ie i sin( / 2) 
V ( ,  )   i

cos( / 2) 
ie sin( / 2)
3.2. Bramki 2-qubitowe.
W przypadku układu kwantowego złożonego z dwóch qubitów
podstawowe operacje kwantowe reprezentowane są 44wymiarowymi macierzami unitarnymi działającymi w przestrzeni C4.
Szczególne znaczenie ma operacja, której działanie można przedstawić
za pomocą następującej 44-wymiarowej unitarnej macierzy:
1
0
UD  
0

0
gdzie
0 
1 0
0 
0 u11 u12 

0 u 21 u 22 
0
0
u12 
u
D   11

u 21 u 22 
jest dowolną operacją kwantową na pojedynczym
reprezentowaną 22-wymiarową unitarną macierzą D.
qubicie,
Operacja ta nosi nazwę “sterowanej bramki D”, gdyż operacja
wykonywana na drugim qubicie reprezentowana macierzą D zależy od
tego czy pierwszy qubit jest w stanie kwantowym 0C2 czy też w
stanie kwantowym 1C2. W przypadku, gdy pierwszy qubit jest w
stanie kwantowym 0C2, wówczas drugi qubit pozostaje bez zmian,
natomiast gdy pierwszy qubit jest w stanie kwantowym 1C2,
wówczas na drugim qubicie wykonywana jest operacja kwantowa
reprezentowana 22-wymiarową macierzą unitarną D.
W szczególnym przypadku gdy macierz unitarna D jest
macierzą odpowiadającą operacji negacji NOT, to znaczy D=UNOT
uzyskuje się bramkę kwantową o nazwie "sterowana negacja"
oznaczanej symbolem CNOT (ang. controlled NOT), której odpowiada
44-wymiarowa unitarna macierz UCNOT.
1
0
U CNOT  
0

0
0 0 0
1 0 0
0 0 1

0 1 0
Działanie 2-qubitowej bramki kwantowej CNOT dla czterech
ortonormalnych wektorów bazowych jest następujące:
4
4
4
4
0 =00C , 1 =01C , 2 =10C , 3 =11C
można przedstawić następująco:
0 =0000= 0 ,
1 =0101= 1 ,
2 =1011= 3 ,
3 =1110= 2 .
Zatem działanie 2-qubitowej bramki CNOT dla dowolnego
stanu kwantowego
 = 00 + 01 + 10 + 11C4
reprezentowanego wektorem odpowiednio o współczynnikach
zespolonych , , , , można przedstawić następująco:
 = 00 + 01 + 10 + 11  00 + 01 + 10 + 11
4. Perspektywiczny uniwersalny komputer kwantowy
Formalnie kwantowy komputer jest układem n qubitów, na
których można przeprowadzać odpowiednie operacje kwantowe
reprezentowane bramkami kwantowymi czyli macierzami unitarnymi
odpowiednich wymiarów.
Bez utraty ogólności można założyć, że początkowy stan
kwantowy n-elementowego układu qubitów odpowiada wektorowi
n
bazowemu 0,0,0,...,0  C 2 , który następnie jest sekwencyjnie
przetwarzany przez dowolny ciąg bramek kwantowych.
W wyniku działania ciągu odpowiednio dobranych kwantowych
bramek logicznych na początkowy stan kwantowy otrzymuje się w
efekcie n-qubitowy końcowy stan kwantowy W, który jest wektorem o
n
długości 1 w 2n-wymiarowej zespolonej przestrzeni C 2 . Końcowy
pomiar wektora W daje nam informacje probabilistyczne.
5. Algorytmy kwantowe
Do najważniejszych algorytmów kwantowych należą:
1. algorytm poszukiwań opracowany przez Grovera w 1997 roku,
2. algorytm faktoryzacji liczb naturalnych zaproponowany w 1993
roku przez Shora,
5.1. Algorytm poszukiwań Grovera
W 1997 roku Grover zaproponował [5], [6] kwantowy algorytm
wyszukiwania informacji w dużych zbiorach danych. Problem polega
na wyszukaniu w nieuporządkowanym zbiorze danych {di,
i=1,2,3,...,N} zawierającym N elementów określonego elementu dj=y.
Klasyczne algorytmy poszukiwań potrzebują średnio N/2 kroków
na wyszukanie danej informacji w zbiorze danych zawierającym N
elementów. Algorytm kwantowy poszukiwań Grovera znacznie
bardziej efektywny i potrzebuje średnio jedynie N kroków.
Przykładowo dla N=1016 nieuporządkowanych elementów.
klasyczny komputer wykonałby taką czynność w czasie około kilkuset
lat. Natomiast komputer kwantowy wykorzystujący algorytm
poszukiwań Grovera wyznaczyłby poszukiwany element zbioru w
ciągu około kilku minut.
5.2. Algorytm faktoryzacji Shora
W 1993 roku Shore zaproponował [7] efektywny kwantowy
algorytm umożliwiąjacy faktoryzację liczb naturalnych to znaczy
znajdowanie jej podzielników. Algorytm ten posiada wielomianową
złożoność obliczeniową. Należy zanaczyć, że jest to najważniejszy
opracowany do tej pory algorytm kwantowej informatyki
umożliwiający znaczne przyspieszenie wielu istotnych procesów
obliczeniowych, wystepujacych głównie w kryptografii.
Można wykazać, że przewaga algorytmu kwantowego nad algorytmem
klasycznym wzrasta wraz ze wzrostem liczby naturalnej N, która
podlega faktoryzacji.
Literatura
1. Barenco A., A universal two-bit gate for quantum computation,
Proceedings of the Royal Society of London, vol.449, 1995,
pp.679-683.
2. Deutsch D., Quantum computational networks, Proceedings of
the Royal Society of London, vol.425, 1989, pp.73-90.
3. Bugajski S., Klamka J., Węgrzyn S., Foundations of quantum
computing. Part I, Archiwum Informatyki Teoretycznej i
Stosowanej, vol.13, no1, 2001, str. 97-142.
4. Bugajski S., Klamka J., Węgrzyn S., Foundations of quantum
computing. Part II, Archiwum Informatyki Teoretycznej i
Stosowanej, vol.13, no1, 2001, str. 137-149.
5. Grover L.K., A fast quantum mechanical algorithm for database
search, Proceedings of the 28th ACM Symposium on Theory of
Computations, 1996, pp.212-21.
6. Klamka J., “Quantum search algorithm”, Studia Informatica,
vol.23, no 2, 2002, str.95-102.
7. Shore P., Polynomial-time algorithms for prime factorization
and discrete logarithms on a quantum computer, Proceedings of
the 35th Annual Symposium on Foundations of Computer
Science. Santa Fe, 20-22.11.1994. pp.124-134.
8. Węgrzyn S., Klamka J., Kwantowe systemy informatyki,
Instytut Informatyki Teoretycznej i Stosowanej PAN, Gliwice,
2000.
9. Węgrzyn S., Klamka J., “Kwantowe systemy informatyki”,
Studia Informatica, vol.21, no.1, 2000, str.15-45.
10.Węgrzyn S., “Kwantowe systemy informatyki”, Nauka, 2000,
no.3, str.71-82,
11.Węgrzyn S., Klamka J., “Quantum computing”, Archiwum
Informatyki Teoretycznej i Stosowanej, tom 12, zeszyt 3, 2000,
pp.235-246.
12.Węgrzyn S., “Informatyka kwantowa i jej miejsce w
informatyce jako dyscyplinie naukowej”, Studia Informatica,
vol.22, no.1, pp.11-27.