Kvantaarvutite omadused

Kvantaarvuti võimsust mõõdetakse kubitites, kvantaararvuti põhi mõõtühikus. Allikas.

Ma teen feyspalm'i pärast iga sellise lause lugemist. See ei viinud headeni, nägemine hakkab juba halvenema; peagi tuleb pöörduda Mekloni poole.

Ma arvan, et on aeg natuke sistematiseerida kvantaararvuti peamised parameetrid. Neid on mitu:

  1. Kubitite arv
  2. Koherentsuse säilitamise aeg (dekohereerimise aeg)
  3. Vigade tase
  4. Protsessori arhitektuur
  5. Hind, kättesaadavus, hooldus tingimused, amortisatsiooniaeg, programmeerimistööriistad jne.

Kubitite arv

Siin on kõik selge, mida rohkem, seda parem. Tegelikult tuleb kubitite eest maksta, ja ideaaljuhul tuleks osta just nii palju kubite, kui on vajalik ülesande täitmiseks. Eksklusiivsete mänguautomaatide arendajale piisab ühest kubitest automaadi kohta (juhuslikkuse genereerimiseks). RSA-2048 “brute force'iks” on vähemalt 2048 kubiti vajalik.

Kõige rohkem reklaamitud kvantaalgorid kandavad Groveri ja Shori nimesid. Grover võimaldab ‘häkida’ hashesid. Bitcoini kokkuvarisemiseks on vajalikud arvutid, millel on vähemalt 256 kubiti pardal (bitcoini keerukuse osas võib kaval olla, kuid jääme selle ümmarguse numbri juurde). Shor võimaldab faktoreerida numbreid. Numri faktoriseerimiseks, millel on n binaarset bitti, on vajalik vähemalt n kubiti.

Praegune maksimum: 50 kubiti (juba 72?). Ja tegelikult on 50 kubiti piir. Kvantaararvuti simuleerimise piir. Teoorias saame simuleerida mis tahes arvu kubite klassikalistel arvutitel. Praktikas nõuab ühe kubiti lisamine simulatsioonile klassikaliste arvutite topelte, lisage sinna kuuldused kubitite kahekordistumisest iga aasta, ja küsige endalt: kuidas debugeerida algoritme 25651210242048 kubidi jaoks? Simulaatorit pole, kvantprotsessoris ei saa murdepunkte panna.

Koherentsuse säilitamise aeg (dekohereerimise aeg)

Kogerenz ja koherentsus ei ole üks ja sama. Ma eelistan võrrelda koherentlust RAM-i regeneratsiooniga. RAM-i plaadil on miljardid mälurakke, igaühel on laad, null või üks. Sellel laadil on väga huvitav omadus — ta langeb kokku. Alguses "ühe" rakku muutub rakuks, mille väärtus on 0.99, siis 0.98 ja nii edasi. Vastavalt nullle koguneb 0.01, 0.02, 0.03... Selle laadiga peab uuesti tegelema, "regeneratsiooni" tegema. Kõik, mis on alla poole, nullitakse, kõik muu viiakse tagasi ühte.

Kvantprotsessorite regeneratsioon ei ole võimalik. Seetõttu on kõikide arvutuste jaoks üks tsükkel, kuni esimese "lekkinud" kubiti hetkeni. Aeg esimesest "lekke" toimumiseni on see, mida nimetatakse dekogerenziks. Koherentsus on olek, kus kubiidid ei ole veel "lekkinud". Siin võite vaadata veidi vanemaid seletusi.

Dekogerenz on seotud kubiitide arvuga: mida rohkem kubiite, seda keerulisem on koherentust säilitada. Teisest küljest, suurte kubiitide arvuga saab osa neist suunata dekogerenziga seotud vigade korrigeerimisele. Sealt järeldub, et kubiitide arv ise mitte midagi ei lahenda. Saate kubiitide arvu kahekordistada ja 90% neist kulutada dekogerenzi fikseerimisele.

Siin tekib umbkaudu loogilise kubiidi mõisted. Üldiselt, kui teil on 100 kubiidiga protsessor, kuid 40 neist on suunatud dekogerenz-i fikseerimisele — jääb teile 60 loogilist kubiiti. Need, millel te oma algoritmi täidate. Loogiliste kubiitide kontseptsioon on praegu pigem teoreetiline, erinevate praktiliste rakenduste kohta ei ole ma kuulnud.

Vead ja nende korrigeerimine

Veel üks kvantprotsessorite mure. Kui te invertiteerite kubiidi, on tõenäosus, et operatsioon lõpeb veaga, 2%. Kui te segate 2 kubiiti, tõuseb vea tõenäosus 8%-ni. Võtke 256-bitine number, hashige see SHA-256-ga, loendage operatsioonide arv, loendage tõenäosust, et kõik need operatsioonid toimuvad veatult.

Matemaatikud pakuvad lahendust: veakorrigeerimine. Algoritmid on olemas. 2 loogilise kubiidi segamise rakendamiseks on vajalik 100.000 füüsilist kubiiti. Bitcoini-õnnetus ei juhtu niipea.

Protsessori arhitektuur

Täpsemalt öeldes pole kvantkompuutreid olemas. Need on ainult kvantprotsessorid. Miks on vajalikke RAM-i, kui tööaeg piirneb millisekunditega? Ma programmeerin Q# keeles, aga see on kõrgetasemeline keel. Lõin endale 15 kubiiti ja tee nendega, mis tahad. Kui soovid, tegin esimesest kubiitist kümnendaga segadusse. Kui soovid - segasin esimesed kuus.

Tegelikul protsessoril sellist vabadust ei ole. Küsin, et segada esimene kubiit 15-ga - kompilaator genereerib 26 lisategevust. Kui vedamine, aga kui ei, siis sadu. Asi on selles, et kubiit saab seguneda ainult naabritega. Rohkem kui 6 naabrit kubiidi kohta pole ma näinud. Põhimõtteliselt on olemas optimeerimise kvantprogramme kompilaatoreid, aga need on praegu enamasti teoreetilised.

Iga protsessoril on oma juhiste kogum, ja seosed kubiitide vahel erinevad. Ideaalses maailmas on meil juhuslikud Rx, Ry, Rz ja nende kombinatsioonid, pluss vabalt segunemine kümne tunnuse järgi, pluss Swap: vaadake operaatoreid Quirk. Tegelikult on meil mõningaid paaride kubiite, ja segunemine CNOT (q[0], q[1]) maksab ühe operatsiooni, aga CNOT(q[1], q[0]) - juba 7. Ja koherentsus kahaneb...

Hind, kättesaadavus, hoidmise tingimused, kulumisekehtivusaeg, programmeerimisvahendid...

Hinnad ei ole avalikud, kättesaadavus tavakodanikule on peaaegu null, kulumisekehtivusaeg pole praktikas arvutatud, programmeerimisvahendid on alles alanud. Dokumentatsioon arxiv.org.

Milliseid andmeid tuleks ekspertidelt nõuda uue kvantkompuutri turule toomisel?

Peale ülaltoodud nimekirja meeldivad mulle variandid PerlPower ja Alter2:

Olgu, et iga artikkel uue kvantkompuutri kohta algaks kahe omadusega - kubiitide arv samaval pead sügavust kandevate kubiitide, ja kubiitide hoidmise ajaga.

Või veel parem - lihtsama benchamarki sooritamise ajaga, näiteks number 91 primaarselt faktoriseerimisel.

Allikas: habr.com

Osta usaldusväärne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster