Kvantumszámítógépes algoritmusok

Hasonló dokumentumok
Analízisfeladat-gyűjtemény IV.

Kvantum-kommunikáció komplexitása I.

Miskolci Egyetem GÉPÉSZMÉRNÖKI ÉS INFORMATIKAI KAR. Analízis I. példatár. (kidolgozott megoldásokkal) elektronikus feladatgyűjtemény

Rejtett részcsoportok és kvantum-számítógépek

Bináris keres fák kiegyensúlyozásai. Egyed Boglárka

2. Halmazelmélet (megoldások)

Lineáris programozás. Modellalkotás Grafikus megoldás Feladattípusok Szimplex módszer

5. Előadás. Megyesi László: Lineáris algebra, oldal. 5. előadás Lineáris függetlenség

Matematikai programozás gyakorlatok

prímfaktoriz mfaktorizáció szló BME Villamosmérn és s Informatikai Kar

Bevezetés a játékelméletbe Kétszemélyes zérusösszegű mátrixjáték, optimális stratégia

Gráfokkal megoldható hétköznapi problémák

Valószín ségelmélet házi feladatok

Fejezetek a lineáris algebrából PTE-PMMK, Műszaki Informatika Bsc. Dr. Kersner Róbert

2. előadás: További gömbi fogalmak

A gyakorlatok HF-inak megoldása Az 1. gyakorlat HF-inak megoldása. 1. Tagadások:

Mátrixaritmetika. Tartalom:

KOVÁCS BÉLA, MATEMATIKA I.

Lineáris algebra - jegyzet. Kupán Pál

Általános statisztika II. Kriszt, Éva Varga, Edit Kenyeres, Erika Korpás, Attiláné Csernyák, László

Kvantum-hibajavítás II.

Lineáris Algebra gyakorlatok

Egy emelt szintű érettségi feladat kapcsán Ábrahám Gábor, Szeged

Széchenyi István Egyetem, 2005

Miskolci Egyetem. Diszkrét matek I. Vizsga-jegyzet. Hegedűs Ádám Imre

Félévi időbeosztás (nagyjából) házi feladat beadási határidőkkel (pontosan) Valószínűségszámítás 2. matematikusoknak és fizikusoknak, 2009 tavasz

MATEMATIKA JAVÍTÁSI-ÉRTÉKELÉSI ÚTMUTATÓ

Gráfelmélet/Diszkrét Matematika MSc hallgatók számára. Párosítások

matematikai statisztika október 24.

5. gyakorlat. Lineáris leképezések. Tekintsük azt a valós függvényt, amely minden számhoz hozzárendeli az ötszörösét!

MATEMATIKA FELADATGYŰJTEMÉNY

Sztojka Miroszláv LINEÁRIS ALGEBRA Egyetemi jegyzet Ungvár 2013

Soukup Dániel, Matematikus Bsc III. év cím: Témavezető: Szentmiklóssy Zoltán, egyetemi adjunktus

Vektorszámítás Fizika tanárszak I. évfolyam

8. előadás EGYÉNI KERESLET

A 2008/2009. tanévi FIZIKA Országos Középiskolai Tanulmányi Verseny első fordulójának. feladatai és megoldásai fizikából. I.

Bemenet modellezése II.

4. A GYÁRTÁS ÉS GYÁRTÓRENDSZER TERVEZÉSÉNEK ÁLTALÁNOS MODELLJE (Dudás Illés)

Következõ: Lineáris rendszerek jellemzõi és vizsgálatuk. Jelfeldolgozás. Lineáris rendszerek jellemzõi és vizsgálatuk

MATEMATIKA I. RÉSZLETES ÉRETTSÉGI VIZSGAKÖVETELMÉNY A) KOMPETENCIÁK

A MATLAB programozása. Féléves házifeladat. RGBdialog

4. előadás. Vektorok

5. Trigonometria. 2 cos 40 cos 20 sin 20. BC kifejezés pontos értéke?

SZTOCHASZTIKUS MÓDSZEREK

Lineáris Algebra GEMAN 203-B. A három dimenziós tér vektorai, egyenesei, síkjai

Megoldások augusztus 8.

A.26. Hagyományos és korszerű tervezési eljárások

Véletlenített algoritmusok. 4. előadás

Shor kvantum-algoritmusa diszkrét logaritmusra

NUMERIKUS MÓDSZEREK FARAGÓ ISTVÁN HORVÁTH RÓBERT. Ismertető Tartalomjegyzék Pályázati támogatás Gondozó

5. Mérés Transzformátorok

Elektromágneses hullámok - Hullámoptika

LÁNG CSABÁNÉ SZÁMELMÉLET. Példák és feladatok. ELTE IK Budapest javított kiadás

Regressziószámítás alkalmazása kistérségi adatokon

JANUS PANNONIUS TUDOMÁNYEGYETEM. Schipp Ferenc ANALÍZIS I. Sorozatok és sorok

Klasszikus alkalmazások

p j p l = m ( p j ) 1

Az aperturaantennák és méréstechnikájuk

Sztochasztikus folyamatok 1. házi feladat

Bevezetés. Párhuzamos vetítés és tulajdonságai

GAZDASÁGMATEMATIKA KÖZÉPHALADÓ SZINTEN

2. Digitális hálózatok...60

Analízis előadás és gyakorlat vázlat

Mesterséges Intelligencia I. (I602, IB602)

Gyakorló feladatok ZH-ra

Kvantumkriptográfia III.

Kétszemélyes négyes sor játék

15.KÚPKEREKEK MEGMUNKÁLÁSA ÉS SZERSZÁMAI

Forgásfelületek származtatása és ábrázolása

Szeminárium-Rekurziók

Számelméleti feladatok az általános iskolai versenyek tükrében dr. Pintér Ferenc, Nagykanizsa

1 Rendszer alapok. 1.1 Alapfogalmak

Nemetz O.H. Tibor emlékére május 9.

Labor tápegység feszültségének és áramának mérése.

I. A légfékrendszer időszakos vizsgálatához alkalmazható mérő-adatgyűjtő berendezés műszaki

Funkcionálanalízis. Általánosított függvények Disztribúciók el adás május Lineáris funkcionál

Válasz Páles Zsolt opponensi véleményére

Topográfia 7. Topográfiai felmérési technológiák I. Mélykúti, Gábor

Pontszerű test, pontrendszer és merev test egyensúlya és mozgása (Vázlat)

3. Strukturált programok

Matematikai és matematikai statisztikai alapismeretek

Lineáris algebrai módszerek a kombinatorikában

1.1. Gyökök és hatványozás Hatványozás Gyökök Azonosságok Egyenlőtlenségek... 3

GYAKORLAT. 1. Elemi logika, matematikai állítások és következtetések, halmazok (lásd EA-ban is; iskolából ismert)

Tűgörgős csapágy szöghiba érzékenységének vizsgálata I.

Az ablakos problémához

Halmazok. Halmazelméleti lapfogalmak, hatványhalmaz, halmazm veletek, halmazm veletek azonosságai.

Matematikai statisztikai elemzések 6.

1. BEVEZETÉS. - a műtrágyák jellemzői - a gép konstrukciója; - a gép szakszerű beállítása és üzemeltetése.

Matematikai logika Arisztotelész Organon logika feladata Leibniz Boole De Morgan Frege dedukció indukció kijelentésnek

Mikrohullámok vizsgálata. x o

A kvantum-kommunikáció leírása sűrűségmátrix segítségével

Kockázati folyamatok. Sz cs Gábor. Szeged, szi félév. Szegedi Tudományegyetem, Bolyai Intézet

Kőszegi Irén MATEMATIKA. 9. évfolyam


Bevezetés a számításelméletbe I. feladatgyűjtemény. Szeszlér Dávid, Wiener Gábor

V. Gyakorlat: Vasbeton gerendák nyírásvizsgálata Készítették: Friedman Noémi és Dr. Huszár Zsolt

4. sz. Füzet. A hibafa számszerű kiértékelése 2002.

1. Vizsgálat az időtartományban Határozza meg az ábrán vázolt diszkrét idejű hálózat állapotváltozós leírásának normál alakját!

KÖZGAZDASÁGI ALAPISMERETEK (ELMÉLETI GAZDASÁGTAN)

Átírás:

Kvantumszámítógépes algoritmusok Hallgatói jegyzetek Ivanyos Gábor el adásai alapján Debreceni Egyetem, 0 tavaszi félév

Tartalomjegyzék. Bevezetés (Barnák Albert) 3.. n dimenziós kvantumrendszer......................... 3... M veletek állapotokon......................... 4... Kvantum bitek (qubit, kubit)..................... 4..3. Példák egy qubites m veletekre.................... 4.. A BB84 protokoll................................ 5. Két bites rendszerek Simon Béla 7.. Két bites rendszerek.............................. 7... Szorzatállapotok............................ 7... Összefonódott állapotok........................ 8..3. A Bell-állapotok............................. 8..4. em lehet klónozni,........................... 9.. Teleportálás................................... 9 3. Randomizált nyelvosztályok és a BQP(László Árpád) 3 3.. Függvények és nyelvek kapcsolata....................... 3 3.. Az RP nyelvosztály............................... 4 3.3. A BPP nyelvosztály............................... 4 3.4. A BQP nyelvosztály.............................. 5 4. Kvantum-hálózatok (Vitéz László) 7 4.. Mátrixok tenzorszorzata............................ 7 4.. Kvantum-hálózatok............................... 8 4.3. Részleges mérés................................. 9 4.4. Klasszikus számítások kvantumszámítógépen................. 9 4.4.. BPP hálózat szimulációja BQP hálózattal.............. 4.5. Különbség a klasszikus és kvantumgépek között............... 4.5.. Univerzális kapuk............................ 5. A Deutsch-Jozsa algoritmus (nincs jegyzet) 4

