量子回路の連結
Classiqの合成エンジンは、量子回路の生成を大幅に改善します。例えば、機能的なモデルから始めることで、浅い回路を生成することができたり、ハードウェアでの実行が難しい2量子ビットゲートをなるべく使わない回路を作成することができます。
2つの量子回路を連結することは、どちらか1つの回路が非常に大きい場合に有益です。最適化された回路の合成には時間がかかりますが、実施は一度で済みます。二つ目の回路は小さく、合成プロセスは繰り返され、より速く処理されます。
これを行うため、大きな回路と小さな回路を別々に合成します。
両回路の量子ビット数が異なる場合、右側のレジスタで回路を接続します。このレジスタを「res」と呼ぶことにします。まず、合成後にこのレジスタを次のように見つけます:
同様に、小さな回路にも同じ操作を行います。この場合、小さな回路には「res」レジスタのみが含まれていると仮定します。
その後、回路のqasmファイルを取得し、Qiskitを使用して回路を接続します:
これで量子回路(qc) は小さな回路と大きな回路で接続されました。この回路を実行するには、そのqasmファイルを保存し、Classiq IDEにアップロードします。
具体的な例として、HHLアルゴリズムは、与えられたAとbに対して、Ax=b のxを求めます。アルゴリズムの難しい部分はAに関するもので、簡単なブロックはbのための状態準備のみを扱います。bが反復的に変化する問題では、状態準備ブロックを反復的に合成し、Aを扱う回路はそのまま使用し続けることができます。このような問題は、工学や物理システムでよく見られます

このシミュレーションは、ヒューレット・パッカード・エンタープライズ(Hewlett Packard Enterprise)と共同で実演されました。
参照:
https://arxiv.org/abs/2312.04933
https://www.computer.org/csdl/proceedings-article/qce/2023/432302a117/1SuQSLYiTT2
Classiqの合成エンジンは、量子回路の生成を大幅に改善します。例えば、機能的なモデルから始めることで、浅い回路を生成することができたり、ハードウェアでの実行が難しい2量子ビットゲートをなるべく使わない回路を作成することができます。
2つの量子回路を連結することは、どちらか1つの回路が非常に大きい場合に有益です。最適化された回路の合成には時間がかかりますが、実施は一度で済みます。二つ目の回路は小さく、合成プロセスは繰り返され、より速く処理されます。
これを行うため、大きな回路と小さな回路を別々に合成します。
両回路の量子ビット数が異なる場合、右側のレジスタで回路を接続します。このレジスタを「res」と呼ぶことにします。まず、合成後にこのレジスタを次のように見つけます:
同様に、小さな回路にも同じ操作を行います。この場合、小さな回路には「res」レジスタのみが含まれていると仮定します。
その後、回路のqasmファイルを取得し、Qiskitを使用して回路を接続します:
これで量子回路(qc) は小さな回路と大きな回路で接続されました。この回路を実行するには、そのqasmファイルを保存し、Classiq IDEにアップロードします。
具体的な例として、HHLアルゴリズムは、与えられたAとbに対して、Ax=b のxを求めます。アルゴリズムの難しい部分はAに関するもので、簡単なブロックはbのための状態準備のみを扱います。bが反復的に変化する問題では、状態準備ブロックを反復的に合成し、Aを扱う回路はそのまま使用し続けることができます。このような問題は、工学や物理システムでよく見られます

このシミュレーションは、ヒューレット・パッカード・エンタープライズ(Hewlett Packard Enterprise)と共同で実演されました。
参照:
https://arxiv.org/abs/2312.04933
https://www.computer.org/csdl/proceedings-article/qce/2023/432302a117/1SuQSLYiTT2