OpenQASM
Website: openqasm.com
Limbajul de asamblare cuantică deschisă (OpenQASM; pronunțat Open KAZM) este un limbaj de programare conceput pentru descrierea circuitelor cuantice și algoritmilor pentru execuție pe calculatoarele cuantice.
Este conceput pentru a fi o reprezentare intermediară care poate fi utilizată de compilatorii de nivel superior pentru a comunica cu hardware-ul cuantic și permite descrierea unei game largi de operații cuantice, precum și controlul clasic de flux de avans pe baza rezultatelor de măsurare.
Limba include un mecanism de descriere a calendarului explicit al instrucțiunilor și permite atașarea definițiilor de nivel scăzut la porți pentru sarcini precum calibrarea.
OpenQASM nu este destinat pentru calculul clasic cu scop general, iar implementările hardware ale limbii pot să nu suporte întreaga gamă de manipulare a datelor descrise în specificație.
Compilatorii pentru OpenQASM trebuie să susțină o gamă largă de operațiuni clasice pentru constante de compilare, dar sprijinul pentru aceste operațiuni pentru valorile de rulare poate varia între implementări.
Limba a fost descrisă pentru prima dată într-o lucrare publicată în iulie 2017 și o sursă de referință Implementarea codului a fost lansată ca parte a kitului de software cu informare cuantică IBM (Qiskit) pentru utilizare cu platforma lor IBM Quantum Experience Cloud Quantum Computing.
Limba are calități similare cu limbile tradiționale de descriere hardware, cum ar fi Verilog.
OpenQASM definește versiunea sa în fruntea unui fișier sursă ca număr, ca în declarație: nivelul implementărilor originale publicate ale OpenQASM este OpenQASM 2.0. Versiunea 3.0 a specificației este cea curentă și poate fi vizualizată la depozitul OpenQASM de pe GitHub.