【無料で量子コンピュータ】IBM Quantum Computingで素因数分解してみた 【shorのアルゴリズム】

量子コンピュータ

IBM Quantum Computingを使えば,だれでも無料で5bitまでの量子コンピュータを使用できます

IBM | Quantum Computing
Quantum starts here.

こんな感じで,ゲートと呼ばれるブロックをドラッグするだけで量子回路を簡単に作れます.

今回は,このIBM Quantum Computerを使ってみたいと思います.

使い方は,こちらの記事を参考にすると良いと思います.

IBM Quantum Computing で計算してみよう
IBM は 2016年5月4日に世界で初めて、量子コンピューターをクラウドで公開し、誰でも使えるようにしました。2017年11月には 50 量子ビットの試作機の製作と稼働に成功、12月には 20 量子ビットのお客様への提供を始めました。この記事では、この IBM Quantum Experience の使い方や量子コン...

といっても,使い方は非常に簡単で,楽譜のような線の上にゲートを置くだけなので,説明なしでもすぐに使えると思います.

量子コンピュータで素因数分解してみた

今回は,量子コンピュータが得意とする,素因数分解のためのshorのアルゴリズムを組んでみました.

このアルゴリズムによって,古典コンピュータ(我々が使っているコンピュータ)ではものすごく時間がかかる素因数分解でも,一瞬(多項式時間)で解くことができます.

以下の記事を参考にさせて頂きました.

量子コンピュータで素因数分解3分クッキング - Qiita
はじめに (注)私は量子コンピュータや量子情報に関する専門家ではありません. 不適切な表現等ありましたらご指摘いただけると幸いです. 皆さん量子コンピュータについてどんなイメージを持っていますか? なんか難しそう,ニュースで...

shorのアルゴリズムは,以下の通りです(こちらの記事の画像が分かりやすかったので,引用させていただきました).

shorのアルゴリズム

Qiita 量子コンピュータで素因数分解3分クッキング より引用

このうち,③の部分が量子コンピュータが得意とする部分です.ここを計算する量子回路を組みます(ほかの部分は今回は手計算でやります.古典コンピュータでもOK).

shorのアルゴリズムの周期Tを求める部分③は,以下の量子回路で表現できます.

一つ一つのゲートについては,別の記事で解説したいと思います.

左から数えて3段目の,q1からq2に伸びている+のオタマジャクシみたいなやつまでで,f(x)=4^x(mod 15)を作っています.

とにかく,このような量子回路を組めば周期Tを求めることができ,素因数分解できます.

上の量子回路の実行結果は,以下のようになっています.

T=0と2がそれぞれ50%の確率で正解という結果が得られました.

周期が0であるのは不適切なので,周期は2ということになります.

shorのアルゴリズム④に従って,a^(T/2)±1=4^(2/2)±1=5,3とN=15の最大公約数を求めると,それぞれ53となります.

5×3=15なので,素因数分解できていることが分かります.

5bitまでしか使えないので,あまり計算の速さは感じられませんが,量子コンピュータの勉強にはなりました.

shorのアルゴリズムをもっと学びたい人へ

shorのアルゴリズムについてより詳しく勉強したいひとは,以下の動画などがおすすめです.

量子コンピュータ授業 #7 ショアの素因数分解アルゴリズム

1時間規模の講義動画を上げてくれているのはありがたいですね.

話題の映画やアニメを見るならU-NEXTがおすすめです!
今なら31日間無料で見放題!!
無料体験中に忘れずに解約すればお金はかかりません!
キャンペーン終了前にお早めの登録を!!
※筆者も利用しました( ´∀` )

量子コンピュータ
理系リアルタイムをフォローする
理系リアルタイム

コメント

タイトルとURLをコピーしました