Paglalarawan ng algorithm ni Grover
Sa seksyong ito, ilalarawan natin ang algorithm ni Grover. Magsisimula tayo sa pagtalakay sa phase query gates at kung paano itayo ang mga ito, kasunod ng paglalarawan ng algorithm mismo. Sa huli, tatalakayin natin nang maikli kung paano natural na inilalapat ang algorithm na ito sa paghahanap.
Mga phase query gateβ
Gumagamit ang algorithm ni Grover ng mga operasyong kilala bilang phase query gates. Kaiba sa isang ordinaryong query gate na na tinukoy para sa isang ibinigay na function na sa karaniwang paraan na inilarawan dati, ang phase query gate para sa function na ay tinukoy bilang
para sa bawat string na
Ang operasyong ay maaaring ipatupad gamit ang isang query gate na gaya ng iminumungkahi ng diagram na ito:
Gumagamit ang implementasyong ito ng phenomenon na phase kickback, at kailangan nitong magkaroon ng isang workspace qubit, na sinimulan sa na estado. Nananatili ang qubit na ito sa na estado pagkatapos makumpleto ang implementasyon, at maaaring gamitin ulit (para ipatupad ang mga kasunod na gate, halimbawa) o basta itapon na lang.
Bukod sa operasyong gagamitin din natin ang isang phase query gate para sa -bit OR function, na tinukoy tulad ng sumusunod para sa bawat string na
Partikular, ang phase query gate para sa -bit OR function ay gumagana nang ganito:
Para maging malinaw, ito ang paraan ng paggugunapawa ng sa mga standard basis state; ang gawi nito sa mga arbitrary na estado ay natutukoy mula sa expression na ito sa pamamagitan ng linearity.
Ang operasyong ay maaaring ipatupad bilang isang quantum circuit sa pamamagitan ng pagsisimula sa isang Boolean circuit para sa OR function, pagkatapos ay gumawa ng operasyong (iyon ay, isang standard query gate para sa -bit OR function) gamit ang pamamaraang inilarawan sa aralin na Quantum algorithmic foundations, at sa wakas ang operasyong gamit ang phase kickback phenomenon gaya ng inilarawan sa itaas. Pansinin na ang operasyong ay walang depensya sa function na kaya maaari itong ipatupad ng isang quantum circuit na walang mga query gate.
Paglalarawan ng algorithmβ
Ngayong mayroon na tayong dalawang operasyong at maaari na nating ilarawan ang algorithm ni Grover.
Binabanggit ng algorithm ang isang bilang na na siyang bilang ng mga iteration na ginagawa nito (at samakatuwid ang bilang ng mga query sa function na na kailangan nito). Hindi tinutukoy ng algorithm ni Grover ang bilang na na ito ayon sa ating paglalarawan, at tatalakayin natin sa ibang pagkakataon sa aralin kung paano ito pipiliin.
Ang operasyong na paulit-ulit sa hakbang 2 ay tatawagin na Grover operation sa natitirang bahagi ng araling ito. Narito ang isang quantum circuit na representasyon ng Grover operation kapag
Sa diagram na ito, ang operasyong ay inilalarawan na mas malaki kaysa sa bilang isang impormal na biswal na pahiwatig na malamang na ito ang mas mahal na operasyon. Partikular, kapag nagtatrabaho tayo sa loob ng query model, ang ay nangangailangan ng isang query habang ang ay hindi nangangailangan ng mga query. Kung sa halip mayroon tayong Boolean circuit para sa function na at pagkatapos ay i-convert ito sa isang quantum circuit para sa maaari tayong makatwirang asahan na ang resultang quantum circuit ay magiging mas malaki at mas kumplikado kaysa sa isang para sa
Narito ang isang diagram ng isang quantum circuit para sa buong algorithm kapag at Para sa mas malalaking halaga ng maaari tayong magsingit ng mga karagdagang instance ng Grover operation agad bago ang mga sukat.
Paglalapat sa paghahanapβ
Ang algorithm ni Grover ay maaaring ilapat sa problemang Search tulad ng sumusunod:
- Pumili ng bilang na sa hakbang 2. (Ito ay tatalakayin sa ibang pagkakataon sa aralin.)
- Patakbuhin ang algorithm ni Grover sa function na gamit ang anumang pagpili na ginawa natin para sa para makakuha ng string na
- I-query ang function na sa string na para malaman kung ito ay valid na solusyon:
- Kung nakahanap na tayo ng solusyon, kaya maaari tayong huminto at i-output ang
- Kung hindi, kung maaari tayong muling patakbuhin ang pamamaraan, posibleng may ibang pagpili para sa o maaari tayong magpasyang sumuko at i-output ang "walang solusyon."
Kapag nasuri na natin kung paano gumagana ang algorithm ni Grover, makikita natin na sa pag-take ng makakakuha tayo ng solusyon sa ating search problem (kung mayroon) nang may mataas na posibilidad.