Hunter
Programozási nyelvet kaptak a kvantum számítógépek
A kvantum számítógépek első gyakorlati, magas szintű programozási nyelvének megalkotásával végre elhagyhatja a kvantumprogramozás a sötét középkort.
Bár a mai kvantum számítógépek még nincsenek készen arra, hogy a gyakorlatban is bizonyítsanak, a Quipper nevű nyelv önmagában is segíthet utat mutatni ezeknek a futurisztikus gépeknek a kialakításában, valamint programozásuk könnyebbé tételében. "A kvantumszámításokra szabottan rendelkezik mindazokkal a hasznos jegyekkel, amikkel egy modern klasszikus programozási nyelv" - értékelt Bob Coecke, az Oxford Egyetem szakértője, aki nem vett részt a fejlesztésben.
A kvantum számítógépek egyik legfontosabb tulajdonsága, hogy bitjei, a kubitek egy időben rendelkezhetnek 0 és 1 értékekkel. Ez lehetővé teszi a számítógépnek egyszerre két vagy több számítás elvégzését, ennek a kvantum-párhuzamnak a kiaknázására alkalmas algoritmusokat azonban egyáltalán nem könnyű készíteni, ezért a kvantumprogramozás eddig elég alacsony szinten mozgott, főként a kubiteket vezérlő kvantum logikai kapuk instruálására korlátozódva.
Most azonban Peter Selinger és munkatársai a kanadai Dalhousie Egyetemen jelentős előrelépést éretek el ezen a területen a Quipper, az első magas szintű kvantum programozási nyelv megalkotásával. A Quipper az utasításokat nagyobb koncepciókban fejezi ki és könnyebbé teszi az algoritmusok moduláris úton történő összehozását.
A Quipper egy klasszikus programozási nyelven, a Haskell-en alapul, ami a fizikai alkalmazások programozására specializálódott és jelentősen különbözik a ma általánosan alkalmazott nyelvektől. Selinger csapata gyakorlatilag ezt a lambda-kalkulus alapú nyelvet alakította át a kubiteknek megfelelően, valamint elkészítettek egy Quipper kód-könyvtárat hét létező kvantum algoritmus végrehajtásához. A csapat reményei szerint további algoritmusokat adhatnak ehhez a könyvtárhoz, létrehozva egy készletet, ami lehetővé teszi a kvantum programozóknak, hogy modulok összeillesztésével építhessék fel szoftvereiket, mint azt a klasszikus programozók teszik például a Java-val. "Egy jól megtervezett programozási nyelv segít gondolkozásunk strukturálásában és információkat ad egy problémáról" - mondta Selinger. "Az új kvantum algoritmusok tervezésének hasznos eszközévé válhat"
"Az emberek a Quipper-hez hasonló nyelveket felhasználhatják a kvantum szoftver írásával kapcsolatos ötleteik és ismereteik teszteléséhez" - nyilatkozott Thorsten Altenkirch, a Nottingham Egyetem kutatója a New Scientistnek, hozzátéve, hogy különösnek tűnhet egy programozási nyelv megalkotása egy olyan gyermekcipőben járó hardver számára, mint a kvantum számítógép, a szoftver azonban ebben az esetben hatással lehet a jövő kvantum számítógépeinek fejlesztésére is.
A Quipper megalkotását az Egyesült Államok Hírszerzési Fejlett Kutatási Projektek Ügynöksége, az IARPA finanszírozta, hogy megállapítsák, mennyi kubitre lenne szüksége egy kvantum számítógépnek a klasszikus hardver felülmúlására adott feladatokban. Egy magas szintű programozási nyelven, esetünkben a Quipper-ben megírt programok egyértelműbbé teszik egy algoritmus hardver követelményeit, ami máris több meglepetést okozott. "Sokkal több erőforrásra lesz szükség, mint gondolták" - mondta Selinger, aki azonban nem beszélhetett a pontos eredményekről.
Várakozása szerint a műszaki tudományok fejlődésével, például a zaj csökkentésével egy gyakorlati kvantum számítógéphez szükséges kubitek száma idővel csökkenni fog.
Bár a mai kvantum számítógépek még nincsenek készen arra, hogy a gyakorlatban is bizonyítsanak, a Quipper nevű nyelv önmagában is segíthet utat mutatni ezeknek a futurisztikus gépeknek a kialakításában, valamint programozásuk könnyebbé tételében. "A kvantumszámításokra szabottan rendelkezik mindazokkal a hasznos jegyekkel, amikkel egy modern klasszikus programozási nyelv" - értékelt Bob Coecke, az Oxford Egyetem szakértője, aki nem vett részt a fejlesztésben.
A kvantum számítógépek egyik legfontosabb tulajdonsága, hogy bitjei, a kubitek egy időben rendelkezhetnek 0 és 1 értékekkel. Ez lehetővé teszi a számítógépnek egyszerre két vagy több számítás elvégzését, ennek a kvantum-párhuzamnak a kiaknázására alkalmas algoritmusokat azonban egyáltalán nem könnyű készíteni, ezért a kvantumprogramozás eddig elég alacsony szinten mozgott, főként a kubiteket vezérlő kvantum logikai kapuk instruálására korlátozódva.
Most azonban Peter Selinger és munkatársai a kanadai Dalhousie Egyetemen jelentős előrelépést éretek el ezen a területen a Quipper, az első magas szintű kvantum programozási nyelv megalkotásával. A Quipper az utasításokat nagyobb koncepciókban fejezi ki és könnyebbé teszi az algoritmusok moduláris úton történő összehozását.
A Quipper egy klasszikus programozási nyelven, a Haskell-en alapul, ami a fizikai alkalmazások programozására specializálódott és jelentősen különbözik a ma általánosan alkalmazott nyelvektől. Selinger csapata gyakorlatilag ezt a lambda-kalkulus alapú nyelvet alakította át a kubiteknek megfelelően, valamint elkészítettek egy Quipper kód-könyvtárat hét létező kvantum algoritmus végrehajtásához. A csapat reményei szerint további algoritmusokat adhatnak ehhez a könyvtárhoz, létrehozva egy készletet, ami lehetővé teszi a kvantum programozóknak, hogy modulok összeillesztésével építhessék fel szoftvereiket, mint azt a klasszikus programozók teszik például a Java-val. "Egy jól megtervezett programozási nyelv segít gondolkozásunk strukturálásában és információkat ad egy problémáról" - mondta Selinger. "Az új kvantum algoritmusok tervezésének hasznos eszközévé válhat"
"Az emberek a Quipper-hez hasonló nyelveket felhasználhatják a kvantum szoftver írásával kapcsolatos ötleteik és ismereteik teszteléséhez" - nyilatkozott Thorsten Altenkirch, a Nottingham Egyetem kutatója a New Scientistnek, hozzátéve, hogy különösnek tűnhet egy programozási nyelv megalkotása egy olyan gyermekcipőben járó hardver számára, mint a kvantum számítógép, a szoftver azonban ebben az esetben hatással lehet a jövő kvantum számítógépeinek fejlesztésére is.
A Quipper megalkotását az Egyesült Államok Hírszerzési Fejlett Kutatási Projektek Ügynöksége, az IARPA finanszírozta, hogy megállapítsák, mennyi kubitre lenne szüksége egy kvantum számítógépnek a klasszikus hardver felülmúlására adott feladatokban. Egy magas szintű programozási nyelven, esetünkben a Quipper-ben megírt programok egyértelműbbé teszik egy algoritmus hardver követelményeit, ami máris több meglepetést okozott. "Sokkal több erőforrásra lesz szükség, mint gondolták" - mondta Selinger, aki azonban nem beszélhetett a pontos eredményekről.
Várakozása szerint a műszaki tudományok fejlődésével, például a zaj csökkentésével egy gyakorlati kvantum számítógéphez szükséges kubitek száma idővel csökkenni fog.