6. Grover algoritmusa (Dulai József) 5 6.. A keresési feledat................................ 5 6.. Összetev k.................................... 6 7. Grover II. rész (Fazekas Ádám) 9 7.. Grover algoritmusa............................... 9 7... Egy jó elem keresésére........................ 9 7... Általánosítások több elemre...................... 3 7.. Alsó becslés a keresési feladatra........................ 3 8. Grover III. rész (Vámos Dániel) 3 8.. Grover alsó becslés - folytatás......................... 3 9. Simon algoritmusa (Tóthfalusi Tamás) 36 9.. A feladat..................................... 36 9.. Gyors megoldás kvantumgépen........................ 36 0.A Yao-elv (Labancz Anita) 4 0.. Játék....................................... 4 0.. A minimax-tétel................................. 4 0.3. A Yao-elv bizonyítása.............................. 43.A Simon-probléma klasszikus bonyolultsága (Csernusné Ádámkó Éva) 44.Faktorizáció visszavezetése perióduskeresésre (Almási Gábor) 47 3.Periódus keresése kvantumszámítógéppel (Zsigmond Attila) 5 3.. ulladik megközelítés............................. 5 4.A kvantum Fourier-transzformáció (Varga Péter) 54 4.. QFT modulo -hatvány............................. 54 4.. Uniform szuperpozíció létrehozása....................... 55 5.Sajátértékbecslés (fázisbecslés) (Pleva Péter) 57 5.. Kvantumos Fourier-transzformáció....................... 58 5.. Sajátértékbecslés implementálása....................... 59 6.Perióduskeresés - részletek (Glavosits Tamás) 63 6.. Lánctörtek.................................... 63 6.. Perióduskeresés sajátérték-becsléssel..................... 66

. fejezet Bevezetés A 0.03.-iki el adás alapján lejegyezte Barnák Albert Richard Phillips Feynman 98 felvetése: ki lehet-e használni az informatikában, hogy a kvantum és a valós világ teljesen eltér? Vannak kvantumjelenségek, amelyeket nem lehet klasszikus számítógépen (hatékonyan) szimulálni. Áttörés: Peter Shor 994: egészek faktorizációja kvantum-számítógéppel polinomid ben. Charles H. Benett, Gilles Bassard 984: Kvantum-kriptogáa (kulcscsere). yilvános csatornákon történ titkosításra lehet használni. Jelenleg kvantum-kriptogáa az egyetlen olyan olyan fejlemény a témakörben, amely a gyakorlatban hasznosítható, ami eszközökben létezik. Fotonpárok küldése Gen-tó alatt, svájci népszavazás titkosítása. Kvantumtitkosítás van, kvantumszámítógép egyel re nincs, és nem világos, hogy lesz-e valaha... n dimenziós kvantumrendszer C n A rendszer állapota egy n dimenziós egységvektor: v C n, amelyre v =. Az el adássorozatban a Dirac-féle jelölést (ami sok minden másra is jó) az i-edik bázisvektor jelölésére használjuk: v i = i, ekkor v = n α i i i= Úgy interpretáljuk, hogy a v vektor egyszerre van az összes lehetséges állapotban, valamilyen α i súllyal. Az α i együtthatókat amplitúdóknak nevezzük. Mérés: Ha mérjük (más kifejezéssel meggyeljük) a v vektort, akkor i -t α i valószín séggel kapjuk. Egyenéték állapotok: Ha v = ɛv valamely ɛ C skalárra, akkor méréssel nem tudjuk v-t és v -t megkülönböztetni (részletesebben ld. a kvantum-biteknél). 3

... M veletek állapotokon - lineáris transzformáció legyen az n dimenziós térnek - hossztartó legyen Ha az el z kett teljesül, akkor unitér transzformáció, azaz olyan transzformáció, amelynek U a mátrixára UU = I teljesül, ahol U = U T. Egyenéték állapotok: Ha v = ɛv valamely ɛ C skalárra, akkor méréssel nem tudjuk v-t és v -t megkülönböztetni. (Az ilyen ɛ-t szokás globális fázisként interpretálni.)... Kvantum bitek (qubit, kubit) A C két dimenziós komplex vektortér sztenderd bázisa, 0, Az állapot egy egységvektor: α 0 + β, ahol α + β = a mérésen kívül alkalmazhatunk rájuk unitér transzformációkat...3. Példák egy qubites m veletekre ( ) ( ) ( ) ɛ0 Fázismanipuláció. Sztenderd bázisban felírt mátrixok:,, ɛ ɛ Ezekkel a komponensek amplitúdóját manipuláltuk. Természtesen ɛ i =. A harmadik m velet a másodiknak skalárszorosa, ezért hatása lényegében ugyanaz (egyenéték állapotot eredményez): és ɛ(α 0 + β ) = ɛα 0 + ɛβ ɛα = α ɛβ = β Amib l az következik, hogy ugyanazt a valószín ségi eloszlást kapjuk, mint az ɛ -nal való szorzás el tt. Az Hadamard-transzformáció. velet. Ez a kvantumszámítógépeknél kiemelten fontos m - H = ( ) ahol az a normáló faktor. Tulajdonságok: 4

