MIT razvio novi jezik za kvantno računarstvo

  • Objavljeno u Novosti
image

Za razliku od tradicionalnih računala koja koriste bitove, kvantna računala koriste kubite za kodiranje informacija kao nula ili jedinica, ili oboje u isto vrijeme. Zahvaljujući fizici koja stoji u njihovoj pozadini ovi strojevi mogu obraditi puno informacija ali su daleko od besprijekornih. Baš kao i naša obična računala, moramo imati prave programske jezike za pravilno programiranje kvantnih računala.

Programiranje kvantnih računala zahtijeva uzimanje u obzir nečega što se naziva "spregnutost" (entanglement), računalni "množitelj" za neke vrste kubita. Kada su dva kubita spregnuta, radnje na jednom kubitu mogu promijeniti vrijednost drugog, čak i kada su fizički odvojeni, što dovodi do Einsteinove karakterizacije "sablasnog djelovanja na daljinu".

Ali tu ujedno leže i glavni problemi. Prilikom programiranja, odbacivanje jednog kubita bez vođenja računa o njegovoj spregnutosti s drugim može uništiti podatke pohranjene u drugom kubitu, ugrožavajući ispravnost programa.

Znanstvenici iz MIT-ovog CSAIL laboratorija razvili su vlastiti, novi programski jezik za kvantna računala pod nazivom Twist koji može opisati i provjeriti koji su dijelovi podataka spregnuti u kvantni program, kroz jezik koji klasični programer može razumjeti. Jezik koristi koncept koji se zove "čistoća", koji osigurava odsutnost spregnutosti i rezultira intuitivnijim programima s manje grešaka. Na primjer, programer može koristiti Twist kako bi rekao da privremeni podaci koje je program generirao kao smeće nisu upleteni u odgovor programa, što ih čini sigurnim za odbacivanje.

"Naš jezik Twist omogućuje programeru da napiše sigurnije kvantne programe eksplicitno navodeći kada se kubit ne smije spregnuti s drugim", kaže Charles Yuan, doktorand elektrotehnike i računalnih znanosti MIT-a i glavni autor nove studije o Twistu . "Budući da razumijevanje kvantnih programa zahtijeva razumijevanje spregnutosti, nadamo se da će Twist utrti put jezicima koji programerima čine jedinstvene izazove kvantnog računanja pristupačnijim."

Važan sljedeći korak će biti korištenje Twista za stvaranje kvantnih programskih jezika više razine. Većina kvantnih programskih jezika danas još uvijek podsjeća na asemblerski jezik, povezujući operacije niske razine, bez svjesnosti prema stvarima kao što su tipovi podataka i funkcije, i ono što je tipično u klasičnom softverskom inženjerstvu.

"Kvantna računala su sklona greškama i teško ih je programirati. Uvođenjem i razmišljanjem o 'čistoći' programskog koda, Twist čini veliki korak ka olakšavanju kvantnog programiranja jer jamči da se kvantni bitovi u čistom dijelu koda ne mogu mijenjati bitovima koji nisu u tom kodu," kaže Fred Chong, profesor računalnih znanosti na Sveučilištu u Chicagu.

Čitav znanstveni rad o Twistu možete pronaći na ovoj poveznici.

Podijeli