LoginSignup
4
1

More than 3 years have passed since last update.

[量子コンピューター]Qiskitの使い方

Last updated at Posted at 2019-10-17

基本的にはこの記事の解説となります。
https://quantum-computing.ibm.com/jupyter/tutorial/fundamentals/1_getting_started_with_qiskit.ipynb

Getting Started with Qiskit

Qiskitでの作業の外観を提供する。Qiskitの基本的なパッケージはTerraである。これは量子コンピュータをプログラムするのに必要な基本的なブロックを提供する。Qiskitの基本的なユニットは量子回路(https://en.wikipedia.org/wiki/Quantum_circuit) である。Qiskitを用いた基礎的なワークフローは2つのステージからなる。BuildExecuteである。Buildはあなたが解きたい問題を表す異なる量子回路を作る。Executeはそれらを異なるバックエンドで実行する。ジョブが実行された後は、データが集められ結果が出力される。

  • 本記事の目次
    • 回路の基礎
    • 回路の可視化
    • Aerでの回路のシミュレーション
    • IBM Q実機での実行

import bumpy as np
from qiskit import *
%matplotlib inline

Circuit Basics

回路を作る

プログラムを書き始める上で基本要素は量子回路である。3量子ビットからなるQuantumCircuitを作成することから始める。

#Create a Quantum Circuit acting on a quantum register of three quits
circuit = Quantumcircuit(3)

レジスターに回路を作り終わった後、レジスタを操作するためのゲート(オペレーション)を加える。ここでは3量子ビットのGHZ状態を作る量子回路を例にとって説明する。

スクリーンショット 2019-10-12 18.16.13.png

このような状態を作成するために、私たちは3量子ビットの量子レジスターから始める。デフォルトでは、それぞれのレジスターの中にある量子ビットは0の状態になっている。GHZ状態を作るために、以下のような回路を適応させる。

  • アダマールゲートを0量子ビットにかける。すると、0と1の以下のような重ね合わせ状態となる。スクリーンショット 2019-10-12 18.20.18.png
  • コントロールドノット(C-NOT)を0量子ビットと1量子ビットの間にかける。
  • 同じくC-NOTを0量子ビットと2量子ビットにかける。

理想的な量子コンピューターであれば、この回路を実行して得られる状態は上記のGHZ状態である。


SQL小技集
https://qiita.com/ool/items/75da830e7373138c8125
UTCとJST
https://qiita.com/ool/items/6be9cc290c8ad9e0f5bc
今流行りの量子コンピューター
[量子コンピューター]Qisikitでアダマールゲートを実装する
https://qiita.com/ool/items/1a5041edddc11b14efc0
[Qiskitのアカウント認証の仕方]Qiskit IBMQ プロバイダー
https://qiita.com/ool/items/e80c1266cda68984a103
Qiskitの使い方
https://qiita.com/ool/items/2227d2d515caa5087752
[量子コンピューター]Qiskit Tutorials
https://qiita.com/ool/items/2a5038df1471635d442c

4
1
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
4
1