Kvantno računalo i kvantno računalstvo. Kvantno računalstvo. Što je kvantno računalstvo

Razlog zašto je takvo modeliranje važno je taj što klasična digitalna računala ne mogu učiniti mnogo u vezi s višereferentnim stanjima; u mnogim slučajevima klasične metode izračuni ne samo da kvantitativno, nego i kvalitativno ne mogu opisati elektroničku strukturu molekula.

Važan problem koji je nedavno riješen bio je pronaći načine na koje bi kvantno računalo moglo učinkovito izvoditi izračune s kemijskom preciznošću potrebnom za stvarni svijet. Program je pokrenut na 20-qubit IBM procesoru.

Zašto je kemija postala predmet tolikog zanimanja? Kemija je jedna od najprofitabilnijih komercijalnih primjena iz više razloga. Znanstvenici očekuju da će pronaći energetski učinkovitije materijale koji se mogu koristiti u baterijama ili solarne ploče. Tu su i prednosti za okoliš: oko dva posto svjetske energije odlazi na proizvodnju gnojiva, koja su užasno neučinkovita i mogu se poboljšati sofisticiranom kemijskom analizom.

Konačno, postoje primjene u personaliziranoj medicini, s mogućnošću predviđanja kako će lijekovi utjecati na ljude na temelju njihove genetike. Dugoročno gledano - mogućnost maksimalnog razvoja lijeka za određenu osobu učinkovito liječenje i minimiziranje nuspojave.

CQC i JSR Corp imali su dvije strategije koje su znanstvenicima omogućile postizanje ovog otkrića. Prvo su koristili vlastiti CQC kompajler za najučinkovitiju konverziju računalni program u uputama za rukovanje qubitom. Ova je učinkovitost posebno važna na modernim low-qubit strojevima, gdje je svaki qubit važan i neophodan, a brzina izvršenja kritična.

Drugo, koristili su kvantno strojno učenje, specijalizirano podpolje strojnog učenja koje koristi vektorske amplitude, a ne samo vjerojatnosti. Korištena metoda kvantnog strojnog učenja posebno je dizajnirana za kvantna računala s niskim qubitima, s djelomičnim rasterećenjem pomoću tradicionalnih procesora.

Očekuje se da će Quantum doživjeti značajna poboljšanja u hardveru i softver. Kako izračuni postaju točniji, sve više industrija može iskoristiti prednosti primjene kvantnih računala, uključujući kvantnu kemiju. Gartner predviđa da će u roku od četiri godine 20% korporacija imati proračun za kvantno računanje. Za deset godina postat će sastavni dio tehnologije.

Iako su računala postala manja i mnogo brža u svom zadatku nego prije, sam zadatak ostaje isti: manipulirati nizom bitova i interpretirati taj niz kao koristan računski rezultat. Bit je temeljna jedinica informacija, obično predstavljena kao 0 ili 1 u vašem digitalnom računalu. Svaki klasični bit je fizički realiziran makroskopskim fizičkim sustavom, kao što je magnetizacija na tvrdom disku ili naboj na kondenzatoru. Na primjer, tekst sastavljen od n znakova i pohranjen na tipičnom tvrdom disku računala, opisuje se nizom od 8n nule i jedinice. Tu leži temeljna razlika između vašeg klasičnog računala i kvantnog računala. Dok se klasično računalo pokorava dobro poznatim zakonima klasične fizike, kvantno računalo je uređaj koji iskorištava kvantno mehaničke fenomene (osobito kvantna interferencija) izvršiti u potpunosti novi način obrada informacija. Kvantno računalstvo: prednosti i mane. ur. V.A. Sadovnichigo. - Izhevsk: Izdavačka kuća Udmurt University, 1999. - 212 str.

U kvantnom računalu, temeljna jedinica informacija (koja se naziva kvantni bit ili kubit), nije binarne, već kvartarne prirode. Ovo svojstvo qubita nastaje kao izravna posljedica njegove podložnosti zakonima kvantne mehanike, koji su radikalno različiti od zakona klasične fizike. Qubit može postojati ne samo u stanju koje odgovara logičkoj 0 ili 1, poput klasičnog bita, već i u stanjima koja odgovaraju mješovitim ili superpozicije ove klasične države. Drugim riječima, qubit može postojati kao nula, kao jedinica i kao 0 i 1. U ovom slučaju možete navesti određeni numerički koeficijent koji predstavlja vjerojatnost postojanja u svakom stanju. . Belonuchkin V.E., Zaikin D.A., Tsypenyuk Yu.M., Osnove fizike.

Ideje o mogućnosti izgradnje kvantnog računala sežu u rad R. Feynmana 1982.-1986. Razmatrajući pitanje izračuna evolucije kvantnih sustava na digitalnom računalu, Feynman je otkrio "nerješivost" ovog problema: ispada da su memorijski resursi i brzina klasičnih strojeva nedostatni za rješavanje kvantnih problema. Na primjer, sustav od n kvantne čestice s dva stanja (spinovi 1/2 ) ima 2 n osnovna stanja; da bismo ga opisali, potrebno je specificirati (i upisati u memoriju računala) 2 n amplitude ovih stanja. Na temelju ovog negativnog rezultata, Feynman je sugerirao da je vjerojatno da će "kvantno računalo" imati svojstva koja će mu omogućiti rješavanje kvantnih problema. Valiev K.A. “Kvantna računala: mogu li se učiniti “velikima”?”, Napredak fizičke znanosti, vol. 169, br

“Klasična” računala izgrađena su na tranzistorskim krugovima koji imaju nelinearne odnose između ulaznih i izlaznih napona. Oni su u biti bistabilni elementi; na primjer, kada je ulazni napon nizak (logička "0"), ulazni napon je visok (logička "1"), i obrnuto. U kvantnom svijetu, takav krug bistabilnog tranzistora može se usporediti s dvorazinskom kvantnom česticom: dodjeljujemo logičke vrijednosti stanju, stanju, - Booleova vrijednost. Prijelazi u krugu bistabilnog tranzistora ovdje će odgovarati prijelazima s razine na razinu: . Međutim, kvantni bistabilni element, nazvan qubit, ima novo, u usporedbi s klasičnim, svojstvo superpozicije stanja: može biti u bilo kojem superpozicijskom stanju, gdje su kompleksni brojevi, . Stanja kvantnog sustava iz n dvorazinske čestice imaju općenito oblik superpozicije 2 n osnovno stanje. U konačnici, kvantno načelo superpozicije stanja omogućuje da se kvantnom računalu daju fundamentalno nove "sposobnosti".

Dokazano je da se kvantno računalo može izgraditi od samo dva elementa (vrata): jednokubitni element i dvokubitni kontrolirani NOT element (CNOT). Matrica 2x2 element ima oblik:

