3
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【独習Quantum番外編】GUIで直感的に!IBM Quantum Composerで実機を動かしてみよう」

Last updated at Posted at 2025-03-27

この記事は、量子コンピュータ学習シリーズ『コピペで動く!量子コンピュータプログラミング超入門 on qBraid』の番外編です。

プログラミングとは少し違うアプローチで、GUIを使って直感的に量子回路を組み、"本物の"量子コンピュータを動かす体験をしてみたい方向けの記事です。

※この記事で紹介するComposerはIBM実機との接続が必須となり、無料利用枠を消費します。まずはプログラミングとシミュレータで気軽に学べる本編から始めることをお勧めします。

▼シリーズ本編(まずはこちらから!)
コピペで動く!量子コンピュータプログラミング超入門 on qBraid

安定するqBarid環境(Python3+Qiskit2.1.1+JupyterNotebook)とIBM Composer環境(IBMアカウントは必須)が入手出来たら、次はいよいよ量子コンピューターを動かしてみよう。

IBM ComposerはOpenQASM2.0というコードで記載することができる。ただ、そのお作法を量子コンピューターに触れるためだけに学ぶのはちょっとハードルが高い。そこで、Shorのアルゴリズム(素因数分解)とGroverのアルゴリズム(データ検索)をPythonからOpenQASM2.0に変換したコードがあるのでここに公開する。

Shorのアルゴリズム(素因数分解)OpenQASM2.0サンプル

OPENQASM 2.0;
include "qelib1.inc";
qreg q[4];
creg c[4];
h q[0];
h q[1];
h q[2];
h q[3];
cx q[0],q[1];
cx q[1],q[2];
cx q[2],q[3];
h q[0];
rz(pi/4) q[1];
rz(pi/4) q[0];
cx q[1],q[0];
rz(-pi/4) q[0];
cx q[0],q[1];
cx q[1],q[0];
rz(pi/8) q[2];
rz(pi/8) q[0];
cx q[2],q[0];
rz(-pi/8) q[0];
cx q[0],q[2];
cx q[2],q[0];
rz(pi/16) q[3];
rz(pi/16) q[0];
cx q[3],q[0];
rz(-pi/16) q[0];
cx q[0],q[3];
cx q[3],q[0];
h q[1];
rz(pi/4) q[2];
rz(pi/4) q[1];
cx q[2],q[1];
rz(-pi/4) q[1];
cx q[1],q[2];
cx q[2],q[1];
rz(pi/8) q[3];
rz(pi/8) q[1];
cx q[3],q[1];
rz(-pi/8) q[1];
cx q[1],q[3];
cx q[3],q[1];
h q[2];
rz(pi/4) q[3];
rz(pi/4) q[2];
cx q[3],q[2];
rz(-pi/4) q[2];
cx q[2],q[3];
cx q[3],q[2];
h q[3];
measure q[0] -> c[0];
measure q[1] -> c[1];
measure q[2] -> c[2];
measure q[3] -> c[3];

Groverのアルゴリズム(データ検索)OpenQASM2.0サンプル

// Name of Experiment: Grover N=2 A=11 v1

OPENQASM 2.0;
include "qelib1.inc";


qreg q[5];
creg c[5];

h q[1];
h q[2];
h q[2];
cx q[1],q[2];
h q[2];
h q[1];
h q[2];
x q[1];
x q[2];
h q[2];
cx q[1],q[2];
h q[2];
x q[1];
x q[2];
h q[1];
h q[2];
measure q[1] -> c[1];
measure q[2] -> c[2];

これでIBM Composerを使って、ShorのアルゴリズムをIBM Quantumで実行した場合の観測結果が得られる。
ただこれは観測結果を受け取るだけで、観測結果を評価、利用は出来ない。

観測結果を評価、利用するにはPythonで実装する必要があります。

3
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?