OpenQASM

OpenQASM
Son sürüm 3.0 (5 Kasım 2020)
Lisans Apache lisansı

OpenQASM (Açık Kuantum Assembly Dili), çeviri dili serbest ait kuantum gelişimi  ; kuantum hesaplamada öğretim için tasarlanmış bir ara dil türüdür.

 Dil, Andrew W. Cross, Lev S. Bishop, John A. Smolin, Jay M. Gambetta tarafından yazılan Arxiv : Open Quantum Assembly Language üzerine bir makalede 2017 yılında oluşturulmuş ve yayınlanmıştır.

IBM Qiskit kuantum yazılımının bir parçası olarak bir referans kaynak kodu uygulaması yayınlandı . Bu, bulut IBM Q Experience üzerindeki kuantum bilişim platformu için kullanılacaktır .

OpenQASM, bir donanım tanımlama dilidir, ancak kuantum hesaplama sürümündedir .

Misal

Resmi kütüphanesinden bir OpenQASM kaynak kodu örneği .

Program, iki adet dört bitlik sayıyı birbirine ekler .

// quantum ripple-carry adder from Cuccaro et al, quant-ph/0410184 OPENQASM 2.0; include "qelib1.inc"; gate majority a,b,c { cx c,b; cx c,a; ccx a,b,c; } gate unmaj a,b,c { ccx a,b,c; cx c,a; cx a,b; } qreg cin[1]; qreg a[4]; qreg b[4]; qreg cout[1]; creg ans[5]; // set input states x a[0]; // a = 0001 x b; // b = 1111 // add a to b, storing result in b majority cin[0],b[0],a[0]; majority a[0],b[1],a[1]; majority a[1],b[2],a[2]; majority a[2],b[3],a[3]; cx a[3],cout[0]; unmaj a[2],b[3],a[3]; unmaj a[1],b[2],a[2]; unmaj a[0],b[1],a[1]; unmaj cin[0],b[0],a[0]; measure b[0] -> ans[0]; measure b[1] -> ans[1]; measure b[2] -> ans[2]; measure b[3] -> ans[3]; measure cout[0] -> ans[4];

Ayrıca görün

Notlar ve referanslar

  1. Sürüm 3.0  " ,5 Kasım 2020( 11 Kasım 2020'de erişildi )
  2. "  https://api.github.com/repos/QISKit/openqasm  " ( 6 Mart 2019'da erişildi )
  3. Açık Kuantum Birleştirme Dili'nin "Özeti", Andrew W. Cross, Lev S. Bishop, John A. Smolin, Jay M. Gambetta, ArXiv
  4. Github sitesindeki bilgiler