Vrata opisuju rotaciju vektora stanja kubita od osi z do polarne osi određene kutovima . Ako su to iracionalni brojevi, tada se ponovljenom upotrebom vektoru stanja može dati bilo koja unaprijed određena orijentacija. Upravo je to "univerzalnost" jednokubitnih vrata u obliku (1). U konkretnom slučaju dobivamo jednokubitni logički element NOT (NOT): NOT=, NOT=. Prilikom fizičke implementacije elementa NIJE potrebno utjecati na kvantnu česticu (qubit) vanjskim impulsom koji prenosi qubit iz jednog stanja u drugo. Kontrolirana NOT vrata se izvode utječući na dva qubita u interakciji: u ovom slučaju, kroz interakciju, jedan qubit kontrolira evoluciju drugog. Prijelazi pod utjecajem vanjskih impulsa dobro su poznati u spektroskopiji pulsne magnetske rezonancije. Ventil NE odgovara preokretu spina pod utjecajem impulsa (rotacija magnetizacije oko osi za kut) . CNOT vrata se izvode na dva okretaja 1/2 s Hamiltonianom (kontrole vrtnje). CNOT se izvodi u tri koraka: impuls + slobodna precesija u vremenu - impuls. Ako (kontrolni qubit je u stanju), tada pod navedenim utjecajima kontrolirani qubit čini prijelaze (ili). Ako je (kontrolni qubit u stanju), tada će rezultat evolucije kontroliranog qubita biti drugačiji: (). Dakle, spin se drugačije razvija kada: ovdje je stanje kontrolnog kubita. Valiev K.A. “Kvantna informacijska znanost: računala, komunikacije i kriptografija”, BILTEN RUSKE AKADEMIJE ZNANOSTI, svezak 70, br. 8, str. 688-695, 2000. (znanstveni).

Kada se razmatra pitanje implementacije kvantnog računala na određenim kvantnim sustavima, prvo se ispituju izvedivost i svojstva elementarnih NOT i kontroliranih NOT vrata.

Za ono što slijedi, također je korisno uvesti jedno-kubitnu Hadamardovu transformaciju:

U tehnologiji magnetske rezonancije ovi se ventili provode pomoću impulsa:

Dijagram kvantnog računala prikazan je na slici. Prije nego računalo počne s radom, sve kubite (kvantne čestice) treba dovesti u stanje, tj. u osnovno stanje. Ovaj uvjet sam po sebi nije trivijalan.

Zahtijeva duboko hlađenje (na temperature reda milikelvina) ili korištenje polarizacijskih metoda. sustav n qubits u stanju može se smatrati memorijskim registrom pripremljenim za snimanje ulaznih podataka i izvođenje izračuna. Uz ovaj registar obično se pretpostavlja da postoje i dodatni (pomoćni) registri potrebni za upisivanje međurezultata izračuna. Podaci se bilježe utjecajem na svaki qubit računala na ovaj ili onaj način. Pretpostavimo, na primjer, da se Hadamardova transformacija izvodi na svakom qubitu registra:

Kao rezultat toga, sustav je otišao u stanje superpozicije iz 2 n bazična stanja s amplitudom 2 -n/2 . Svako osnovno stanje predstavlja binarni broj od do. Horizontalne linije na slici označavaju vremenske osi.

Algoritam se izvodi transformacijom unitarne superpozicije. je jedinstvena matrica dimenzija 2 n . Kada se fizički implementira putem impulsnih utjecaja na kubite izvana, matrica mora biti predstavljena kao vektorski produkt matrica dimenzije 2 i . Potonje se može izvesti sekvencijalnim utjecajem na pojedinačne qubite ili parove qubita :

Broj faktora u ovom proširenju određuje trajanje (i složenost) izračuna. Sve u (3) izvodi se pomoću operacija NOT, CNOT, H (ili njihovih varijacija).

Zanimljivo je da linearni unitarni operator djeluje istovremeno na sve članove superpozicije

Rezultati izračuna upisuju se u rezervni registar koji je bio u stanju prije uporabe. U jednom izvođenju računskog procesa dobivamo vrijednosti željene funkcije f za sve vrijednosti argumenta x = 0,..., 2 n -- 1 . Taj se fenomen naziva kvantni paralelizam.

Mjerenje rezultata izračuna svodi se na projiciranje vektora superpozicije u (4) na vektor jednog od osnovnih stanja :

Evo dolazi jedan od slabe točke kvantno računalo: broj “ispada” tijekom procesa mjerenja po zakonu slučajnosti. Naći za dano , potrebno je izvršiti proračune i mjerenja mnogo puta dok slučajno ne ispadne .

Kada se analizira jedinstvena evolucija kvantnog sustava koji izvodi računalni proces, važnost fizički procesi vrsta smetnje. Unitarne transformacije odvijaju se u prostoru kompleksnih brojeva, a zbrajanje faza tih brojeva ima prirodu interferencije. Poznata je produktivnost Fourierove transformacije u fenomenima interferencije i spektroskopije. Pokazalo se da kvantni algoritmi uvijek sadrže Fourierove transformacije. Hadamardova transformacija je najjednostavnija diskretna Fourierova transformacija. Vrata tipa NOT i CNOT mogu se implementirati izravno na Mach-Zehnderov interferometar korištenjem fenomena interferencije fotona i rotacije njegovog vektora polarizacije.

Istražuju se različiti načini fizičke implementacije kvantnih računala. Modelni eksperimenti kvantnog računalstva izvedeni su na spektrometru pulsne nuklearne magnetske rezonancije. U tim modelima radila su dva ili tri spina (kubita), na primjer, dva spina jezgre 13 C i jedan spin protona u molekuli trikloretilena

Međutim, u tim je eksperimentima kvantno računalo bilo "ansambl": izlazni signali računala bili su sastavljeni od velikog broja molekula u tekućoj otopini (~ 1020).

Do danas su dani prijedlozi za implementaciju kvantnih računala na ionima i molekulama u zamkama u vakuumu, na nuklearnim spinovima u tekućinama (vidi gore), na nuklearnim spinovima 31 P atoma u kristalnom siliciju, na spinovima elektrona u kvantnom točkice stvorene u dvodimenzionalnom elektroničkom plinu u GaAs heterostrukturama, na Josephsonovim spojevima. Kao što vidimo, u načelu, kvantno računalo može biti izgrađeno na atomskim česticama u vakuumu, tekućini ili kristalima. U svakom slučaju potrebno je prevladati određene prepreke, ali među njima postoji nekoliko općih, određenih principima rada qubita u kvantnom računalu. Postavimo zadatak stvaranja kvantnog računala punog opsega koje sadrži, recimo, 10 3 qubita (iako na n = 100 kvantno računalo moglo bi biti koristan alat).

1. Moramo pronaći načine za "inicijaliziranje" qubita računala u stanje. Za spinske sustave u kristalima očita je upotreba ultraniskih temperatura i ultra jakih magnetskih polja. Korištenje spinske polarizacije pumpanjem može biti korisno kada se istovremeno primjenjuju hlađenje i visoka magnetska polja.

Za ione u vakuumskim zamkama postiže se ultranisko hlađenje iona (atoma). laserske metode. Također je očigledna potreba za hladnim i ultra-visokim vakuumom.

2. Potrebno je imati tehnologiju za selektivni utjecaj impulsa na bilo koji odabrani qubit. U području radiofrekvencija i spinske rezonancije to znači da svaki spin mora imati vlastitu rezonantnu frekvenciju (u smislu spektroskopske rezolucije). Razlike u frekvencijama rezonancije za spinove u molekulama posljedica su kemijskih pomaka za spinove jednog izotopa i jednog elementa; potrebne frekvencijske razlike postoje za nuklearne spinove raznih elemenata. Međutim, zdrav razum sugerira da su te prirodne razlike u rezonantnim frekvencijama teško dovoljne za rad sa 103 spina.

Čini se da su pristupi koji obećavaju oni u kojima se rezonantna frekvencija svakog qubita može kontrolirati izvana. U prijedlogu za silicijsko kvantno računalo, qubit je nuklearni spin atoma nečistoće 31 R. Rezonantna frekvencija određena je konstantom A hiperfina interakcija nuklearnih i elektronskih spinova 31 R atoma. Električno polje na nanoelektrodi koja se nalazi iznad atoma 31 P, polarizira atom i mijenja konstantu A(odnosno, rezonantna frekvencija nuklearnog spina). Dakle, prisutnost elektrode ugrađuje qubit elektronički sklop i podešava svoju rezonantnu frekvenciju.

