Magas szintű kvantumprogramozási nyelv tervezése affin típusfegyelemmel és fázis-tudatos vezérlési s
A kitűzött feladat egy saját tervezésű, magas szintű kvantumprogramozási nyelv specifikációjának megalkotása azzal a céllal, hogy a kvantumprogramok leírása a programozói szándékhoz, ne a fizikai áramkörhöz igazodjon. A nyelv két tervezési alapelve a kvantumváltozókra vonatkozó affin típusfegyelem - amely nyelvi szinten kényszeríti ki a no-cloning tételt, és a segéd-qubitek visszaszámítását (uncomputation) a fordítóra hárítja -, valamint a vezérlési szerkezetek fázis-tudatos szétválasztása, amely megkülönbözteti az áramkör szerkezetét alakító, a koherens (kontrollált) és a mérési eredményre koherenciaidőn belül reagáló elágazásokat.
. A hallgató feladatának a következőkre kell kiterjednie:
· Tekintse át a magas szintű kvantumnyelvek szakirodalmát, különös tekintettel a szubstrukturális (lineáris és affin) típusrendszerekre és a biztonságos automatikus uncomputationre!
· Dolgozza ki a nyelv specifikációját és formális EBNF nyelvtanát: típusrendszer, szuperpozíció-inicializálás, kvantumaritmetika, vezérlési szerkezetek, paraméterezés és eljárások!
· Értékelje az egyes nyelvi konstrukciók létjogosultságát a kvantumprogramozásban, és indokolja a tervezési döntéseket a precedensnyelvekkel összevetve!
· Tervezze meg a nyelvi elemek áramkör-szintű megfeleltetését, a szükséges szemantikai ellenőrzéseket és a kvantum-analízis algoritmusait (élettartam-analízis, automatikus uncomputation, segédqubit-újrafelhasználás), a korlátaikkal együtt!
· Igazolja a tervezés megvalósíthatóságát prototípus-fordítóval, és demonstrálja a nyelv használhatóságát jellegzetes kvantumalgoritmusokon megírt példaprogramokkal, értékelve a megközelítés előnyeit és korlátait!