Bernstein-Wazirani algoritmus

 A Bernstein-Vazirani algoritmus egy kvantumalgoritmus  , amely megoldja a fekete dobozba rejtett -bit szám (a külföldi szakirodalomban a rejtett karakterlánc [1] kifejezést is használják ) megtalálásának problémáját . Ethan Bernstein és Umesh Wazirani javasolta 1993-ban . Ez az algoritmus sokkal gyorsabban oldja meg a problémát, mint a nem kvantum-formulációban lehetséges . Az algoritmus használható adatbázisokban , blokkrejtjelek elleni támadásokban , kvantumszámítógépek teljesítménytesztjeiben , 5 és 16 qubites IBM kvantumszámítógépeken valósították meg [ .

Történelem

Az algoritmust az Berkeley professzora, Vazirani és tanítványa, Ethan Bernstein javasolta Az algoritmus leírásakor a modern források általában Bernstein és Vazirani [2] beszédére hivatkoznak a számításelméleti szimpóziumon 1993-ban [3] . A Bernstein-Vazirani algoritmus a Deutsch-Yozhi algoritmus kiterjesztett változata , mivel ahelyett, hogy meghatározná, hogy egy függvény egy adott osztályhoz tartozik - kiegyensúlyozott vagy konstans (vagyis bármely argumentumhoz 0 vagy 1 értéket vesz fel), a algoritmus talál egy "rejtett" vektort, amely lehetővé teszi az értékfüggvények egyedi meghatározását bármely pontban [4] .

A Bernstein-Vazirani algoritmus a feladatban bemutatja, hogy megoldja a klasszikus és kvantum algoritmusok közötti szakadékot az orákulumhoz intézett legkevesebb kérések számában (fekete doboz). Ha engedélyezi is a valószínűségi algoritmusok használatát (előre korlátozott hibavalószínűséggel), a klasszikus probléma megoldásához szükség lesz az orákulum meghívására, míg a kvantum algoritmusban elegendő meghívni [5] .

A Bernstein-Vazirani probléma megállapítása

A klasszikus probléma

Tekintsünk egy orákulumot, amely egy -bites számot egy bitté alakít, azaz .

Sőt , hol  van az alak skaláris szorzata: . Úgy tekintjük, hogy egy függvényhívás konstans időben történik.

Meg kell találni [1] .

A kvantumprobléma

A kvantummodell problémafelvetése hasonló, de az orákulumhoz való hozzáférés nem közvetlenül a függvényen keresztül történik, hanem egy qubit -rendszerre ható lineáris operátoron keresztül :

,

ahol  a kvantumállapotnak megfelelő ket vektor , a kvantumállapotnak  megfelelő bra vektor ,  a Kronecker-szorzat , és  a modulo 2 összeadás .

A kvantumállapotok és megfelelnek a és a vektoroknak . A közös állapot vektora szorzatként ábrázolható [6] .

A klasszikus esethez hasonlóan feltételezzük, hogy az orákulum hívása, amely a qubit - ből számítja ki az operátor bemeneti rendszerre történő alkalmazásának eredményét , állandó időben történik.

Kvantumesetben, akárcsak a klasszikus esetben, feltételezzük, hogy , és meg kell találni [1] .

Algoritmus

A klasszikus probléma

A klasszikus esetben minden orákulumhívás a szám egy bitjét adja vissza , így a -bit szám megtalálásához meg kell hívni az orákulumidőket . Az alábbiakban az orákulum hívásainak egy változata látható, amely lehetővé teszi az [1] teljes visszaállítását :

Az orákulum hívásainak száma klasszikus esetben , ahol  a szám bitjeinek száma . Az egyszerű információelméleti érvelés megmutatja, hogy ez a korlát még a BPP osztály keretein belül sem javítható [1] .

Kvantum algoritmus

Az algoritmus az n-qubit Hadamard operátoron alapul :

És az is, hogy egy operátor alkalmazása a forma állapotára , ahol az [1] értéket eredményezi .

Az algoritmus működése lépésről lépésre a következőképpen ábrázolható [1] :

  1. Az első lépésben a Hadamard operátort alkalmazzuk egy -qubit állapotra , amely egy alapállapotból és egy : ;
  2. Ezután az operátort alkalmazzuk az előző lépés eredményére : ;
  3. Ezután az eredmény első qubitjére kerül alkalmazásra , amely figyelembe véve, hogy [ 4] : .

Ennek eredményeként a bemeneti regiszter mérése az [1] értéket adja . Így a probléma kvantumfogalmazásánál elegendő az orákulumra hivatkozni. Általános esetben egy orákulum felépítéséhez és használatához logikai elemekre van szükség , de ezt ebben a modellben nem vesszük figyelembe az algoritmus elemzésekor, mivel számára csak az orákulum hívásainak száma jelentős [1] . Az algoritmust ebben a formában 5 és 16 qubites IBM számítógépeken valósították meg [1] , lehetőség van az algoritmust megvalósító optikai rendszer összeállítására is [7] .

Az algoritmus megvalósítása IBM számítógépeken

A Bernstein-Vazirani algoritmus bármely gyakorlati megvalósítása során a fő nehézséget az orákulum létrehozása jelenti, mivel az orákulum felépítéséhez és használatához logikai elemre van szükség . [egy]

Az orákulum felépítésének bonyolultsága mellett a gyakorlati megvalósítást a pontossággal kapcsolatos problémák is kísérik. A rendszert 1-, 2- és 3-bites karakterláncokon teszteltük, amelyeken az IBM-Qiskit szimulátor 100%-os pontossággal meg aEzután az 1- és 2-bites karakterláncok tesztelését végezték el egy 5 qubites ibmqx4 és egy 16 qubit ibmqx5 gépen, ahol számítási hibákat és a várt eredménytől való erős eltérést rögzítettek [1] .

Gyakorlati alkalmazás

A Bernstein-Wazirani algoritmus alkalmazható:

  1. Adatbázisokban [8] . Egy algoritmus segítségével a szükséges adatokhoz elméletileg sokkal gyorsabban hozzá lehet jutni, mint a klasszikus esetben.
  2. A blokk titkosítás elleni támadásban [9] . A Bernstein-Wazirani algoritmus számos új, a klasszikusnál fejlettebb módszert kínál a blokk titkosítás megtámadására.
  3. A kvantumszámítógépek teljesítménytesztjében [10] . Az algoritmust egy 11 qubites kvantumszámítógép teljesítménytesztjeként használják.

Jegyzetek

  1. ↑ 1 2 3 4 5 6 7 8 9 10 11 12 Coles et al, 2018 , p. 10-13.
  2. Ethan Bernstein, Umesh Vazirani. A kvantumkomplexitás elmélete  // A Huszonötödik éves ACM Számítástechnikai Szimpózium előadásai. - New York, NY, USA: ACM, 1993. - S. 11-20 . — ISBN 978-0-89791-591-5 . - doi : 10.1145/167088.167097 .
  3. Hidary, 2019 , p. 104-107.
  4. 1 2 Sevag Gharibian. 7. előadás: A Deutsch-Josza és Berstein-Vazirani algoritmusok  //  Bevezetés a kvantumszámításba 2018. nyár, Paderborni Egyetem. - P. 1-10 .
  5. Hidary, 2019 , p. 12-13.
  6. Coles et al, 2018 , p. négy.
  7. P. Londero, K. Banaszek, I. A. Walmsley, C. Dorrer, M. Anderson. A Bernstein-Vazirani algoritmus hatékony optikai megvalósítása  (angol)  // Fizikai Szemle A. - 2004. - V. 69 , no. 1 . — S. 010302–010302.4 . — ISSN 1050-2947 . - doi : 10.1103/PhysRevA.69.010302 .
  8. A.A. Jezsov. A kvantum neurotechnológia néhány problémája  (orosz)  // Tudományos ülésszak MEPhI–2003. V Össz-oroszországi tudományos és műszaki konferencia "Neuroinformatika-2003": előadások a neuroinformatikáról. 2. rész - 2003. - S. 44-45 . Az eredetiből archiválva : 2022. január 21.
  9. Huiqin Xie, Li Yang. Bernstein–Vazirani algoritmus használata blokkrejtjelek támadására  //  Tervek, kódok és kriptográfia. — 2019-05-01. — Vol. 87 , iss. 5 . — P. 1161–1182 . — ISSN 1573-7586 . - doi : 10.1007/s10623-018-0510-5 .
  10. K. Wright, K. M. Beck, S. Debnath, J. M. Amini, Y. Nam, N. Grzesiak, J.-S. Chen, NC Pisenti, M. Chmielewski, C. Collins, KM Hudek, J. Mizrahi, JD Wong-Campos, S. Allen, J. Apisdorf, P. Solomon, M. Williams, AM Ducore, A. Blinov, SM Kreikemeier , V. Chaplin, M. Keesan, C. Monroe és J. Kim. Egy 11 qubites kvantumszámítógép teljesítményértékelése // Nature Communications. - 2019. - 1. évf. 10. - S. 5464. - doi : 10.1038/s41467-019-13534-2 .

Linkek