3. Za izvođenje operacije CNOT (controlled NOT) potrebna je interakcija između qubita i tipova. Do takve interakcije dolazi između spinova jezgri u molekuli ako su jezgre odvojene jednom kemijskom vezom. U principu, potrebno je moći izvesti operaciju na bilo kojem paru kubita. Teško da je moguća fizička interakcija kubita iste veličine i po principu “svi sa svima” u prirodnom okruženju. Postoji očita potreba za načinom za podešavanje okoline između kubita izvana uvođenjem elektroda s kontroliranim potencijalom. Na taj način moguće je stvoriti npr. preklapanje valnih funkcija elektrona u susjednim kvantnim točkama i nastanak interakcije oblika između spinova elektrona [. Preklapanje valnih funkcija elektrona susjednih 31P atoma uzrokuje pojavu interakcije tipa između nuklearnih spinova.

Da bi se osigurala operacija gdje su i udaljeni kubiti između kojih ne postoji nikakva interakcija, potrebno je u računalu primijeniti operaciju izmjene stanja duž lanca kako bi operacija bila osigurana jer se stanje poklapa sa stanjem.

4. Tijekom izvođenja unitarne transformacije koja odgovara odabranom algoritmu, kubiti računala su izloženi utjecaju iz okoline; Kao rezultat toga, amplituda i faza vektora stanja kubita prolaze kroz nasumične promjene - dekoherenciju. U biti, dekoherencija je opuštanje onih stupnjeva slobode čestice koji se koriste u qubitu. Vrijeme dekoherencije jednako je vremenu relaksacije. Kod nuklearne magnetske rezonancije u tekućinama vremena relaksacije su 1-10 s. Za ione u zamkama s optičkim prijelazima između razina E0 i E1, vrijeme dekoherencije je vrijeme spontane emisije i vrijeme sudara s preostalim atomima. Očito je da je dekoherencija ozbiljna prepreka kvantnom računalstvu: započeti računalni proces poprima obilježja slučajnosti nakon isteka vremena dekoherencije. Međutim, moguće je postići stabilan proces kvantnog računanja tijekom proizvoljno dugog vremena m > ma ako se sustavno koriste metode kvantnog kodiranja i ispravljanja pogrešaka (faza i amplituda). Dokazano je da uz relativno niske zahtjeve za izvršavanje elementarnih operacija kao što su NOT i CNOT (vjerojatnost pogreške ne veća od 10-5) bez grešaka, metode kvantne korekcije grešaka (QEC) osiguravaju stabilan rad kvantnog računala.

Također je moguće aktivno suzbiti proces dekoherencije ako se provode periodična mjerenja na sustavu kubita. Mjerenje će najvjerojatnije pronaći česticu u "ispravnom" stanju, a male nasumične promjene u vektoru stanja kolabirat će se tijekom mjerenja (kvantni Zeno efekt). Međutim, teško je još reći koliko takva tehnika može biti korisna, budući da sama takva mjerenja mogu utjecati i poremetiti računalni proces.

5. Stanja kubita nakon završetka procesa izračuna moraju se izmjeriti kako bi se odredio rezultat izračuna. Danas ne postoji ovladana tehnologija za takva mjerenja. Međutim, put do potrage za takvom tehnologijom je očit: potrebno je koristiti metode pojačanja u kvantnom mjerenju. Na primjer, stanje nuklearnog spina prenosi se na spin elektrona; orbitalna valna funkcija ovisi o potonjem; poznavajući orbitalnu valnu funkciju, moguće je organizirati prijenos naboja (ionizacija); prisutnost ili odsutnost naboja na jednom elektronu može se detektirati klasičnim elektrometrijskim metodama. Metode mikroskopa sonde vjerojatno će igrati glavnu ulogu u ovim mjerenjima.

Do danas su otkriveni kvantni algoritmi koji dovode do eksponencijalnog ubrzanja izračuna u usporedbi s proračunima na klasičnom računalu. To uključuje Shorov algoritam za određivanje prostih faktora velikih (višeznamenkastih) brojeva. Ovaj čisto matematički problem usko je povezan sa životom društva, budući da su moderni kodovi za šifriranje izgrađeni na "neizračunljivosti" takvih faktora. Upravo je ta okolnost izazvala senzaciju kada je otkriven Shorov algoritam. Za fizičare je važno da se rješavanje kvantnih problema (rješavanje Schrödingerove jednadžbe za višečestične sustave) eksponencijalno ubrzava ako se koristi kvantno računalo.

Konačno, vrlo je važno da se tijekom istraživanja problema kvantnog računalstva glavni problemi podvrgnu novoj analizi i eksperimentalnoj provjeri. kvantna fizika: problemi lokalnosti, realnosti, komplementarnosti, skriveni parametri, kolaps valne funkcije.

Ideje kvantnog računalstva i kvantne komunikacije nastale su stotinjak godina nakon rođenja izvornih ideja kvantne fizike. Mogućnost izgradnje kvantnih računala i komunikacijskih sustava demonstrirana je do danas završenim teorijskim i eksperimentalnim studijama. Kvantna fizika je “dovoljna” za dizajn kvantnih računala temeljenih na raznim “bazama elemenata”. Kvantna računala, ako se mogu izgraditi, bit će tehnologija 21. stoljeća. Njihova će proizvodnja zahtijevati stvaranje i razvoj novih tehnologija na nanometarskoj i atomskoj razini. Ovaj bi posao vjerojatno mogao trajati nekoliko desetljeća. Izgradnja kvantnih računala bila bi još jedna potvrda načela neiscrpnosti prirode: priroda ima sredstva za izvršenje bilo kojeg zadatka koji je čovjek ispravno formulirao.

U konvencionalnom računalu, informacije su kodirane kao slijed bitova, a ti se bitovi sekvencijalno obrađuju Booleovim logičkim vratima kako bi se dobilo željeni rezultat. Slično tome, kvantno računalo obrađuje kubite izvodeći niz operacija na kvantnim logičkim vratima, od kojih svaka predstavlja jedinstvenu transformaciju koja djeluje na jedan kubit ili par kubita. Sekvencijskim izvođenjem ovih transformacija, kvantno računalo može izvesti složenu jedinstvenu transformaciju nad cijelim skupom kubita pripremljenih u nekom početnom stanju. Nakon toga možete izvršiti mjerenja na kubitima, što će dati konačni rezultat izračuna. Ove sličnosti u računanju između kvantnog računala i klasičnog računala sugeriraju da, barem u teoriji, klasično računalo može točno replicirati rad kvantnog računala. Drugim riječima, klasično računalo može učiniti sve što može i kvantno računalo. Čemu onda sva ova strka oko kvantnog računala? Poanta je da, iako teoretski klasično računalo može simulirati kvantno računalo, ono je vrlo neučinkovito, toliko neučinkovito da praktički klasično računalo nije u stanju riješiti mnoge probleme koje kvantno računalo može. Simulacija kvantnog računala na klasičnom računalu računalno složen problem, jer su korelacije između kvantnih bitova kvalitativno različite od korelacija između klasičnih bitova, kao što je prvi pokazao John Bell. Na primjer, možemo uzeti sustav od samo nekoliko stotina kubita. Postoji u Hilbertovom prostoru s dimenzijom ~10 90 , što bi pri modeliranju klasičnim računalom zahtijevalo korištenje eksponencijalno velikih matrica (za izvođenje izračuna za svako pojedino stanje koje je također opisano matricom). To znači da će klasičnom računalu trebati eksponencijalno više vremena u usporedbi čak i s primitivnim kvantnim računalom.

Richard Feynman bio je među prvima koji je prepoznao potencijal kvantne superpozicije za puno brže rješavanje takvih problema. Na primjer, sustav od 500 kubita, koji je gotovo nemoguće klasično modelirati, kvantna je superpozicija 2 500 države. Svaka vrijednost takve superpozicije klasično je ekvivalentna popisu od 500 jedinica i nula. Bilo koja kvantna operacija na takvom sustavu, na primjer podešeni puls radiovalova koji može izvesti kontroliranu operaciju NE na, recimo, 100. i 101. kubitu, istodobno će utjecati na 2 500 države. Stoga, u jednom otkucaju računalnog sata, kvantna operacija ne izračunava jedno stanje stroja, kao konvencionalna računala, već 2 500 navodi odmah! Međutim, na kraju se napravi mjerenje na sustavu kubita, a sustav kolabira u jedno kvantno stanje koje odgovara jedino rješenje problem, na jedan skup od 500 jedinica i nula, kako to nalaže aksiom mjerenja kvantne mehanike. Ovo je doista uzbudljiv rezultat, budući da je ovo rješenje, pronađeno kolektivnim procesom kvantnog paralelnog računanja čije je podrijetlo u superpoziciji, ekvivalentno izvođenju iste operacije na klasičnom superračunalu s ~ 10 150 odvojeni procesori (što je naravno nemoguće)!! Prvi istraživači u ovom području bili su, naravno, inspirirani takvim gigantskim mogućnostima, pa je ubrzo počeo lov na prikladne probleme za takvu računalnu snagu. Peter Shor, istraživač i računalni znanstvenik iz AT&T's Bell Laboratories u New Jerseyju, predložio je problem koji bi se mogao riješiti na kvantnom računalu i pomoću kvantnog algoritma Shorov algoritam koristi moć kvantne superpozicije za faktoriziranje velikih brojeva (redoslijeda od ~10 200 binarnih znamenki ili više) u množitelje za nekoliko sekundi Ovaj problem je važan. praktična primjena za enkripciju, gdje se općeprihvaćeni (i najbolji) algoritam šifriranja, poznat kao RSA, temelji upravo na složenosti dekomponiranja velikih kompozitni brojevi u proste faktore. Računalo koje može jednostavno riješiti takav problem je naravno od velikog interesa za mnoge vladine organizacije koje koriste RSA, koji se do sada smatrao "nehakiranim", kao i za sve zainteresirane za sigurnost svojih podataka.

Međutim, šifriranje je samo jedno moguća primjena kvantno računalo. Shor je razvio čitav niz matematičkih operacija koje se mogu izvesti isključivo na kvantnom računalu. Neke od ovih operacija koriste se u njegovom algoritmu faktorizacije. Nadalje, Feynman je tvrdio da bi kvantno računalo moglo djelovati kao simulacijski uređaj za kvantnu fiziku, potencijalno otvarajući vrata mnogim otkrićima u tom području. Trenutno su snaga i mogućnosti kvantnog računala uglavnom stvar teoretskih spekulacija; Pojava prvog istinski funkcionalnog kvantnog računala nedvojbeno će donijeti mnoge nove i uzbudljive praktične primjene.

Zbog općeg buma blockchaina i svih vrsta big data, s vrha tehnoloških vijesti sišla je još jedna obećavajuća tema – kvantno računalstvo. I oni su, usput, sposobni revolucionirati nekoliko IT područja odjednom, počevši od ozloglašenog blockchaina i završavajući informacijskom sigurnošću. U sljedeća dva članka Sberbank i Sberbank Technologies će vam reći zašto je kvantno računalstvo cool i što sada rade s njim.

Klasični izračuni: I, ILI, NE

Da biste razumjeli kvantno računalstvo, prvo biste trebali osvježiti klasično računalstvo. Ovdje je jedinica obrađene informacije malo. Svaki bit može biti u samo jednom od dva moguća stanja - 0 ili 1. Registar od N bitova može sadržavati jednu od 2 N mogućih kombinacija stanja i predstavlja se kao njihov niz.

Za obradu i transformaciju informacija koriste se bitovne operacije koje potječu iz Booleove algebre. Osnovne operacije su jednobitni NOT i dvobitni AND i OR. Bit operacije su opisane kroz tablice istinitosti. Oni pokazuju korespondenciju ulaznih argumenata s rezultirajućom vrijednošću.

Klasični računalni algoritam je skup sekvencijalnih bitnih operacija. Najprikladnije je reproducirati ga grafički, u obliku dijagrama funkcionalnih elemenata (SFE), gdje svaka operacija ima svoju oznaku. Ovdje je primjer SFE za provjeru ekvivalentnosti dva bita.

Kvantno računalstvo. Fizička osnova

Sada prijeđimo na nova tema. Kvantno računalstvo alternativa je klasičnim algoritmima temeljenim na procesima kvantne fizike. On kaže da bez interakcije s drugim česticama (odnosno do trenutka mjerenja) elektron nema jednoznačne koordinate u orbiti atoma, već se istovremeno nalazi u svim točkama orbite. Područje u kojem se nalazi elektron naziva se elektronski oblak. U poznatom eksperimentu s dvostrukim prorezom, jedan elektron prolazi kroz oba proreza istovremeno, interferirajući sam sa sobom. Samo tijekom mjerenja ta se nesigurnost urušava i koordinate elektrona postaju jednoznačne.

Probilistička priroda mjerenja svojstvena kvantnom računalstvu leži u osnovi mnogih algoritama - na primjer, pretraživanje u nestrukturiranoj bazi podataka. Algoritmi ove vrste korak po korak povećavaju amplitudu točnog rezultata, omogućujući da se dobije na izlazu s maksimalnom vjerojatnošću.

Kubiti

U kvantnom računalstvu fizička svojstva kvantni objekti su implementirani u takozvanim kubitima (q-bit). Klasični bit može biti samo u jednom stanju – 0 ili 1. Prije mjerenja, qubit može biti u oba stanja istovremeno, pa se obično označava izrazom a|0⟩ + b|1⟩, gdje su A i B složeni brojevi koji zadovoljavaju uvjet |A | 2 +|B| 2 =1. Mjerenje qubita trenutačno "kolabira" njegovo stanje u jedno od osnovnih - 0 ili 1. U tom slučaju "oblak" kolabira u točku, izvorno stanje se uništava, a sve informacije o njemu nepovratno izgubljene.

Jedna primjena ovog svojstva je Schrödingerova mačka kao pravi generator slučajnih brojeva. Qubit se dovodi u stanje u kojem rezultat mjerenja može biti 1 ili 0 s jednakom vjerojatnošću. Ovo stanje je opisano na sljedeći način:

Kvantno i klasično računalstvo. Prva runda

Počnimo s osnovama. Postoji skup početnih podataka za izračune, predstavljenih u binarnom formatu vektorima duljine N.

U klasičnim izračunima samo se jedna od 2 n opcija podataka učitava u memoriju računala i za tu se opciju izračunava vrijednost funkcije. Kao rezultat toga, samo jedan od 2 n mogućih skupova podataka.

Svih 2 n kombinacija izvornih podataka istovremeno su predstavljene u memoriji kvantnog računala. Transformacije se primjenjuju na sve te kombinacije odjednom. Kao rezultat, u jednoj operaciji izračunavamo funkciju za svakoga 2 n moguće opcije skup podataka (mjerenje će i dalje dati samo jedno rješenje, ali o tome kasnije).

I klasično i kvantno računalstvo koriste logičke transformacije - kapije. U klasičnom računalstvu, ulazne i izlazne vrijednosti pohranjuju se u različite bitove, što znači da se u vratima broj ulaza može razlikovati od broja izlaza:

Razmotrimo pravi problem. Moramo utvrditi jesu li dva bita ekvivalentna.

Ako tijekom klasičnih izračuna dobijemo jedan na izlazu, tada su ekvivalentni, inače nisu:

Sada zamislimo ovaj problem koristeći kvantno računalstvo. U njima sva transformacijska vrata imaju isti broj izlaza kao i ulaza. To je zbog činjenice da rezultat transformacije nije nova vrijednost, već promjena stanja postojećih.

U primjeru uspoređujemo vrijednosti prvog i drugog qubita. Rezultat će biti u nultom qubitu - qubitu zastavice. Ovaj algoritam je primjenjiv samo na osnovna stanja - 0 ili 1. Ovo je redoslijed kvantnih transformacija.

  1. Utječemo na zastavu qubita s "Not" vratima, postavljajući je na 1.
  2. Dvaput koristimo vrata "Controlled Not" od dva kubita. Ova vrata preokreću vrijednost qubita zastavice samo ako je drugi qubit uključen u transformaciju u stanju 1.
  3. Mjerimo nulti kubit. Ako je rezultat 1, tada su i prvi i drugi kubit ili u stanju 1 (kubit zastavice je dvaput promijenio svoju vrijednost) ili u stanju 0 (kubit zastavice ostao je u stanju 1). Inače, kubiti su u različitim stanjima.

Sljedeća razina. Kvantna jednokubitna Pauli vrata

Pokušajmo usporediti klasično i kvantno računalstvo u ozbiljnijim problemima. Za ovo nam treba malo više teorijskog znanja.

U kvantnom računalstvu, informacije koje se obrađuju kodirane su u kvantne bitove—zvane qubits. U najjednostavnijem slučaju, qubit, kao i klasični bit, može biti u jednom od dva osnovna stanja: |0⟩ (kratka oznaka za vektor 1|0⟩ + 0|1⟩) i |1⟩ (za vektor 0 |0⟩ + 1 |1⟩). Kvantni registar je tenzorski produkt qubit vektora. U najjednostavnijem slučaju, kada je svaki qubit u jednom od osnovnih stanja, kvantni registar je ekvivalentan klasičnom. Registar od dva qubita u stanju |0> može se napisati na sljedeći način:

(1|0⟩ + 0|1⟩)*(1|0⟩ + 0|1⟩) = 1|00⟩ + 0|01⟩ + 0|10⟩ + 0|11⟩ = |00⟩.

Za obradu i transformaciju informacija u kvantnim algoritmima koriste se tzv. kvantna vrata. Predstavljeni su u obliku matrice. Da bismo dobili rezultat primjene vrata, trebamo pomnožiti vektor koji karakterizira qubit s matricom vrata. Prva koordinata vektora je množitelj ispred |0⟩, druga koordinata je množitelj ispred |1⟩. Matrice glavnih jednokubitnih vrata izgledaju ovako:

Evo primjera korištenja vrata Nije:

X * |0⟩ = X * (1|0⟩ + 0|1⟩) = 0|0⟩ + 1|1⟩ = |1⟩

Faktori ispred baznih stanja nazivaju se amplitude i kompleksni su brojevi. Modul kompleksnog broja jednak je korijenu zbroja kvadrata realnog i imaginarnog dijela. Kvadrat modula amplitude okrenut prema baznom stanju jednak je vjerojatnosti dobivanja ovog osnovnog stanja pri mjerenju kubita, tako da je zbroj kvadrata modula amplituda uvijek jednak 1. Mogli bismo koristiti proizvoljne matrice za transformacije preko kubita , ali zbog činjenice da vektor norme (dužine) uvijek mora biti jednak 1 (zbroj vjerojatnosti svih ishoda uvijek je jednak 1), naša transformacija mora sačuvati normu vektora. To znači da transformacija mora biti unitarna i odgovarajuća matrica mora biti unitarna. Prisjetimo se da je unitarna transformacija invertibilna i UU † =I.

Radi jasnijeg rada s kubitima, oni su prikazani kao vektori na Blochovoj sferi. U ovoj interpretaciji, jednokubitna vrata predstavljaju rotaciju vektora kubita oko jedne od osi. Na primjer, vrata Not(X) zakreću vektor kubita za Pi u odnosu na os X, dakle, stanje |0>, predstavljeno vektorom usmjerenim ravno prema gore, prelazi u stanje |1> usmjereno ravno prema dolje. Stanje qubita na Blochovoj sferi određeno je formulom cos(θ/2)|0⟩+e iϕ sin(θ/2)|1⟩

Kvantna dvokubitna vrata

Za izradu algoritama nisu nam dovoljna samo jednokubitna vrata. Potrebna su vrata koja provode transformacije ovisno o određenim uvjetima. Glavni takav alat su dvokubitna vrata CNOT. Ova vrata se primjenjuju na dva kubita i invertiraju drugi kubit samo ako je prvi kubit u |1⟩ stanju. Matrica CNOT vrata izgleda ovako:

Evo primjera primjene:

CNOT *|10⟩ = CNOT * (0|00⟩ + 0|01⟩ + 1|10⟩ + 0|11⟩) = 0|00⟩ + 0|01⟩ + 1|11⟩ + 0|10⟩ = |11⟩

Korištenje CNOT vrata jednako je izvođenju klasične XOR operacije i zapisivanju rezultata u drugi qubit. Doista, ako pogledamo tablicu istinitosti XOR i CNOT operatora, vidjet ćemo korespondenciju:

XOR
NOTE
0
0
0
00
00
0
1
1
01
01
1
0
1
10
11
1
1
0
11
10

CNOT vrata imaju zanimljivo svojstvo - nakon njihove primjene, kubiti se zapliću ili raspetljavaju, ovisno o početno stanje. To će biti prikazano u sljedećem članku, u dijelu o kvantnom paralelizmu.

Konstrukcija algoritma - klasična i kvantna implementacija

S punim arsenalom kvantnih vrata, možemo početi razvijati kvantne algoritme. U grafičkom prikazu, qubiti su predstavljeni ravnim linijama - "nizovima" na koje su postavljena vrata. Jednokubitna Pauli vrata označena su običnim kvadratima unutar kojih je prikazana os rotacije. CNOT vrata izgledaju malo kompliciranije:

Primjer korištenja CNOT vrata:

Jedna od najvažnijih radnji u algoritmu je mjerenje dobivenog rezultata. Mjerenje je obično označeno lučnom ljestvicom sa strelicom i oznakom na kojoj se osi vrši mjerenje.

Dakle, pokušajmo izgraditi klasični i kvantni algoritam koji dodaje 3 argumentu.

Zbrajanje običnih brojeva u stupac podrazumijeva izvođenje dvije radnje na svakoj znamenki - zbroj samih znamenki znamenke i zbroj rezultata s prijenosom iz prethodne operacije, ako je takav prijenos postojao.

U binarnom prikazu brojeva, operacija zbrajanja sastojat će se od istih radnji. Evo koda u pythonu:

Arg = #postavite rezultat argumenta = #inicijalizirajte rezultat carry1 = arg & 0x1 #dodajte s 0b11, tako da će se prijenos iz nižeg bita pojaviti ako argument ima niski bit = 1 rezultat = arg ^ 0x1 #dodajte niske bitove nositi2 = nositi1 | arg #dodaj s 0b11, tako da će se prijenos iz visokog bita pojaviti ako argument ima visoki bit = 1 ili je došlo do prijenosa iz niskog bita rezultat = arg ^ 0x1 #dodaj visoke rezultate bitova ^= carry1 #primijeni prijenos iz nižeg bita rezultat ^= prijenos2 #primijeni prijenos iz najvažnijeg bita ispis(rezultat)
Pokušajmo sada razviti sličan program za kvantno računalo:

U ovoj shemi, prva dva qubita su argument, sljedeća dva su prijenosi, a preostala 3 su rezultat. Ovako radi algoritam.

  1. Prvi korak prema barijeri je postavljanje argumenta u isto stanje kao u klasičnom slučaju - 0b11.
  2. Pomoću operatora CNOT izračunavamo vrijednost prvog prijenosa - rezultat operacije arg & 1 jednako jedan samo kada je arg 1, u kojem slučaju invertiramo drugi kubit.
  3. Sljedeća 2 vrata implementiraju zbrajanje najmanje značajnih bitova - prenosimo qubit 4 u stanje |1⟩ i upisujemo XOR rezultat u njega.
  4. Veliki pravokutnik predstavlja CCNOT vrata, produžetak CNOT vrata. Ova vrata imaju dva kontrolna kubita, a treći je invertiran samo ako su prva dva u stanju |1. Kombinacija 2 CNOT vrata i jednog CCNOT vrata daje nam rezultat klasične operacije carry2 = carry1 | arg. Prva 2 vrata vode do jedan ako je jedno od njih 1, a vrata CCNOT obrađuju slučaj kada su oba jednaka jedinici.
  5. Dodajemo najviše kubite i prijenosne kubite.

Privremeni zaključci

Pokrećući oba primjera, dobivamo isti rezultat. Na kvantnom računalu to će trajati dulje jer se mora izvršiti dodatna kompilacija u kvantni sklopovni kod i poslati u oblak na izvršenje. Korištenje kvantnog računalstva imalo bi smisla kada bi brzina izvođenja njihovih elementarnih operacija – vrata – bila višestruko manja nego u klasičnom modelu.

Stručna mjerenja pokazuju da je za izvođenje jedne kapije potrebno oko 1 nanosekunde. Dakle, algoritmi za kvantno računalo ne bi trebali kopirati klasične, već maksimalno koristiti jedinstvena svojstva kvantne mehanike. U sljedećem članku ćemo pogledati jedno od glavnih takvih svojstava - kvantni paralelizam - i govoriti o kvantnoj optimizaciji općenito. Zatim ćemo identificirati najprikladnija područja za kvantno računalstvo i opisati njihovu primjenu.

Na temelju materijala

Richard Feynman primijetio je da se određeni kvantnomehanički procesi ne mogu učinkovito simulirati na klasičnom računalu. Ovo zapažanje dovelo je do općenitije tvrdnje da su kvantni procesi učinkovitiji od klasičnih za izvođenje izračuna. Ovu pretpostavku potvrdio je Peter Shor, koji je razvio kvantni algoritam za rastavljanje cijelih brojeva na proste faktore u polinomnom vremenu.

U kvantnim sustavima računalni prostor eksponencijalno raste s veličinom sustava, što čini eksponencijalni paralelizam mogućim. Ovaj paralelizam može dovesti do kvantnih algoritama koji su eksponencijalno brži od klasičnih.

Tek sredinom 1990-ih teorija kvantnih računala i kvantnog računarstva postali su novo znanstveno područje. Navodno je mađarski matematičar J. von Neumann prvi skrenuo pozornost na mogućnost razvoja kvantne logike. No, u to vrijeme još nisu bila stvorena ne samo kvantna, nego ni obična, klasična računala. A s pojavom potonjeg, glavni napori znanstvenika bili su usmjereni prvenstveno na traženje i razvoj novih elemenata za njih (tranzistori, a zatim integrirani krugovi), a ne na stvaranje fundamentalno različitih računalnih uređaja.

Šezdesetih godina 20. stoljeća američki fizičar R. Landauer pokušao je skrenuti pozornost na činjenicu da su izračuni uvijek određeni fizički proces, što znači da je nemoguće razumjeti granice naših računalnih mogućnosti bez preciziranja kojoj fizičkoj implementaciji oni odgovaraju. Nažalost, u to je vrijeme među znanstvenicima prevladavao stav da je računanje vrsta apstraktnog logičkog postupka koji bi trebali proučavati matematičari, a ne fizičari.

Kako su računala postajala sve raširenija, kvantni znanstvenici došli su do zaključka da je praktički nemoguće izravno izračunati stanje sustava u razvoju koji se sastoji od samo nekoliko desetaka međudjelovajućih čestica, kao što je molekula metana CH 4 . To se objašnjava činjenicom da je za potpuno opisivanje složenog sustava potrebno u memoriji računala držati eksponencijalno velik (u smislu broja čestica) broj varijabli, takozvanih kvantnih amplituda. Nastala je paradoksalna situacija: poznavajući jednadžbu evolucije, poznavajući s dovoljnom točnošću sve potencijale međusobne interakcije čestica i početno stanje sustava, gotovo je nemoguće izračunati njegovu budućnost, čak i ako se sustav sastoji samo od 30 elektrona u potencijalnoj jami, a na raspolaganju je i superračunalo s RAM-om, čiji je broj bitova jednak broju atoma u vidljivom području svemira. U isto vrijeme, za proučavanje dinamike takvog sustava, možete jednostavno izvesti eksperiment s 30 elektrona, stavljajući ih u zadani potencijal i početno stanje. To je posebno primijetio ruski matematičar Yu I. Manin, koji je 1980. ukazao na potrebu razvoja teorije kvantnih računalnih uređaja. U 1980-ima isti problem proučavao je američki fizičar P. Benev, koji je jasno pokazao da kvantni sustav može izvoditi proračune, kao i engleski znanstvenik D. Deutsch, koji je teorijski razvio univerzalno kvantno računalo koje je superiornije od svojih klasični pandan.

R. Feynman privukao je veliku pažnju problemu razvoja kvantnih računala. Zahvaljujući njegovom autoritativnom pozivu višestruko se povećao broj stručnjaka koji su obratili pažnju na kvantno računalstvo.

Pa ipak dugo vremena Ostalo je nejasno može li se hipotetska računalna snaga kvantnog računala koristiti za ubrzavanje rješavanja praktičnih problema. Godine 1994. američki matematičar P. Shore predložio je kvantni algoritam koji omogućuje brzo faktoriziranje velikih brojeva. U usporedbi s najboljom danas poznatom klasičnom metodom, Shorov kvantni algoritam omogućuje višestruko ubrzanje izračuna, a što je dulji broj faktoriziran, to je veći dobitak na brzini. U slučaju klasičnog algoritma, povećanje faktoriziranog broja dovodi do eksponencijalnog povećanja potrebnih resursa. Na primjer, rastavljanje broja od 500 znamenki zahtijeva 100 milijuna puta više ponavljanja od broja od 250 znamenki. Za Shorov algoritam, količina potrebnih resursa raste samo polinomski - broj od 500 znamenki zahtijeva samo 8 puta više koraka nego broj od 250 znamenki.

Ispada da je korištenjem zakona kvantne mehanike moguće izgraditi računala za koja problem faktorizacije (i mnogi drugi!) neće biti jako težak. Procjenjuje se da kvantno računalo sa samo oko 10 tisuća kvantnih bitova memorije može rastaviti 1000-znamenkasti broj na proste faktore u samo nekoliko sati! Brzi algoritam faktorizacije je, primjerice, od velikog praktičnog interesa za razne obavještajne agencije koje su nakupile banke nedešifriranih poruka.

Godine 1997. L. Grover je predložio kvantni algoritam za brzo pretraživanje u nesređenoj bazi podataka. (Primjer takve baze podataka je telefonski imenik u kojem imena pretplatnika nisu poredana abecednim redom, već proizvoljno.) Zadatak traženja, odabira optimalnog elementa među brojnim mogućnostima vrlo se često susreće u gospodarstvu, vojnim, inženjerske probleme i računalne igre. Groverov algoritam omogućuje ne samo ubrzanje procesa pretraživanja, već i približno udvostručenje broja parametara koji se uzimaju u obzir pri odabiru optimuma.

Stvarno stvaranje kvantnih računala koči ozbiljan problem – greške, odnosno smetnje. Činjenica je da ista razina smetnji kvari proces kvantnog računalstva puno intenzivnije od klasičnog računalstva. P. Shor je 1995. zacrtao načine rješavanja ovog problema, razvijajući shemu za kodiranje kvantnih stanja i ispravljanje pogrešaka u njima.

Vrijeme potrebno za izvođenje određenih izračuna može se smanjiti korištenjem paralelnih procesora. Da bi se postiglo eksponencijalno smanjenje vremena, broj procesora, a time i količina fizičkog prostora, mora se eksponencijalno povećati. U kvantnom sustavu, za eksponencijalno smanjenje vremena, sve što je potrebno je linearno povećanje volumena potrebnog fizičkog prostora. Ovaj je fenomen izravno povezan s kvantnim paralelizmom (Deutsch i Josha, 1992).

Postoji još jedan važna značajka. Dok kvantni sustav izvodi izračune, pristup rezultatima je ograničen. Proces pristupa rezultatima je proces mjerenja koji remeti kvantno stanje, iskrivljujući ga. Može se činiti da je ovdje situacija još gora nego s klasičnim izračunima. Ispada da možemo računati samo rezultat izvođenja jednog od paralelnih procesa, a kako je mjerenje probabilističko, ne možemo ni birati koji ćemo rezultat procesa dobiti.

No tijekom proteklih nekoliko godina ljudi su otkrili kreativne načine za pametno rješavanje problema mjerenja kako bi iskoristili kvantni paralelizam. Manipulacije ove vrste nemaju analoga u klasičnoj teoriji i zahtijevaju korištenje nekonvencionalnih tehnika programiranja. Jedna takva tehnika je manipuliranje kvantnim stanjem tako da se može očitati zajedničko svojstvo svih rezultirajućih vrijednosti, poput simetrije ili perioda funkcije. Slična tehnika se koristi u Shorovom algoritmu faktorizacije. U drugom pristupu, kvantna stanja se transformiraju na takav način da se poveća vjerojatnost očitavanja računskog rezultata koji nas zanima. Ova tehnika se koristi u Groverovom algoritmu pretraživanja

U Schrödingerovoj reprezentaciji, promjena vremena qubita pod djelovanjem unitarnih operatora je zgodno grafički predstavljena. Ovaj pristup se široko koristi u polju kvantnog računarstva. Takozvani kvantni sklopovi služe kao analogija grafičkom prikazu električni krugovi. Također se sastoje od skupa vrata ili vrata, slično digitalnim I, ILI, NE vratima, flip-flopovima, registrima, zbrajalima i tako dalje.

Neka nam je kubit u osnovnom stanju "0". Opet, možemo ga predstaviti kao vektor stupca (1 0). Ako ga primijenite na ulaz vrata, nazovimo ga X, tada će se vektor stanja promijeniti. Ova vrata su predstavljena Paulijevom sigma-x matricom. Da, Paulijeve matrice, osim što su hermitske, također su i unitarne. Nisu sve hermitske matrice unitarne, ali Paulijeve matrice su upravo to.

Dakle, množenjem Paulijeve X-matrice s izvornim vektorom dobivamo vektor stupac (0 1). To je drugi bazni ket vektor |1>. To jest, ova vrata su pretvorila 0 u jedan. Ova vrata se također nazivaju NE jer izvode negaciju i inverziju. Doista, ako dalje instaliramo još jedna takva vrata, vratit ćemo se u nulto stanje.

Za razliku od klasičnih bitova, qubit može biti u superpoziciji baznih vektora. Sljedeća vrata nazivaju se Hadamardova vrata i predstavljena su sljedećom unitarnom matricom. On transformira nulto stanje u superpoziciju |0>+|1>.

Imajte na umu da kada ova matrica djeluje na ket-vektor |1>, transformira ga u |0>-|1>.

Koristeći ova dva vrata, možemo grafički prikazati eksperiment Mach-Zehnder interferometra o kojemu je bilo riječi u prethodnom videu. Matrice koje predstavljamo identične su evolucijskim operatorima koji se tamo razmatraju. Prolaz fotona kroz prozirno zrcalo odgovara Hadamardovim vratima. Zrcalo ima X inverzna vrata također predstavljena Hadamardovim vratima. Prva vrata prenose qubit u superpoziciju, druga ne rade ništa s rezultirajućim stanjem, a treća prenose superpoziciju natrag u osnovni vektor.

Dva qubit stanja su grafički predstavljena dodavanjem još jedne horizontalne linije. Sada je izvorni vektor u |00> stanju, koje je jednako tenzorskom umnošku odgovarajućih jednokubitnih vektora. Predstavlja se kao vektor stupac s četiri komponente.

Možete, na primjer, staviti Hadamardova vrata na svaki qubit. Zapravo, to znači da na originalni vektor mora utjecati tenzorski produkt dviju Hadamardovih matrica. Imamo matricu 4x4 pomnoženu s četverokomponentnim vektorom stupca. Rezultat će također biti četverokomponentni vektor stupca.

Međutim, ne može se svaka 4x4 unitarna matrica rastaviti na tenzorski umnožak 2x2 matrice. Primjer je uobičajena CNOT vrata - kontrolirano poricanje. Mora se primijeniti na cijeli dvokubitni vektor stanja odjednom. Obično se označava ova dva kruga.

Najopćenitiji dvokubitni vektor stanja opisan je superpozicijom četiri bazna vektora. Stoga su za njezin opis potrebna 4 kompleksna broja – amplitude vjerojatnosti.

Za vektor od tri kubita, superpozicija će se sastojati od 2 3, odnosno osam članova. Unitarni operatori koji djeluju na takav vektor stupca od osam komponenti predstavljeni su matricama 8x8. Zbog toga, u slučaju kvantnog računalstva, simulacija na klasičnom računalu postaje nemoguća čak i pri mala količina kubit.

Dakle, za rad sa stanjem od 100 qubit-a, potrebno je pohraniti 2100 kompleksnih brojeva samo da bi se opisao sam vektor. 2100 je već više količine elementarne čestice u vidljivom dijelu Svemira. Zbog toga čovječanstvu treba hardversko kvantno računalo, a ne njegov klasični simulator.

Na internetu možete pronaći simulatore kvantnih sklopova i eksperimentirati s njima. Evo jednog od njih, zove se quirk. Na izlazu pokazuje vjerojatnost otkrivanja jednog pri mjerenju qubita. Također i Blochova sfera, koja grafički prikazuje qubit kao točku na sferi. I grafički prikaz amplituda vjerojatnosti - dva kompleksna broja za jedan qubit, četiri za stanje od dva qubita.

U početku, naš dvokubitni vektor je u stanju baznog vektora |00>. Odnosno, odgovarajuća amplituda vjerojatnosti jednaka je jedinici, a ostale tri jednake su nuli. Ali u općem slučaju, sve četiri amplitude su različite od nule. Radi jasnoće, instalirajmo neka vrata čije se matrice mijenjaju tijekom vremena. Pa, na primjer, CNOT vrata. Vidimo da sve četiri amplitude vjerojatnosti mijenjaju svoju vrijednost.

Izgradimo krug koji odgovara našem eksperimentu s Mach-Zehnderovim interferometrom. Postavimo Hadamardova vrata. Vjerojatnost dobivanja jedinice kao rezultat mjerenja postala je 50%. Same amplitude vjerojatnosti postale su 0,707, odnosno za nulu i za jedinicu.

Ugradimo NOT gate, odnosno Pauli X matricu Ništa se nije promijenilo. Druga Hadamardova vrata vratila su vektor stanja na izvorni osnovni vektor. Imajte na umu da kada prijeđete na vektor od tri kubita, amplitude postaju osam. Za četiri-qubit 16. I tako dalje. Ovaj simulator može raditi sa stanjem od najviše 16 lakata. Da bi to učinio, koristi najmanje 2 16, odnosno 64 kB memorije. Za 32 qubita potrebno vam je najmanje 4 GB memorije. Potrebni resursi rastu vrlo brzo. Ovaj simulator već ima sastavljeni sklopovi popularni algoritmi. Ovdje je, na primjer, krug za testiranje Bellovih nejednakosti, koji smo pogledali u dijelovima 26 i 27.

No, kvantno računalo ne treba zamišljati kao analogno klasičnom, već eksponencijalno veće računalne snage. Kako se u znanosti često kaže, ugrađeni kvantni paralelizam. Doista, postoje algoritmi koji omogućuju rješavanje nekih problema na kvantnom računalu u prihvatljivom vremenu, dok bi na klasičnom za to bile potrebne milijarde godina. Ali ti su problemi vrlo specifični, kao što je uzimanje diskretnog logaritma velikih brojeva ili rastavljanje velikih brojeva na faktore.

Odnosno, kvantno računalo nije uvijek mnogo brže od klasičnog. Umjesto toga, može se smatrati specijaliziranim procesorom za uzak raspon zadataka. Iste operacije s matricama ili modeliranje kvantnih fenomena, na primjer, za probleme iz kemije.

Ali tko zna kako će se ovo područje razvijati kada tehnologija dosegne masovnu proizvodnju jeftinih multi-qubit kvantnih procesora.