11.3. A kvantumregiszter

Eddig arról volt szó, hogy hogyan tárolhatunk el egy bit információt vagy a és állapotok szuperpozícióját egyetlen protonban vagy fotonban. Hogyan tárolhatnánk kettő, vagy annál több bit információt?

Több proton használata, habár elsőre kézenfekvőnek tűnik, nem valósítható meg egyszerűen, mivel a protonok egyformák, és egy kvantumrendszerben a részecskék sokszor nem különböztethetőek meg, ami problémát okozhat. Ez a probléma elméleti és gyakorlati szempontból is fontos: amikor egy kubitet manipulálni akarunk, honnan tudhatnánk, hogy más kubitet nem befolyásoltunk... Jobb megoldásnak tűnik egy másik elemi részecske, például a neutron használata. Habár a neutronnak nincs elektromos töltése, rendelkezik mágneses dipólusmomentummal ami . Emlékezzünk, hogy ugyanez a protonnál . Tehát amit eddig a protonról elmondtunk, az érvényes lesz a neutronra is, csak a -t kell kicserélnünk -re. Tehát ha a neutront belehelyezzük egy B mágneses mezőbe, akkor a vagy a kvantumállapotot veheti fel. Ez a két állapot ugyancsak egy kétdimenziós Hilbert-teret jelent. Most már tudunk tárolni 2 bitet, egyet a protonon, egyet pedig a neutronon. Tegyük fel, hogy a következő állapotokba helyezzük a részecskéinket:

ahol a index a proton állapotát jelöli.

Mit mondhatunk a rendszer átmeneti valószínűségeiről? Ha elforgatjuk a mágneses mezőt, (tegyük fel, hogy mindkét részecskére ugyanaz a mező hat,) és méréseket végzünk a részecskéken, akkor ismét csak azt kapjuk, hogy előre nem meghatározható mi lesz az eredmény. De ha ugyanolyan mérések sorozatát végezzük el, vagy megegyezően előkészített proton-neutron párok nagy halmazán végzünk egyszeri méréseket, akkor azt kapjuk, hogy jól definiált valószínűségek rendelhetők a különböző átmenetekhez, és ezek a valószínűségek klasszikus szabályok szerint alakulnak. Például annak a valószínűsége, hogy a neutron a - ból a állapotba megy és eközben a proton a -ből a -be:

Eszerint a 2-részecskés folyamat amplitúdója egyenlő a megfelelő 1-részecskés folyamatok amplitúdójának a szorzatával. Eszerint gondolhatunk az egyes részecskék állapotainak formális szorzatára , mint az egész kétrészecskés rendszer állapotára, pl. . A formális szorzat azt jelenti, hogy azon kívül, hogy a két állapotot leírjuk egymás mellé, mást nem teszünk velük. Minden egyes vektor a saját külön Hilbert terében van. Akárhányszor forgatást, vagy más műveletet végzünk ezen a kétrészecskés rendszeren, mindkét vektoron a megfelelő egy-részecskés operátort kell végrehajtanunk. Az ilyen szorzatot nevezzük tenzor szorzat nak és a szimbólummal jelöljük. Írásban sokszor egyszerűen elhagyjuk a két vektor közötti jeleket, és -t írunk. (Ha rögzítjük, hogy mindig a neutron állapotát írjuk előre, és a protonét hátra, akkor megspórolhatjuk a leírásban ezeket az indexeket.)

Egy kétkubites rendszer általában a következőképpen írható le:

ahol , és ennek megfelelően annak, hogy a rendszer állapotát mérve pl. a állapotot kapjuk a valószínűsége éppen .

Eddig vagy egy protont vagy egy protont és egy neutront vizsgáltunk egy mágneses térrel kitöltött vákuumban. Most gondoljunk a protonra, mint egy molekulához kémiai kötéssel kapcsolódó elemre (H atomra). A molekulának van valamilyen (térbeli) felépítése, aminek segítségével a különböző helyekre csatlakozott protonokat megkülönböztethetjük. Így minden protonhoz külön kommunikációs csatornát rendelhetünk, mivel a protonok már nem egyformák, az előbbi probléma nem érvényes rájuk, különbözőképpen fognak viselkedni. Ennek megfelelően egy molekula ideális lehet egy kvantumregiszter megvalósítására.

Tegyük fel, hogy 8 protont rendelünk egy molekulához ezen a módon. Az összetett kvantumállapota ezeknek a protonoknak lehet, például

ahol a 0-tól 7-ig tartó indexek azt mutatják meg, hogy melyik protonhoz tartozik a jelzett állapot. Tartsuk magunkat ahhoz, hogy a 0. proton mindig a legjobboldalibb helyen áll a 7. pedig a legbaloldalibb (vagyis az első) helyen. Így elhagyhatjuk az indexeket, és ugyanazon állapotra írhatjuk a következőt:

Továbbá elhagyhatjuk a jeleket a vektorok közül, miáltal az állapotot a következőképpen írhatjuk röviden:

Ez nem más, mint a 204 bináris reprezentációja, mivel épp most implementáltunk egy 8- kubites regisztert ami 0-tól 255-ig képes számokat tárolni.

Általában egy -kubites rendszer a következő alakba írható:

ahol

Ekkor annak a valószínűsége, hogy pont a állapotot kapjuk a rendszer (megfigyelése, illetve) mérése során: .

Térjünk most egy kicsit vissza a Dirac-féle jelöléshez. Egy ket-vektor a Hilbert térben a következőképpen néz ki:

ami egy 1-re normált vektor. A komplex konjugáltjának a transzponáltja pedig definíció szerint a következő bra-vektor:

Két kvantumállapotra, és -ra, a megfelelő bra- és egy ket-vektorok belsőszorzata (skaláris szorzata) a következőképpen értelmezett:

Ennek megfelelően

A már említett tenzor szorzatot pedig a következőképpen definiálhatjuk formálisan is: egy és egy méretű mátrixra az eredmény egy méretű mátrix lesz, amiben az eredeti mátrixok minden elempárjának szerepel a szorzata: Legyen, tehát és . Ekkor

vagyis a tenzorszorzat dimenziója a tényezők dimenziójának szorzata: . Láthatjuk, hogy a kvantumrendszerek egyesítésével a rendszer dimenziója nem lineárisan változik (nem összeadódik), hanem nagyon meredeken, exponenciálisan nő. Ezzel is összefügg az, hogy a kvantumrendszereknél a rendszer méretétől sokkal jobban függ a rendszer számítási ereje, mint a hagyományos számítógépek esetén.

A számítási bázisállapotok így egy többkubites rendszer esetén a következőképpen írhatók le (az egyszerűség kedvéért kétkubites rendszert tekintünk, nagyobb rendszerek analóg módon írhatók le):

Ennek megfelelően a kétbites rendszerben ezek a vektorok alkotnak bázist, és továbbra is élünk pl. a rövidített jelöléssel.

Most térjünk vissza a kvantumregiszterhez, amiben már megmutattuk, hogyan tudunk klasszikus adatokat, számokat tárolni. Egy kvantumregiszter sokkal többre képes annál, minthogy egy értéket tároljon a 0 és között. A Hadamard-transzformációt láttuk egy kubitre. Nézzük hogyan megy egy kvantumregiszterre. Tegyük fel, hogy az összes kubit a B mezőt tekintve a állapotba volt előkészítve. A mágneses teret elforgatjuk 90˚-kal. Mi lesz ekkor a rendszer B’ -höz igazított állapota ebben az új bázisban? A kérdés megválaszolásához a következő szorzást kell elvégeznünk:

ami:

Az alsó indexek elhagyása és a decimális jelölésre való áttérés után a következőt kapjuk:

A fenti jelölésben pl. a nem jelent mást mint , azaz ez a fizikai reprezentációja ennek a számnak, ami bináris és ebben az esetben 8 kubiten van kódolva.

A Hadamard-transzformáció általános végrehajtása egy -kubites rendszeren, ahol a kubitek a kezdőállapotba vannak előkészítve:

11.. egyenlet -


ami a szuperpozíciója az összes egész számnak 0-tól -ig. Ez az összes szám egy időben helyezkedik el egy kvantumregiszteren belül. Bármely művelet, amit regiszteren hajtunk végre, végrehajtódik az összes számon egy időben, párhuzamosan. Ez a kvantumpárhuzamosság működés közben. (A (11.) képletben a jelenti a Hadamard transzformáció mátrixának saját magával vett -szeres tenzorszorzatát. A kvantumtranszformációk mátrixait a következő fejezetben részletezzük.)

Minden ismert kvantumalgoritmus alkalmazza ezt a Hadamard-transzformációs trükköt a számítások elején. Tekintsünk egy 64 kubit méretű regisztert. Ez a regiszter 18 446 744 073 709 551 616 számot képes tárolni. A regiszteren elvégzett művelet egyszerre hajtódik végre az összes kb. 18.5 kvintillió számon. Sajnos ez jóval több, mint amit a jelenlegi technológia képes előállítani. De a verseny folyik, hogy egy skálázható kvantumszámítógép készüljön, melynek regisztere több ezer, vagy akár több tízezer kubitet tartalmaz majd (emlékezzünk: a rendszer méretétől nem lineárisan függ a számítási ereje!). Itt jegyezzük meg, hogy egy 1000 kubites rendszer már nagyobb fokú párhuzamosságot valósítana meg, mint egy Univerzum méretű klasszikus számítógép...