A H mátrix alakulása a 0 báziselemre vonatkozóan H 0 = ( 0 + ) Ez a 0 és uniform szuperpozíciója. Kezdetben van a 0 állapot, ezt akárhogy mérjük mindig a 0-t kapjuk. 0 H ( 0 + ) megmérjük az uniform szuperpozíciót,, valószín séggel kapjuk 0-t és -t. Determinisztikus állapotból kvantum állapotot csinál, egyszerre van 0-ban és -ben is... ábra. Az Hadamard-transzformáció: tükrözés a.5 fokos egyenesre.. A BB84 protokoll A BB84 egy kvantum kulcscsere séma, amit Charles Bennett és Gilles Brassard fejlesztett ki 984-ben. A sémában Alice el kívánja küldeni Bobnak a saját privát kulcsát. Az eljárás a következ képpen néz ki:. Alice vesz egy véletlen bitet (ami 0 vagy ), ennek megfelel sztenderd bázisvektort Φ = 0 vagy Φ =.. Alice vesz még egy véletlen bitet (ami 0 vagy ), { Φ Φ, ha ez a bit 0 = HΦ, ha ez a bit. 5

3. Alice elküldi a Φ kvantumbitet Bobnak. 4. Bob sorsol egy véletlen bitet: Φ = { Φ, ha ez a bit 0 HΦ, ha ez a bit. 5. Bob megméri a Φ állapotot. 6. Bob megtárgyalja Alice-szal (egy nyilvános csatornán), hogy mi volt Alice második véletlen illetve Bob véletlen bitje. (=) Ha ezek egyeznek, akkor Alice és Bob megegyeztek a bitben. ( ) Ha nem egyeznek, akkor mindketten eldobják és újrapróbálkoznak. A (=) esetben Φ = Φ. A ( ) esetben Φ = HΦ. Ha Φ = 0, akkor Φ = ( 0 + ). Ha pedig Φ =, akkor Φ = ( 0 + ( ) ). Az 5. lépésbeni mérés utáni bit 50-50%-ban egyezik meg Alice els bitjével. Ugyanez vonatkozik a küls meggyel re is. Ha a rossz mérést csinálta, akkor 50-50%-ban 0- bitje van. Csak akkor látta meg a jó bitet, ha is eltalálta Alice második bitjét, erre 50% esélye van. Amikor Bob eltalálta Alice második véletlen bitjét, kett jüknek lett egy "fél" titkos bitje. Ha ezt k -szor ismételjük, akkor k "fél" titkos bit keletkezett. A "fél" tikos bitek hasznosak: k ilyen bit XOR-ját képezve k valószín séggel egy "igazi" tikos bit kapható, de vannak gazdaságosabb módszerek, amelyekkel tényleg kb. k igazi titkos bit nyerhet. 6

. fejezet Két bites rendszerek A 0 március -iki el adás alapján írta Simon Béla.. Két bites rendszerek A standard báziselemek 00 = 0 0 = 0 0 = 0 = négy dimenziós teret alkotnak: C 4 = C C Uniform szuperpozíció: ( 0 0 + 0 + 0 + ) 0 0 -ból ez a következõképp állítható elõ: 0 0 H elsõ részre =... Szorzatállapotok 0 + 0 H második részre ( 0 0 + 0 + 0 + ) 0 0 + + Speciális vektorok a trenzorszorzat-térben φ C, ψ C, amelyek φ ψ alakúak. 7

em csak a báziselemek tenzorszorzata tartozik ide, hanem a báziselemek lineáris kombinációját is képezhetjük az elsõ térbõl, a második térbõl és disztributivitás alapján számolhatjuk a trenzorszorzatuk felírását a standard bázisban.... Összefonódott állapotok em minden vektor szorzatalakú! Például: ( 0 0 + ) nem áll elõ szorzatként. Ez az EinsteinPodolskyRosen-paradoxonból ismert úgynevezett EPR-pár. Az EPR paradoxon a kvantummechanika egyik nevezetes gondolatkísérlete, amelynek eredeti célja az elmélet nemteljességének demonstrálása volt, késõbb pedig a kísérleti ellenõrzésben játszott szerepet. Egy két bites rendszer, ahol a két qubit egymástól távol helyezkedik el, nem szorzatalakúak (az állapotok nem függetlenek). Összefonódott állapot köti össze a két rendszert, annak ellenére, hogy távol vannak egymástól. Látni fogjuk, hogy egy ilyen összefonódott pár segítségével küldhetõ át egy qubit egyik helyrõl a másikra...3. A Bell-állapotok égy dimenziós térben speciális, egymásra mer leges egységvektorok (ortonormált bázist alkotnak). φ + = ( 0 0 + ) φ = ( 0 0 ) ψ + = ( 0 + 0 ) ψ = ( 0 0 ) A Bell-állapotok összefonódott állapotok, mindegyikük a lehet legnagyobb távolságra van a szorzatállapotoktól. A φ + állapot tulajdonképpen az EPR-pár. http://hu.wikipedia.org/wiki/epr-paradoxon 8

..4. em lehet klónozni, azaz egy qubitet nem lehet lemásolni egy másikba. Állítás: U : C x C x unitér transzformáció, hogy φ C φ 0 U φ φ (Azaz nem megy, hogy az üres hely helyére bemásoljuk a φ-t.) Bizonyítás: Alkalmazzuk a kívánt szabályt a következ állapotokra: φ = 0,, ( 0 + ) Ha nullára, illetve egyre végezzük: 0 0 U 0 0 0 U A linearitás miatt a kettõ kombinációjából ( 0 + ) 0 ( 0 0 + ) ( 0 + ) ( 0 + ) Annyire nem egyel k, hogy a baloldalon egy összfonódott állapot áll, míg a jobboldalon egy szorzatállapot.. Teleportálás Egy kvantumbitet szeretnénk átvinni egyik helyrõl a másikra. Klónozás nincs Megmérni nem tudjuk (0-t vagy -et kapunk) Két klasszikus bit átküldésével végezzük (Egy EPR φ + szétosztva) állapot a két rész között A és B között összefonódott bit áll. A rendszer három bites, az elsõ és második bit között szorzatállapot áll. Alize szeretné átküldeni a ρ kvantum-állapotot Bob-nak. ρ = α 0 + β Az összeg tagjai kifejtve: ρ lehet 0 vagy, a φ + szerint két lehetõség: 0 0, vagy, ez négy tagú összeg. 9

.. ábra. Összefonódott bitek.. ábra. égytagú összeg Az irodalomban ismertetett változatokban úgynevezett Bell-mérést alkalmaznak. Ezen a kurzuson a méréseknek csak egy sz k körét deniáltuk, ezért a itt a Bell-mérést helyettesítjük egy transzformációval és a deniált nem egészen általános méréssel. T transzformáció: 0 0 φ + φ 0 ψ + 0 ψ Ezt a T transzformációt az elsõ két qubiten végezzük el, szemléletesen az elsõ qubitet összefonódtatjuk a másodikkal és a harmadikkal. Az eredmény: 0

α 0 0 0 + α 0 + α 0 + α 0 β 0 0 β 0 0 + β 0 0 β Azonos átalakítással kapjuk: 0 0 (α 0 + β ) (α 0 β ) 0 (α + β 0 ) 0 (α β 0 ) A harmadik qubiten álló vektorok egségvektorok, ezért ha az els két bitet megmérjük, a négy lehetséges eredmény (00, 0, 0, ) mindegyike azonos valószínûséggel fordul elõ. Elsõ két bit mérése, átküldése Bob-nak (.3. ábra). Az ábra harmadik oszlopában szerepl transzformációk segítségével Bobnál el áll mind a négy esetben Alice erdeti qubitje. Összességében szükséges volt: EPR pár Két klasszikus bit küldése Alice két bitje a mérések következtében elromlott, Bob EPR pár része lett Alice eredeti qubitje. Általános elv kvantum-kommunikációban: Egy qubit két klasszikus bitet ér.

.3. ábra. Elsõ két bit mérése, átküldése Bob-nak

3. fejezet Randomizált nyelvosztályok A 0 03.-iki el adás alapján írta László Árpád 3.. Függvények és nyelvek kapcsolata Adott az f függvény, amelynek a bemenete legyen x. Feladat: kiszámítani az f(x) értékét. Függvények bonyolultsága helyett nyelvek (igen-nem problémák) bonyolultságát fogjuk vizsgálni. Hogyan lehet áttranszformálni a függvények kiszámítási problémáját nyelvek eldöntési problémájára? I. Ötlet Tekintsük az f(x) függvény bitjeit. Feltételezzük, hogy adott egy korlát a bitek számára vonatkozólag. Ekkor a korláttal megegyez számú felismerési problémára vezetjük vissza a függvény kiszámítását. Ez az eljárás általában nem természetes. Pl.: Egész számok faktorizációja - prímek nyelve Legyen x, f(x) az x prímtényez s felbontása, x P (ha x-nek nincs -t l és x-t l különböz osztója). A prímek nyelve cop : osztó mint tanú P : Pratt-tétele, rekurzív tanú primitív elemekkel corp : Rabin-Miller teszt, SolovayStrassen teszt P : Agrawal-Kayal-Saxena (a prímség eldönthet polinom id ben) 3

3.. Az RP nyelvosztály L RP (Randomized polynomial time), ha M véletlent használó Turing-gép és c > (konstans), hogy ha x L, akkor P r(m elfogadja x-et) c ha x / L, akkor M nem fogadja el x-et Feltételezve, hogy M polinomidej. Tehát az igen válaszban megbízhatunk biztos, hogy nem téved. A nem válasz esetén, kevesebb mint 50% a hiba valószín sége. II. Ötlet Hasonló a függvény bitjeinek kiszámításához, de most próbáljuk megkeresni az x-nek a legkisebb prímosztóját. A nyelv: {(x, y) x-nek y-nál nem nagyobb prímosztója}. Az x szám prímtényez s felbontására és pl. az AKS-prímtesztre támaszkodva könny látni, hogy ez a nyelv P cop -be esik. Az eldöntend probléma az, hogy van-e ilyen x-nek y-nál kisebb prímosztója? Az els iteráció során megnézzük, hogy van-e x-nek a felénél nem nagyobb prím osztója. Ha van akkor kereshetjük tovább, ha nincs akkor az x egy prímszám. A következ lépésben y-nak x negyedét választjuk. Ha van annál kisebb osztója x-nek, a következ y érték x/8 lesz, ha nincs, akkor 3x/8. Így folytatva bináris kereséssel O(log x) menetben megtaláljuk x legkisebb prímosztóját. Fenti pédák mutatják, hogy függvények kiszámítási problémája gyakran hatékonyan visszavezethet eldöntési problémákra. A Las Vegas nyelvosztály LasV egas = RP corp. Tehát van egy RP algoritmusunk aminek a nem válasza nem megbízható, valamit van egy corp algoritmusunk aminek a nem válasza megbízható. Ha a kett t egymás mellé rakjuk, akkor egy olyan algoritmust kapunk, amely 50% valószín séggel megbízható igen vagy nem választ ad, vagy pedig passz, azaz nem sikerült a problémát eldönteni. Az ilyen algoritmus esetén azt mondhatjuk, hogy egyik oldalon sincs hiba. RP illetve corp esetén az igen vagy a nem ágon elképzelhet hiba. 3.3. A BPP nyelvosztály L BP P (Bounded-error probabilistic polynomial), ha M véletlent használó polinomidej Turing-gép és c > (konstans), hogy ha x L, akkor P r(m elfogadja x-et) c 4

ha x / L, akkor P r(m elutasítja x-et) c Tehát legalább c valószín séggel megkapjuk a helyes választ. Ha k alkalommal ismételjük az algoritmust akkor a döntés az ami többször jön ki mint eredmény. (Hiba becslés: Cherno-korlát, annak a valószín ségét becsli meg, hogy egy c > valószín ség esemény k-szor mintavételezve milyen valószín séggel ad a k eset felében vagy még több esetben rossz választ. Ez exponenciálisan kicsi lesz.) Ezek azok a nyelvek amelyek hatékonyan felismerhet k randomizált algoritmussal. Megjegyzés: az RP illetve Las Vegas nyelvosztályok esetében a c > feltevés nem lényeges, tetsz leges c > 0 is megteszi. Ismétléssel a hiba exponenciálisan csökkenthet. A BPP osztály esetében azonban (hacsak nincs váratlan egybeesés a bonyolultsági osztályok között), még az is lényeges, hogy a hiba valószín sége az -t l el van választva: A PP nyelvosztály L P P (Probabilistic polynomial time), ha M véletlent használó polinomidej Turinggép, hogy ha x L, akkor P r(m elfogadja x-et) > Megj.: P P = cop P Állítás: P P P, pl.: SAT P P Bizonyítás: Veszünk egy véletlen behelyettesítést, ha ez kielégíti a formulát akkor elfogadjuk. ha nem akkor 50 50%-ban sorsoluk az elfogadás és az elutasítás között. Tehát ha a formulánk kielégíthet akkor van 50% esélyünk, hogy elfogadjuk plusz még egy exponenciálisan kicsi, hogy éppen egy kielégít behelyettesítés húztunk. 3.4. A BQP nyelvosztály L BQP (Bounded-error quantum polynomial time), ha C n LOGSP ACE-uniform kvantum-áramkörsorozat (ld. a következ fejezetet), amelynek a hossza és a tármérete n O(), valamint c > (konstans), hogy ha x L, akkor P r(c n elfogadja x-et) > c ha x / L, akkor P r(c n elutasítja x-et) > 0 5

A LOGSP CE-uniformitás azt jeleni, hogy van olyan 3 szalagos kitüntetett input-, output-, illetve munkaszalaggal ellátott Turing-gép, amely ha n-t kapja a bemeneti szalagján, az outputszalagra ráírja C n áramkört (a kaput sorozatát a lábak kiosztásával együtt), úgy, hogy közben csak O(log n) munkaterületet használ. Uniformitás nélkül akár (Turing-géppel) eldönthetetlen problémákat is meg tudnánk oldani kvantum (s t, Boole-) hálózattal: legyen L egy tetsz leges bináris nyelv és legyen C n írja a kimeneti bitre azt, hogy vagy 0, aszerint, hogy n bináris számjegyeinek a sorozata benne van-e L-ben vagy sem. 6

4. fejezet Kvantum-hálózatok/áramkörök A 0.04.05.-i el adás alapján lejegyezte Vitéz László 4.. Mátrixok tenzorszorzata. Deníció. Mátrixok tenzorszorzatán azt a mátrixot értjük, amelynek elsõ blokkja úgy áll elõ az adott A és B mátrixokból, hogy az A mátrix elsõ sorának elsõ elemével megszorozzuk a B mátrixot. Ezt követõen az A mátrix elsõ sorának második elemével megszorozzuk a B mátrixot, ami a tenzorszorzat elsõ sor második blokkját adja eredményül. Ezen lépéseket végrehajuk A összes elemére. Az eredménymátrix lesz a tenzorszorzat. Jelölése A B. A denícióból következik, hogy az eredménymátrix dimenziója megegyezik a két összeszorzandó mátrix dimenziójának szorzatával:c s C t C s t. Ezeknek megfelelõen felírhatjuk A tetszõleges, és az I identitásmátrix tenzorszorzatát. a, 0 0 a,n 0 0 0 a,..... 0 0 a,n..... 0 0 0 a, 0 0 a,n A I =....., a n, 0 0 a n,n 0 0 0 a n,..... 0 0 a n,n..... 0 0 0 a n, 0 0 a n,n http://www.math.bme.hu/ sszabo/umerikusszimbolikus/matrixtenzormultiply.pdf 7

valamint a, a, a,n a, a,.... 0 0. a n, a n,n a, a, a,n a, a, 0 I A =...... a n, a n,n.... 0 a, a, a,n a, a, 0 0..... a n, a n,n Mátrixok fent deniált tenzorszorzása nem kommutatív. (Viszont a felcserélt tényez kkel képzett tenzorszozat egy az eredetihez hasonló mátrixot eredményez annak egy permutációmátrix szerinti kunjugáltja lesz.) A tenzorszorzás további tulajdonsága, hogy unitér mátrixok tenzorszorzata is unitér. Ezen tulajdonságot szemlélteti az alábbi példa.. Példa. Tenzorszorozzuk össze a H Hadamard mátrixot saját magával! H = ( ) H H = 4.. Kvantum-hálózatok A kvantum kapuk,,3,4... konstans sok biten lévõ unitér transzformációknak tekinthetõek, melyek U I identitásként hatnak az áramkörön.(a hálózatot kapuk sorozata alkotja, melyek közötti kapcsolat drótozással alakítható ki.) Formálisan: (U l I)(U l I)...(U I)(U I) input munkaterlet(0...0) Itt az U j I jelölés kissé pontatatlan: valójában a teret a j-edik kapu "lábai" és a maradék qbitek szerinti terek tenzorszozatára bontjuk, és eszerint képezzük az U j és az I 8

tenzorszorzatát. Az eredmény egy ψ kvantumállapot, melyet a számolás végén megmérünk. ψ = α s s, azaz s-et α s valószínúséggel kapjuk. yelv felismerésénél nem s {0,} k fontos az egész s, annak csupán a kitüntetett 0-ik bitje, az output bit. 0, p = α 0r valószínûsséggel elutsítjuk a bemenetet r={0,} k output =, p = r={0,} k α r valószínûsséggel elfogadjuk a bemenetet ahol l az idõ, k pedig a tár (circuit) mérete, azaz a felhasznált kapuk darabszáma. 4.3. Részleges mérés Ez a mérési forma olyankor használatos, amikor nem az egész rendszer állapotára, hanem mondjuk csupán egy kitüntetett bit értékére vagyunk kíváncsiak. Még inkább olyankor, amikor tovább nem alkalmazunk a kitüntetett bitet érint kvantum-m veletet. A mérést követõen ezt a bitet már nem tekintjük a rendszer (a "kvantumállapot"), részének. Az eljárás úgy értelmezhet, hogy itt csupán csak a mért bit, nem pedig az egész rendszer kerül ki a kvantumállapotból. A részleges mérés nem része a kurzuson deniált számítási modellnek, arra használjuk, hogy a jelölést egyszer bbé tegyük. A méréskor felbontjuk a rendszert egy, illetve egy k bites rendszer tenzorszorzatára. C k = C C k A ψ vektorunk ennek megfelelõen a következ képpen bontható fel: ϕ 0 = ψ = 0 ϕ 0 + ϕ,ahol r={0,} k α 0r r,és ϕ = r={0,} k α r r Ha csak az elsõ bit érdekelne bennünket, az ϕ 0 valószínûséggel 0, illetve ϕ valószínûséggel lenne. Ha a maradék rendszer sorsát is követni szeretnénk, a mérés során történteket úgy éretelmezzük, a rendszer a 0 ϕ 0 állapotba kerül ϕ 0 valószínúséggel, vagy az ϕ állapotba ϕ valószínûséggel. 4.4. Klasszikus számítások kvantumszámítógépen Ahhoz, hogy a kvantumszámítógépeken számolhassunk szükségünk van mûveletekre. A klasszikus mûveletek (OT,OR,AD,XOR,...) azonban nem feltételnül használhatóak a 9

megszokott értelemben, hisz némelyikük nem ivertálható, azaz nem unitér mûvelet. Ilyen például a VAGY mûvelet. x, y x, x y x, y x, x y, 0,,, Látható, hogy a mûvelet egyszerû kiterjesztése nem célravezetõ, mivel két különbözõ állapotnak ugyanaz lett a képe. A kvantummechanikához igazodó számítások a reverzibilis számítások, melyet Tommaso Tooli, és Charles H. Bennett dolgozott ki a '70-es években. A reverzibilis mûveletek nagyban hasonlítanak a klasszikusakhoz, azonban mint nevükben is benne van, az eredménybõl minden esetben visszaállítható az eredeti állapot. Ezen mûveleteket felfoghatjuk úgy is, mint bitsorozat permutáló mûveleteket. Alapmûveletek: I: X X -identitás mûvelet, a 0-t 0-ba, az -et -be képezi OT: X X -negáció, a 0-t -be, az -et 0-ba képezi XOR: X Y X X Y -kizáró vagy mûvelet, szokták kontrollált negációnak is hívni(cot). Y -t negáljuk, ha X, máskülönben hagyjuk változatlanunl OR: X Y Z X Y (X v Y ) xor Z -vagy mûvelet. Amennyiben Z = 0, akkor X Y.Z miatt a mûvelet invertálható.. Tétel. Legyen f = {0, } n {0, } k T hosszú Boole hálózattal számítható. Ekkor létezik O(T ) hosszú kvantumhálózat, ami X Y X Y xor f(x). Pontosabban a halózat által megvalósított leképezés a következ t tudja: X 0 0 X f(x) 0, ahol az új tag a bal oldalon a mumnkaterületet jelenti. A m velet végrehajtódik, majd visszaállítja a munkaterületet az eredeti állapotába. A munkaterület hossza O(T ), azaz a munkaterületet 0...0 módon lehet szemléletesebben ábrázolni. A munkaterület kitakarítása egy alapvetõen fontos feladat. Szerepe a külvilág elszigetelése, ami viszont nehéz feladat. Ha a munkaterületet nem takarítanánk ki, akkor annak qubitjei a külvilággal összefonódott állapotban maradhatnak, ami nagyon megnehezítené az elvégzett számítás elemzését. Itt jegyezzük meg, hogy a külvilággal való spontán összefonódás megakadályozás az egyik legnehezebb feladat a kvantumszámítógépek építésében. A takarítás menete:. kiindulási állapot: a mûvelet Z-piszkot hagyott a munkaterületen X 0 0 S X f(x) Z 0

. vegyünk fel még egy extra munkaterületet X 0 0 0 S X f(x) Z 0 3. XOR a II és a IV tag közöt X f(x) Z 0 xor X f(x) Z f(x) 4. végezzük el S az I,IV és III targra X f(x) Z f(x) S X f(x) 0 0 A mûvelet bináris kiterjesztésével kajuk meg a kvantumpárhuzamosság metatételét.. Tétel. Ha f(x) T idõben számolható Boolefüggvénnyel, akkor létezik olyan O(T) idejû kvantum hálózat, ami α i x 0 0 α x x f(x) 0 x {0,} n x {0,} n A tétel nem mást mond ki, mint hogy f(x) kvantumhálózattal párhuzamosan számítható ki az összes lehetséges x-re. A (kitakarított) munkaterület szerepeltetését l a továbbiakban eltekintünk, annak mérete a hálózat kapuinak számával arányosra (vagy még kisebbre) vehet. 4.4.. BPP hálózat szimulációja BQP hálózattal BPP hálózat BQP hálózat input x x munka 0 0(nagyobb) véletlen bitek (r db) Z 0 A kvantumhálózatnak a mûködéséhez nagyobb munkaterületre van szükség. Véletlen kvantumbiteket az alábbi módon tudok elõállítani, ami nem más mint Z-k szuperpozíciója. H r r/ Z {0,} Z 4.5. Különbség a klasszikus és kvantumgépek között Klasszikus gépek esetén véges kapukészlettel dolgozhatunk. Kvantumgépeknél --3 qubites unitér transzformációkat használunk, ezek végtelen sokan vannak. Ezen transzformációk azonban helyettesíthetõek bizonyos alkalmas véges készletekkel (ún. univerzális kapukészletekkel): 3. Tétel. Léteznek olyan véges kapukészletek, amelyekre tetszõleges U,,3 qubites unitér transzformáció ɛ-közelíthetõ O( ) kapu szorzatával a véges készletbõl. ɛ Itt ɛ-közelíthetõségen azt értjük, hogy U -t alkalmazva bármilyen v vektorra, majdnem ugyanazt az eredményt kapom, mint ha U-t alkalmazuk volna v-re. A hiba nagysága ɛ. Formálisan: U v Uv < ɛ, v =

Ha a számításban a T darab kaput egyenként ɛ-közelítõvel helyettesítjük, akkor a végeredményben legfeljebb T ɛ eltérés tapasztalható. Így δ összhibához az egyes lépésekben δ T -közelítés szükséges. Ez a kapuk számának O( T )-szoros növelésével érhet el. δ Tegyük fel, hogy a ψ helyett a ψ állapotot kapjuk, ahol ψ ψ < δ. Ekkor ψ = 0 ϕ 0 + ϕ ψ = 0 ϕ 0 + ϕ A ψ állapot esetén 0-t a ϕ 0, ψ esetén pedig ϕ 0 valószínûséggel kapjuk meg az els bit mérése eredményeként. δ ψ ψ = 0 (ϕ 0 ϕ 0) + (ϕ ϕ ) = ϕ 0 ϕ 0 + ϕ ϕ (az utolsó egyenl ség azért igaz, mert a két vektor merõleges egymásra). Innen és így Innen ϕ 0 ϕ 0 δ ϕ ϕ δ ϕ 0 ϕ 0 δ ϕ ϕ δ ϕ 0 ϕ 0 δ ϕ ϕ δ Tegyük fel, hogy φ esetén a helyes válasz valószín sége legalább C >. Ekkor a fentiak miatt φ esetén a helyes válasz valószín sége legalább C δ. Így, ha δ < C, akkor C helyett legalább C = C δ > valószín séggel kapunk helyes választ. 4.5.. Univerzális kapuk Fentebb kimondtuk, hogy alkamlas véges kapukészletekkel ugyanaz a nyelv deniálható, mint végtelennel. Olyan kapukészletet, mellyel közelíteni tudunk,,3 bites tetszõleges kapukat univerzális kapuknak nevezzük. Ilyen univerzális kapukészlet:. Elsõ kísérlet: Az ún. Tooli kapu egy speciális 3 bites kapu (CCOT) még néhány egy bites kaput

. Második, szebb kapukészlet COT X Y X X xor Y H, az Hadamard-transzformáció ( ) 0, ahol Z =, azaz Z egy abszolút érték komplex szám 0 Z 3

5. fejezet A Deutsch-Jozsa algoritmus 4

6. fejezet Grover algoritmusa A 00.04.-iki el adás alapján írta Dulai József Lov Grover 996 -ban publikálta ezt az algoritmust. 6.. A keresési feledat Adva van egy (kett hatványa vagy kett hatványára kerekített érték): n. Van egy f függvényünk{,..., } {0, }.!x 0 {,..., }, aholf(x 0 ) = (egy ilyen elem van). A többi n- elem nulla, azazf(x) = 0. Az f orákulummal adott: x > y > Ux 0 x > y XOR f(x) >, x és y n qubites. Ezek az el írt módon viselkednek. A feladatunk, hogy keressük meg az x 0 t!.. Klasszikusan: legrosszabb esetben ( ) kérdés kell. Ez determinisztikus.. Randomizáltan: O() a hiba valószín ségét l függ en ez elégséges. Minimum Ω()kell. Heurisztikusan igazolva: esetén, mit l függ en választhatjuk ki, valamint véletlen esetet 00 alkalmazó algoritmust használva. Sorsoljuk az értéket. Véletlen beleesik az -ba, így 00 az esély, hogy megtaláljuk. 00 Kvantum esetén: Párhuzamosan tesszük fel a kérdéseket. Tehát a szerkezetünkbe behelyezünk egy kvantumállapotot és adott számú m veletet, majd egy mérést végzünk el rajta. 5

6.. Összetev k. Tükrözések.. Forgatások. Tükrözés() f- et számítsuk ki "fázisban", a múlt órán tanultak alapján x > Tx 0 ( ) f(x) x >. A T x0 leképezés az x 0 >-re mer leges hipersíkra való tükrözés:. Ha x x 0, akkor a T x0 az x -nek megfelel x > bázisvektorra a T x0 x >= x >. Ha x = x 0, akkor T x0 x >= x > Az x 0 -ra mer leges bázisvektorokat önmagukba viszi, az x 0 -ra párhuzamos vektorokat az ellentetjébe viszi. 6.. ábra. Hipersíkra való tükrözés() A T x0 > transzformáció az x 0 > hipersíkra való tükrözés. Tükrözés(): A Φ = x > x=0 uniform szuperpozícióra hipersíkra való T Φ tükrözés, A T Φ implementációja = n esetén: H n 0 > Φ. + H n 0 >= Φ. 6

6.. ábra. Hipersíkra való tükrözés() + H n Φ = 0 > A terünk, amiben dolgozunk: = n, azaz n darab dimenziós térnek a tenzorszorzata. Az n darab Hadamard tarnszormáció tenzorszorzatát jelöljük H n -nel. A csupa nulla bitet, az összes összes uniform szuperpozícióba fogja vinni. A n darab qubitre történ Hadaramd-transzformáció egymás utáni alkalmazásával kapható, bonyolultsága tehát: n. T 0> = 0 > -re való tükrözés. Fix transzformáció, békén hagyja x >-et, ha x 0, a nem nulla, egyébként tükrözi (el jelet kap, ha x 0) { x >,ha x 0 T 0> = x >,ha x=0 Hatékonyan implementálható n qubites m velet. Két H n -b l és a T 0> -ból összerakjuk a Φ -re való tükrözést:. Van egy vektorunk (v), ezt szeretnénk Φ-re mer leges hipersíkra tükrözni. A H n tarnszformáció a csupa nullából álló vektorba viszi Φ vektort és ezt T 0> -val tükrözzük, majd ezek után visszavisszük az eredeti állapotba. Azaz: v H n T 0> H n Ellen rizhet, hogy. A linearitás miatt így T Φ v = H n T 0> H n v, ha v = 0 >,..., > T Φ v = H n T 0> H n Tehát T Φ hatékonyan megvalósítható O(n) m velettel Van két tükrözésünk az orákulum által: T x0 és T Φ. Ezek hipersíkra való tükrözések. Mi van akkor, ha két tükrözést egymás után hajtjuk végre? 7

T v v re való tükrözés. T v v re való tükrözés. Mi történik 3d térben? - Két sík metszete egyenes lesz. Csupa x pontból áll. v és v xen maradnak. Olyan transzformáció, aminél a vektorok nullától vett távolsága nem változik. Ez egy forgatás lesz. A forgatás szöge α, ahol α a két tükrözés tengelye (ill. ezek normálvektora) átlal befogott szög, Általában v és v metszete - dimenziós altér xen marad, a rá mer leges síkon a normálvektorok szögének szeresével való forgatás történik. 8

7. fejezet Grover II. rész A 0.04.-iki el adás alapján írta Fazekas Ádám 7.. Grover algoritmusa 7... Egy jó elem keresésére Kiindulunk a Φ uniform szuperpozícióból, és alkalmazzuk rá a két forgatás, T x0 és T Φ, szorzatát. Ezen mûvelet alkalmazsával a Φ és x 0 által kifeszített síkon maradunk és azt reméljük, hogy többszöri alkalmazásával eljutunk az x 0 -ba. Sajnos ez egy nem stabil forgatás: Az x 0 és Φ szögének koszinusza a két egységvektor skalárszorzata: így cos α = ( x 0, Φ) Φ = x, x=0 cos α = Mivel nagy, ezért α a derékszöghöz áll közel. A forgatási mûveletünk mértéke α, ezért az 80 -hoz áll közel. A 360 -os forgatáshoz kétszer kellene elvégezni a mûveletet, de ehhelyett egy hatékonyabb megoldást alkalmazunk, a T x0 T Φ forgatás helyett a T Φ T x0 transzformációt alkalmazzuk. A Φ és x 0 által kifeszített síkra megszorítva az egy π α szöggel történ forgatás. β = π α sin β = β 9

7.. ábra. Forgatás szöge β jól közelíti -t..) Forgatás: π α-val, azaz π (π β) vagyis β szöggel. 7.. ábra. Forgatás Indulunk Φ-bõl és β forgatásokkal megyünk x 0 felé. α π, így α β π = π 4 Tehát π lépésben nagyon közel jutunk x 4 0 -hoz, jelöljük ezt az állapotot ψ-vel. ψ x 0 kicsi. Ekkor α x0 és ψ = x=0 α x x 0, ahol α x R x x 0 α x kicsi, tehát -nél bõven nagyobb valószínûséggel kapunk x 0 -t ha a ψ állapotot megmérjük. O( )-nél kevesebb lépésre volt szükség, csak számolási mûveletek és egy orákulumhoz fordulás segítségével. Az algoritmus teljesítménye sajnos nem javítható lényegesen, de jól általánosítható. 30

7... Általánosítások több elemre Egy jó elem helyett M jó elemünk van: Létezik pontosan M darab x,..., x M, hogy f(x ) = = f(x M ) =, a többi x-re pedig f(x) = 0 úgy, hogy M <<.. Keressünk egy jó elemet. Közelítsük a jó elemek uniform szuperpozícióját Mindkét változat megoldható, a bonyolultsága O( ), ennyi kvantumkérdés szükséges. M = 4 esetében pont egy kérdésnyit forgatunk. 4 hatványaira pontosan kijön a jó elemek uniform szuperpozíciója, egyébként csak közelít leg. 7.. Alsó becslés a keresési feladatra elem közül egy jó, az x 0. Ennek a megkeresésére felhasználjuk az U x0 orákulumot. { x y ha x x0 U x0 x y = x OTy ha x = x 0 Φ x0 = V L+ U x0 V L U x0... V U x0 V U x0 0 Valamilyen denit ( 0 ) állapotból indulunk ki és minden számolási lépés (V i ) után van egy orákulumhívás (U x0. Φ x0 = x=0 a x x Ezt megmérve, x valószínûsége az a x (az a x hosszának a négyzete). Ha x 0 helyett egy x 0-t alkalmazunk, akkor Φ x 0 = x=0 a x x kapunk, és U x0 helyett U x 0 -t használjuk. Ha helyesen akarjuk megmondani az x 0 és x 0 -t, akkor Φ x 0 és Φ x 0 szögének minnél jobban közelítenie kell a derékszöget, tehát a két vektor távolsága nem lehet túl kicsi. Az Φ x0 és Φ x 0 távolságát úgy fogjuk megbecsülni, hogy mindkett t összevetjük azzaz az állapottal, ami akkor jön létre, amikor az U x0 illetve U x 0 orákulumot az "üres" orákulummal, az identikus transzformációval ( x y x y ) helyettesítjük. 3

8. fejezet Grover III. rész A 0.04.-iki el?adás alapján írta Vámos Dániel 8.. Grover alsó becslés - folytatás Φ x0 = U x0 V L+ U x0 V L U x0 V U x0 V 0 >, Φ x 0 = U x 0 V L+ U x 0 V L U x 0 V U x 0 V 0 >, Tegyük fel, hogy L <<. Az orákulumot identitásra cseréljük: V L+ IV L I...IV IV 0 >. Ebben a sorozatban az i-edik lineáris elõtti állapotot jelöljük a következ képp: y=0 x=0 a i (x, y) x > y >, ahol az "a? (??)" az állapotnak az a része, ami nem az orákulum inputja. Ezt átírva kapjuk: x=0 b i (x) x >, ahol b i (x) = a i (x, 0) 0 > +a i (x, ) > Mivel x=0 b ix minden egyes i-re, így Ezért L i= x=0 x=0 b i x = L L b i (x) = L i= 3

Itt a belsõ összegek átlaga L Ilyen feltétel mellett x 0 x 0, amelyekre a megfelel bels összzeg legfeljebb az átlag kétszerese: L b i (x 0 ) L L, b i (x 0 ) L i= e két összeg esetén kapjuk meg. Van egy korlátunk a hossznégyzet összegre és ebbõl megbecsülni a hossznégyzetet a következõ módon lehet: L i= b i (x 0 ) = L L i= L b i (x 0 ) L i= számtani négyzetes közepe L L = L Tehát: - x o ra és x 0 ra igazak: L i= b i(x 0 ) L L b i (x 0 ) i= L és L b i (x 0) i= L Hamis futás Kiindultunk a nulla állapotból. Aztán V,orákulumhívás(I), V,..., V L IV L+. U L+ IV L,..., IV IV 0 > } {{ } } A {{ } A Itt A, A,... állapotokat jelölnek és az A i+n úgy írhatjuk fel, hogy A i+ = IV i+ A i és aza 0 = 0 > rekurziónk van. ormális futás Ha a rejtett elem x 0, akkor az identitás: V L+ U x0 V L... U x0 V U x0 V 0 >. } {{ } B } {{ } B Megpróbáljuk a B i és A i különbségét megbecsülni: B i A i =? B 0 A 0 = 0 33

B i+ A i+ = U x0 V i+ B i IV i+ A i = U x0 V i+ (B i A i ) + U x0 V i+ A i V i+ A i = B i+ A i+ (U x0 I)V i A i, ahol V i A i = x b i(x) x >. Erre alkalmazhatjuk mind az identitást, mind az U x0 -t: (U x0 I)V i A i Ezért Ha x x 0, akkor azu x0 és I egyenlõ. Ekkor (U x0 b i (x 0 ) x 0 > b i (x 0 x 0 >) = b i (x 0 )(a i (x 0,0 ) 0 > +a i (x 0, ) > U x0 b i (x 0 ) x 0 >= (a i (x 00 ) > +(x 0 ) 0 >) 0 >. U x0 b i (x 0 ) x 0 > b i (x 0 ) x 0 > = a i (x 0,0 ) > +a i (x 0, ) 0 > a i (x 0,0 ) 0 > a i (x 0, ) > = a i (x 0,0 ) a i (x 0, ) Az egész hossza: a i (x 0,0 ) a i (x 0, ) és ez becsülhetõ a b i (x 0 ) hossz segítségével: Becsüljünk a hosszak összegével: ( a i (x 0,0 ) + a i (x 0, ) ) ( a i (x 0,0 ) + a i (x 0, ) ) b i (x 0 ) Indukcióval kapjuk, hogy B L A L C L b i (x 0 ) i= alkalmas C > 0 konstanssal. Az x 0 választása miatt ekkor B L A L C L. Végeredmények. x 0 -ás eset:v L+ B L hamis eset: V L+ A L különbség: V L+ (B L A L ) C L, ahol V L+ unitér (hossztartó).. x 0 helyett x 0 esetében: különbsége C L 3. x 0 -ás és az x L 0- ás eset különbsége(távolsága):túl kicsi, azaz sokkal kisebb, mint C,mert az L sokkal kisebb, mint a (L << ) Konklúzió: * Ez ellentmondás (amiatt, hogy L << ). 34

Megjegyzések: * Az egyes lépésekben elkövetett hibák összeadódnak. * O( ) méret adatbázissal nem lehet helyettesíteni a lekérdezéseket. * em elég x szuperpozícióra feltenni a kérdést. * A nyereség a polinomiálisnál nem jobb. 35

9. fejezet Simon algoritmusa A 0. 04. 9.-ei el adás alapján készítette Tóthfalusi Tamás 9.. A feladat Adott (orákulummal) egy olyan f{0, } n {0, } n függvény, amely azt tudja, hogy u ɛ {0, } n \ {0...0}, hogy f(x) = f(y) x = y vagy x = y XOR u. A kvantum orákulum: U f : x 0 x f(x). A feladat, hogy keressük meg az u-t! 9.. Gyors megoldás kvantumgépen Kiindulunk a következ két regiszteres kezd állapotból. Alkalmazzuk az els registerre az Hadamard transzformációt. Ezzel a 0, sorozatoknak az uniform szuperpozícióját nyerjük. 0 0 H n n xɛ{0,} n x 0 U f Ezután meghívjuk az U f uniform transzformációt, azaz párhuzamosan lekérdezzük az összes függvény értékét: U f n xɛ{0,} n x f(x) Következ lépésben csoportosítjuk f értékei szerint az adatokat. Azokat gy jtjük össze, amikor az f(x) értéke egy el re meghatározott y. n y ( xɛ{0,} x ) y = 36

n y ( ( x y + x y XOR u )), ahol x y = min{x f(x) = y}. Rögzített y-ra: ( x y + x y XOR u ) C n Ezen vektor tulajdonsága, hogy u-val XOR-ra invariáns. Jelölés : (XOR u ) Ezen tulajdonság segítségével próbálunk az u-ra valamilyen információt nyerni. Tény: C n térnek van olyan ortonormált bázisa, amelynek elemei az összes XOR u típusú transzformáció közös sajátvektorai. Tehát minden egyes báziselem sajátvektor. Ha ebben a bázisban felírjuk ezt az invariáns állapotot: ( x y + x y XOR u ), akkor csak olyan bázisvektoroknak lesz nem nulla együtthatója, amelyeknél az XOR u megfelel sajátértéke. Ezen vektorok adják az információt az u-ról. XOR u a következ t tudja: x xxoru XORu : x x a báziselemeket xen tartja, vagyis ez az identikus lineáris transzformáció. Legyen M egy mátrix, f(m) = 0 egy f polinomra. λ sajátértéke az M-nek => f(λ) = 0. v vektor, hogy Mv = λv, Iv = v, M v = λ v Bizonyítás: M v = M(Mv) = M(λv) = λ(mv) = λλv = λ v.... M k v = λ k v = f(m)v = f(λ)v azaz f(m) = 0, f(m)v = 0. Mivel f(m) = 0 = 0v = f(λ)v = f(λ)=0. XOR u - I = 0 λ = 0, minden λ sajátértékre. λ = ±. A 0-val való XOR-olásnáll minden sajátérték lesz, egyébként a sajátértékek fele +, fele - lesz, a vektorok párban vannak. = A teret dimenziós alterek összegére lehet felbontani. A felbontásból olyan sajátvektorokat kapunk, amelyek meghatározzák az u-t. 37

n = eset standard bázis: 0 XOR-oló m veletünk van: XOR 0 = I, XOR = 0. Ha felrajzoljuk: Az XOR transzformáció a következ két vektort cseréli meg: Az XOR a szögfelez re való tükrözés. XOR sajátvektorai valamilyen olyan vektor, amely a tükröz tengelyre esik és 0 vagy sajátértékkel rendelkezik. 0 sajátérték: sajátérték: ( 0 + ) ( 0 ) bites esetben: A közös sajátbázisba való transzformáció az Hadamard transzformáció. (Vagyis ha fel szeretnénk írni egy, a standard bázisban adott vektort a sajátvektorokkal adott rendszerben, akkor az Hadamard transzformációt kell alkalmazni a koordinátákra.) n-bites esetben: H n -et használjuk, mely n biten bitenkénti Hadamard transzformációk egymásutániságát jelenti. H n számolása képlettel: H n x =? H n x = y={0,} n α x,y y. n = esetben: H 0 = ( 0 + ) 38

H = ( 0 ) α x,y =, ha x = 0, vagy y = 0 α x,y = ( ), ha x = y = Másképpen: α x,y = ( ) x y n = esetben: x = (x, x), y = (y, y). x = x x y = y y Jelöljük (H H) x,y -nal a H H transzformácó mátrixának az "x-edik" sorának "y-adik" elemét. Ekkor: (H H) x,y = H x,y H x,y = ( )x y ( ) x y = ( )xy xy, ahol = XOR. Általában a következ képpen írható fel az Hadamard transzformáció: H n x,y = n ( ) P n i= x iy i mod Legyen (x,y) = n i= x iy i mod Másképpen fogalmazva: H n x = n zɛ{0,} ( ) (x,y) z n Folytatjuk tovább a számítást: n y ( x y + x y u ) y H n Az els regiszteren dolgozunk. n y ( n+ zɛ{0,} (( ) (xy,z) + ( ) (xy u,z) ) z ) y n Kiszámoljuk, hogy mely együtthatók lesznek 0-ák illetve nem 0-ák: ( ) (xy,z) + ( ) (xy u,z) = 0 ax (u, z) mod esetben, különben n y ( ± n z u z ) y, ahol u = {zɛ{0, } n u i z i = 0 mod }. ±, így az összeg: n 39

Mérés: Megmérjük az eredményt. Azt látjuk, hogy olyan (z,y) pár, amelyre teljesül, hogy (z,y)=0. Ezek a párok egyforma valószín séggel jönnek el. Els tagként az olyan z-k, melyekre (z,u) = 0 (mod ). Ezek egyenletes valószín séggel jönnek ki. Az eredmény tehát az u egy véletlen eleme. Ezt ismételev O(nlog n)-szer, olyan elemeket kapunk u -b l, amelyek együtt nagy valószín séggel generálják az u -t (generált altér). Generált altér: az a legsz kebb altér, amely minden vektorunkat tartalmazza. Összes lehetséges összeget képezve kapjuk meg a generált altér vektorait. Ezen vektorokra mer leges vektorok csak a 0 és az u. Összefoglalva 0 0 H n Uf H n Mrs } O(n log n) -szer ismételve. Egy ilyen sorozatban bit információt nyerünk az ismeretlen u-ról, O(n log n) lépésben pedig az összes bitjér l információt nyerünk. Ez n-ben polinomiális m velet, amellyel nagy valószín séggel meg tudjuk határozni a titkos u vektort. Az y képletekne keresztül történ hurcolása helyett alkalmazhattunk volna részleges mérést is, ugyanazt az eredményt kaptuk volna: 0 0 H n Uf Mérés H n Mérés 40

0. fejezet A Yao-elv A 0 04.9.-ei és 6.-ai el adás alapján készítette Labancz Anita A Yao-elv A legjobb randomizált algoritmus költsége a számára a legrosszabb inputon egyenl vagy ugyanaz, mint a legrosszabb véletlen eloszlású inputon vett legjobb determinisztikus algoritmus költsége. Értlmez megjegyzések. Az algoritmus korekt (jó), ha legalább ε valszín séggel adjon korrekt (jó) választ(ez a randomizáltra vonatkozik).. Az algoritmus az eloszlás szerint súlyozva, az input legalább ε részén adjon korrekt választ(ez a determinisztikusra vonatkozik). 0.. Játék Két résztvev s zérusösszeg játék, ahol adva van egy A mátrixunk, A = (a ij ), ami K L-es méret. Van egy S sorjátékosunk és egy O oszlopjátékosunk. Ha S az i-edik sort választja és az O a j-edik oszlopot, akkor az S megnyeri az a ij mennyiség aranyat, az O pedig elveszti ezt a mennyiség aranyat(ett l lesz zérusösszeg a játék). Példa. A fociban a -es rúgás. S lesz a rúgó, O pedig a kapus. Az A mátrixunk a következ lesz: ( ) 0 A = 0 A sor illetve oszlopindex: bal-jobb incs gól = { abal,bal S nyeresége 0 a jobb,jobb O vesztesége 0 4

Gól = { abal,jobb S nyeresége a jobb,bal S nyeresége Kevert stratégia: Az S játékos startégiája olyan x = R K, ahol x i 0 (x i valószín séggel választja az i-dik sort) és x i =. Az O játékosé pedig y R L (y j 0, y j =.) S nyeresége a ij x i y j. S abban érdekelt, hogy ez a mennyiség nagy legyen. O vesztesége aij x i y j. O abban érdekelt, hogy ez a mennyiség kicsi maradjon. S rögzített x stratégiája esetén O a legjobb stratégiáját akkor játssza, ha a következ minimumot keresi: K n L ( K ) L min a ij x i y j = min y y j a ij x i = min j a ij x i y i= j= j= i= i= S elérhet maximális nyeresége ( ) max x min y a ij x i y j = = max x min j a ij x i i,j i O elérhet minimum vesztesége ( ) min y max x a ij x i y j = = min y max j a ij y j i,j j Példa. A tizenegyesrúgásoknál mindkét fél akkor jár a lgjobban, ha / / valószín - séggel választ a "bal-jobb" közül. 0.. A minimax-tétel (eumann János 98) 4

max y min x a ij x i y j = max x min y a ij x i y j i,j A bels max esetén ismert y minden egyes koordinátáját x-ben kell maximalizálni. Tiszta bels stratégiára átfogalmazva x i alapján kell a számok súlyozott közepét venni. min max i K aij y j y i,j max min j L aij x i x 0.3. A Yao-elv bizonyítása Alkalmazzuk a minimax-tételt a következ szituációban: Legyen 0 < ɛ <. Olyan algoritmusokat szeretnénk optimalizálni, amelyek legfeljebb ɛ hibával m ködnek. A algoritmusok költsége legyen c, amelyek determinisztikusak. Két játékos játszik, L lehetséges inputtal. Az ilyen algoritmusok közül x súlyozás szerint választ egyet véletlenül. O játékos n lehetséges bemenetek közül y súlyozás szerint választ egyet. {, ha i-edik algoritmus j-edik inputon helyes a ij = 0, egyébként Erre alkalmazva a Minimax-tételt: P y (legjobb i-edik algoritmus helyes értéket ad) = min y max i K aij y j P y (a legrosszabb algoritmus értékét adja) = max x min j L aij x i Miért jó nekünk ez? Könnyebb kezelni azokat az algoritmusokat, amik determinisztikusak és csak az inputjuk véletlen. 43

. fejezet A Simon-probléma klasszikus bonyolultsága A 0 04.6-iki el adás alapján írta Csernusné Ádámkó Éva Simon probléma: Adott egy f függvény, { f : {0, } n {0, } n, úgy, hogy! u = {0, } n, hogy x = y vagy f(x) = f(y) x = (x XOR y). Igazolni akarjuk a következõt: A legjobb randomizált algoritmus költsége Ω( n ), vagyis annak költsége, hogy hány helyen kérdezzük meg f(x)-et. Megkérdezzük f(x)-et helyen - db x-re - például ott, ahol << n, és ha nem találunk ütközést, vagyis x,..., x -re f(x i ) f(x j ) ha i j, akkor nagyon sok lehetséges tippünk marad az u-ra. Az összes olyan u szóba jöhet, ami nem (x i XOR x j ) alakú. A játék arra megy ki, hogy ne találjunk ütközést a lekérdezettek között. Legyen < n, vagyis < n így biztosan sok lesz a lekérdezettek között amelynél nem lesz ütközés. Determinisztikus algoritmus. - Tfh. legfeljebb kérdést teszünk fel, ahol < 4 n "agyon gonosz" bemenet. - egyenletes valószín séggel véletlenül választunk egy u vektort, úgy hogy uɛ{0, } n \ (0,..., 0), és ezután egy egyen;etes valószín séggel egy f függvényt a következõképpen (x, x XOR y) f(x)ɛ{(0, )} n (különbözõhöz különbözõt rendel) 44

- az egyenletes eloszlás "elég gonosz" lesz - azt állítjuk, hogy ha ilyen kevés kérdést tesz fel, akkor az algoritmus jó eséllyel hibázik, - Világos, hogy ha nincs ütközés, akkor legalább valószínûséggel fog hibázni - tegyük fel, hogy az algoritmus elsõ k lépésében a kérdések az x, x,..., x k helyekre vonatkoznak - ha eddig volt ütközés, (vagyis valamely i j-re f(x i ) = f(x j )), akkor az algoritmus nyert és válaszként az egyetlen lehetõség az u = (x i XOR x j ) - különben azt mondjuk, hogy x, x,..., x k egy ütközésmentes sorozat - következik a k + -edik lépés: az algoritmus választ egy x k+ helyet, ahol megkérdezi a függvényértéket, ez függ az f(x ), f(x ),..., f(x k ) értékektõl (ez indirekt függ a véletlentõl is) próbáljuk meg megbecsülni azt a valószínûséget, hogy ez a sorozat ütközésmentes, feltéve, hogy az elsõ k ütközésmentes: P rob(x, x,..., x k+ ütközésmentes x, x,..., x k ütközésmentes ) = k n ( ) k k, ugyanis n k < < ( ) 4 n k << 8 n ( ) k + < n P rob (x, x,..., x ütközésmentes ) = k= k= P rob(x, x,..., x k+ ütközésmentes x, x,..., x k ütközésmentes ) ( k ) n k= k n ( ) = n n 45

- tehát, ha < δ n akkor < δ n, ami azt jelenti, hogy δ valószínûséggel ütközésmentes az (x, x,..., x ) sorozat, és marad n ( ) > lehetõség az u-ra, ami azt jelenti, hogy -nél sokkal nagyobb a hiba valószínûsége. 46

. fejezet Faktorizáció visszavezetése perióduskeresésre A 0. április 6-i el adás alapján készítette Almási Gábor Törzstényez s felbontás: könnyen visszavezethet a valódi osztó keresésére. Az egésznek az alapja olyan (x, y) párnak a keresése, amelyre teljesül, hogy x y mod m, ahol az m számot szeretnénk bontani úgy, hogy A legtöbb ismert faktorizáló algoritmus ( x ±y mod m. x (y ), x, de x ±. Ebben az esetben lnko(m, x ) valódi osztója m-nek. Miért igaz ez? Ugyanis (.) x = (x + )(x ) osztható m-mel, de annak egyik tényez je sem osztható m-mel, ezért (.) lnko((x ), m) m és (.3) lnko((x ), m) különben az (x + ) osztható lenne m-mel. A legnagyobb közös osztót az Euklideszi algoritmussal számíthatjuk ki: O log m, tehát jól járunk, ha találunk megfelel x-et, erre irányul a kvantum-algoritmus (vagy véletlenül mellékesetként talál egy osztót). 47

Legyen a Z és tegyük fel, hogy az a relatív prím az m-hez, azaz lnko(a, m) =. Ekkor létezik egy olyan r > 0 egész, hogy az a r mod m a legkisebb ilyen r, ezt úgy hívjuk, hogy az a multiplikatív rendje mod m. Jelölés: o m (a). Az összes ilyen r az o m (a) többszöröse, s t x f(x) = a x mod m, f(x) = f(y) x y osztható o m (a)-val Az x-b l hogyan számolható hatékonyan az f(x)? Ez (lg(x)+lg(n)) O() id ben számítható. Az x bitjeinek és n bitjeinek polinomjában számolható gyorshatványozással:, a, a mod m, a 4 mod m,..., a k mod m (mindig redukálunk mod m-mel), majd az alkalmasakat összeszorozzuk. Melyek az alkalmasak? Azok, amelyekre teljesül, hogy x megfelel bináris számjegye. Tehát van egy függvényünk, amelynek periódusa nem más, mint a-nak a multiplikatív rendje, azaz o m (a). Deníció: legyen f : Z {l hosszú 0- sorozatok}. Ekkor az f periodikus egy P periódus szerint, ha f(x) = f(y) P (x y) (P > 0 egész). Tegyük fel, hogy az f(x) hatékonyan (l+lg(x)) O() polinomjában számolható. Ekkor mint kés bb látni fogjuk létezik (l + lg x) O() idej kvantum-algoritmus a P periódus kiszámítására. Tehát a periódus polinom id ben számolható, ezt alkalmazzuk a faktorizációnál. Alkalmazás: f a (x) = a x mod m (látjuk, hogy hatékonyan számolható). o m (a) (periódus) lg(m) O() -ben számolható kvantum-algoritmussal. Ha ez igaz, akkor hogyan tudunk ebb l faktorizálni? Legyen m Z, m > 0. Ekkor feltehet, hogy m páratlan feltehet, hogy m nem teljes hatvány különben az m = x vagy m = x 3 vagy... vagy m = x k (k < log (m)) Szervezhetünk egy ciklust: k =,..., lg(m) (m = x k ). Ha ez igaz, akkor hogyan tudjuk meghatározni x-et? Ha m = x k, akkor x megkereshet O lg(m) lépésben bináris kereséssel. Állítás: ha m olyan, hogy m = p α... p αs s, ahol p i páratlan prímszám, s >, akkor véve egy egyenletesen véletlen 0 < a < m számra valószín séggel, vagy lnko(a, m) ±, vagy o m (a) páros és a om(a) ± mod m. Egy ilyen a-ra 48

. eset: lnko(a, m) valódi osztója m-nek. eset: x = a om(a) -vek: x és x ± mod m, tehát lnko((x ), m) valódi osztója m-nek; az x gyorshatványozással hatékonyan számolható! Az eljárás tehát a következ lépésekb l áll:. veszünk egy véletlen a-t. ha nem relatív prím, akkor nyertünk különben kiszámoljuk a rendjét ha páratlan passz ha a om(a) ± passz különben nyertünk O(lg ) ismétléssel a nyerés valószín sége ɛ fölé tehet. ɛ Az állítást igazoljuk (véletlen a-ra, a esemény bekövetkeztének valószín sége legalább ): elég azt igazolni, hogy olyan a-kra, amelyekre lnko(a, m) =, az esetek legalább felében fennáll az o m (a)-s feltétel. Ehhez segítségül hívjuk a kínai maradéktétel egy specializált és er sebb változatát, amely a következ t mondja ki: legyenek a,..., a s olyanok, hogy 0 a i < p α i i, és p i nem osztja a i -t. Ekkor létezik egyértelm en olyan 0 a < m, hogy az a a i mod p α i i és lnko(a, m) =. Azaz amit felhasználunk: véletlen a mod m véletlen (a,..., a m )(mod p α,..., p αs s ). Tétel: ha p páratlan prím, akkor létezik olyan b, hogy o p α(b) = p α p α. Következmény: egy ilyen b-vel a véletlen p α -hoz relatív prím számok nem mások, mint b z mod p α, ahol z egy véletlen 0 z < p α p α (b primitív gyök). Legyenek p i -re b i -k (azaz a primitív gyökök) ilyenek; ekkor véletlen a véletlen (z,..., z s )-re (b z,..., b zs s )-t kapjuk, ahol 0 z i < p α i i p α i i. Így az alábbi összefüggést kapjuk: a x (b z x,..., b zs x s ). Ebb l az a multiplikatív rendje a következ képpen írható fel: o m (a) = lkkt(o α pj j (b z j j )), ahol j =,..., s. Legyen p α i i meg: p α i i = β i d i, ahol d i páratlan (i =,..., s). Két esetet különböztetünk 49