Q Sharp
Q#(发音为Q sharp)是一种用于表达量子算法的特定领域编程语言。[2] 它最初作为量子开发套件的一部分由微软公开发布。[3] 历史在2017年9月26日的Microsoft Ignite主题演讲中,微软宣布他们将发布一种专门针对量子计算机的新编程语言。[4] 2017年12月11日,微软将Q#作为量子开发套件的一部分正式发布。 用法Q#仅可作为Visual Studio的单独下载的扩展名提供。[5] Quantum开发套件附带一个能够运行Q#的量子模拟器。 为了调用量子模拟器,使用另一种.NET框架,它为模拟器提供(经典)输入数据,并从模拟器中读取(经典)输出数据。 設計Q#的設計目的是爲了擺脫傳統計算機語言對於暢通電子計算機編程模型的思維模式,轉而通過更加專注算法的方式來對量子計算機能夠擁有更爲良好的適配,而且傳統語言一般不支援對於量子位元的控制。Q#的針對目標是大量使用量子計算的應用程式的高效率開發,而不是簡單算法的固定實現。[6] 功能Q#的一個主要特徵是能夠為算法創建并且能夠使用量子位元,因此Q#的能力中最爲突出的就是能夠通過受控反閘和阿達馬變換進行量子纏結并且引入量子位元的叠加。個別地來説,有托佛利閘、包立矩陣等,更多内容詳見量子閘。 Q#等編譯運行特徵:
最終能夠與Q#結合的硬體堆棧有望能夠將量子位元實現在量子拓朴計算中。當前量子開發套件附帶的量子模擬器能夠在使用者機器上處理多達32個量子位元,在Azure上可處理多達40個量子位元。 檔案以及資源目前,可用於Q#的資源很少,但官方文檔已發佈有Microsoft Developer Network:Q#(页面存档备份,存于互联网档案馆)、Microsoft Quantum Github(页面存档备份,存于互联网档案馆)。其中在Github上的項目也是一個大型示例項目程式的集合,其實現了各種量子算法以及調試模型。 微軟在Codeforces上也主持過一場量子編碼競賽,並在當時提供了相關材料以幫助回答部落格文章中所提到的問題,以及教程中問題的詳細解決方案。 微軟提供了一系列的學習練習(页面存档备份,存于互联网档案馆),以幫助學習Q#。其中包含各種資源的鏈接以及問題的解決方案。 語法與C#的相似之處:
與F#的相似之處:
差異:
参考文献
外部連結 |
Portal di Ensiklopedia Dunia