量子コンピューティングのためのハードウェアは、あと数年で現実の使用事例が見られる段階にまで開発が進んでいる(Volkswagenリリース)。それにともない、当然のことながら量子コンピューターの力を最大限に活かせるプログラム方法の研究も着実に増えている。その分野の研究のひとつにSilq(シルク)がある。スイス連邦工科大学(ETH)チューリッヒ校の量子コンピューティング用高水準プログラミング言語だ。
□Volkswagen demonstrates first successful real-world use of quantum computing to help optimize traffic routing - Volkswagen US Media Site
https://media.vw.com/releases/1236
□Silq - What is Silq?
https://silq.ethz.ch/

ここで重視すべきは、「高水準プログラミング言語」であるという点だ。この言語の開発に携わる研究者たちによれば、現在、量子コンピューターのプログラマーたちは、まだ抽象度の低い低水準言語で必要以上に苦労しているという。

「このプロジェクトの歴史は、量子コンピューターの中核的な問題を解決したいというところから始まっています」とETHコンピューター科学准教授であるMartin Vechev(マーティン・ベシェフ)氏は私に話してくれた。
□Prof. Dr. Martin Vechev | Secure, Reliable, and Intelligent Systems Lab
https://www.sri.inf.ethz.ch/people/martin
「しかし量子コンピューティングの中核的問題を解決するためには、例えば量子プログラムの解析や推論をするには、それらの問題が記述されている言語が必要です。それは既存の言語です。私たちは量子コンピューティングのさまざまな問題を見てきましたが、基本的にはその言語を見て、問題がどのように記述されているかを確認するという作業が主体になります。しかしお察しのとおり、これは理想的とはいえず、最適な方法でありません」。

https://techcrunchjp.files.wordpress.com/2020/06/annotation-2020-06-14-184346.jpg

そこで彼らは、実際に使われている別の言語も調べてみることにした。Microsoft(マイクロソフト)のQ#や、IBMのQiskitなどのSDKだ。

「当初は、新しい言語を開発する必要性などまったく感じていませんでした」とベシェフ氏の博士課程大学院生であるBenjamin Bichsel(ベンジャミン・ビクセル)氏は話す。「そこをそもそものスタート地点として検討するなど、考えてもみませんでした。量子コンピューターで、もっと高度な問題を解決したいと思ったときに、よしそれじゃあ適当に言語をひとつ選んで、それでやろうというのが私たちの考え方でした。しかし気がついたのです。私たちが推論したいと関心を持つような高度なプロパティーには、既存の言語はまったく不適格でした」

>>2 へ続く

2020年6月16日
TechCrunch Japan
https://jp.techcrunch.com/2020/06/16/2020-06-15-silq-is-a-new-high-level-programming-language-for-quantum-computers/