等身大ぬいぐるみ ラブドール 6
■ このスレッドは過去ログ倉庫に格納されています
もうどうにでもな〜れ
*゚゚・*+。
| ゚*。
。∩∧∧ *
+ (・ω・`) *+゚
*。ヽ つ*゚*
゙・+。*・゚⊃ +゚
☆ ∪ 。*゚
゙・+。*・゚ そもそも
話題の無い時は数週間レスが付かない過疎スレ荒らして
何が楽しいんだろう 有限次元の量子論
時間発展写像は TP かつ正写像であるだけでなく,
CP 写像であるべきである. 理由は以下の通りである
量 子系 A, B と相互作用しない複素内積空間 Cn で表現される
n 準位系 Cn があった場合に, A + Cn の状態を B + Cn の状態へと写す
時間発展写像 E ⊗ In : L (HA ⊗ Cn) → L (HB ⊗ Cn) を考える このとき, 上述の議 論同様に, 任意の n に対して,
時間発展写像 E ⊗ In : L (HA ⊗ Cn) → L (HB ⊗ Cn) は
TP かつ正写像である べきである
つまり, E: L(HA) → L(HB) は CP 写像であるべきである 時間発展を記述する写 像は CPTP 写像であるべきであると言えた
量子系の時間発展は少なくとも CPTP 写像であるべきだ
一方, CPTP 写 像による時間発展が, 量子論の公理に矛盾することなく
実現可能であるのかを議論しなければならない CPTP 写像による時間発展は
命題 2.25 で述べた量子系の状態, 物理量, 測定に関する公理
命題 2.26 で述べた閉じた量子系の時間発展に関する公理
公理 2.23 で述べた合成系の公理に矛盾するこ となく
実現可能であることが知られている 2.5 量子系の測定の記述測定とは, 系の状態にある操作をすることで
測定値を得ることと言えよう. ここでは, 測定によって得られる 測定値は,
離散確率分布に従うとする 量子状態の測定 M は, アフィン性を満たすべきである. つ まり,確率p, 1−pで量子状態ρ,
σ∈S(H)が混合した量子状態pρ+(1−p)σの下で測定値mを得る確率 P(M =m|pρ+(1−p)σ)は,
P(M = m | pρ+(1−p)σ) = pP(M = m | ρ)+(1−p)P(M = m | σ) (2.26) を満たす 測定 M がアフィン性を満たすことは, 測定 M が POVM 測定であることと同値である
POVM 測定とは以下のように定義される. 定義 2.29 (POVM, POVM 測定 )
線型演算子の集合{Em:H→H}m∈M がPOVMであるとは,任意のm∈Mに対してEm ≥0かつ
Em = IH であることをいう. ここで, M は有限集合 量子系における測定 M が POVM 測定であるとは, 状態 ρ ∈ S (H) の下で, 測定値 m ∈ M を得る確率
P (M = m | ρ) が, ある POVM {Em : H → H}m∈M を用いて, P (M = m | ρ) = Tr [Emρ] で与えら れる 物理量 A = aPa の測定は, POVM {Pa} による POVM 測定である. a∈σ(A) a∈σ(A)
量子系の測定は少なくとも POVM 測定であるべきだということ
POVM 測定 が, 量子論の公理に矛盾することなく実現可能であるのかを議論 POVM 測定は, 命題 2.25 で述べた量子系の状態, 物理量, 測定に
関する公理, 命題 2.26 で述べた閉じた量子系m∈が存在する 有限次元の量子論 の時間発展に関する公理, 公理 2.23 で
述べた合成系の公理に矛盾することなく実現可能である
量子回路では, 量子ビットと呼ばれる情報の媒体に対して
量子ゲートと 呼ばれる操作することで計算を行い,
測定によって計算結果を得る 量子回路の構成要素である量子ビット, 量子ゲート, 測 定について
量子コンピュータへの雑音のモデルの量子回路 による量子計算のための
SDK である Qiskit量子ビット 3.1.1 単一量子ビット単一量子ビットとは
複素内積空間 C2 で表現される量子系のこと
単一量子ビットのある正規直交基 底内積は ⟨i|j⟩ = δij で定まっている 計算基底単一量子ビットは, 量子回路図上で1 本の配線として描かれる
多量子ビットn 量子ビットとは単一量子ビットを n 個合成した量子系のこと
n 量子ビットとはテンソル 積ヒルベルト空間 (C2)⊗n で表現される
量子系のことである. n 量子ビットのある正規直交基底をn−1 19|i0i1 ...in−1⟩ :=
|ik⟩ | ik ∈ {0,1}, k = 0,1,...,n − 1 (3.2)
k=0 量子回路 20 と書く. この基底のことを計算基底添字 k に対応する複素内積空間 C2 を第 k 量子ビット
量子ビットを意味する添字は 0 オリジンとする. n 量子ビットは, 量子回路図上で 本の配線として描かれたり,
第 0 量子ビット, 第 1 量子ビット, . . . と対応させる. また, 単一量子ビットと区別せず 1 本の配線でも描かれる n 量子ビットの初期状態は |0⟩⊗n 単一量子ビットに作用するユニタリ演算子 U 公理 2.22 より,
単一量子 ゲートとは単一量子ビットの時間発展を決定する演算子単一量子ゲート U は, 量子回路図上で
Uのように描かれる. 量子回路図上で, 単一量子ビットの初期状態 |ψ0⟩ に対して量子ゲート U を
作用させた結果, 単一量子ビットの状態が |ψ1⟩ に変化ψ1⟩ = U |ψ0⟩ (3.3)を表現するとき,|ψ0⟩ U |ψ1⟩と描く
量子計算の議論において重要な単一量子ゲートの例を以下に挙げる. 計算基底による行列表現を用いる.
例 3.1 (パウリ行列) パウリ行列 I, X, Y , Z はそれぞれ,I :=|0⟩⟨0|+|1⟩⟨1|= 1 0 (3.4) 01 量子回路
(3.5) (3.6) (3.7)
X :=|1⟩⟨0|+|0⟩⟨1|= 0 1 10
Y :=i|1⟩⟨0|−i|0⟩⟨1|= 0 −i i0
Z :=|0⟩⟨0|−|1⟩⟨1|= 1 0 0 −1
と定義される. また,σ0 :=I,σ1 =X,σ2 =Y,σ3 =Z 3.2 (アダマールゲート, 位相ゲート, T ゲート) アダマールゲート H, 位相ゲート S, T ゲート T はそれ
H := √1 (|0⟩⟨0| + |0⟩⟨1| + |1⟩⟨0| − |1⟩⟨1|) = √1 1 1
(3.8)
(3.9) (3.10)
(3.11)
(3.12)
(3.13)
2
2 1 −1
S:=|0⟩⟨0|+i|1⟩⟨1|= 1 0 0i
T:=|0⟩⟨0|+eiπ4 |1⟩⟨1|= 1 0 0 eiπ4と定義 3.3 (回転ゲート) 回転ゲート RX , RY , RZ は定義される.
cosγ RX(γ):=e−iγX/2 =cosγ2I−isinγ2X= 2γ −i sin 2
−isinγ γ2
cos 2
cosγ −sinγ RY(γ):=e−iγY/2 =cosγI−isinγY = 2 2
2 2 sinγ2cosγ2
RZ(γ):=e−iγZ/2 =cosγI−isinγZ=e−iγ/2 0 2 2 0 eiγ/2
3.2.2 多量子ビットゲート 多量子ビットゲートとは, n (≥ 2) 量子ビットに作用する
ユニタリ演算子 U のことである. 多量子ビットに
作用する多量子ビットゲート U は, 量子回路図上で /U/
のように描かれる. n ビットの初期状態 |ψ0⟩ に対して
量子ゲート U を作用させた結果, n ビットの状態が |ψ1⟩ に
変化したこと
|ψ1⟩ = U |ψ0⟩ (3.14) 量子回路 を表現するとき,22 |ψ0⟩ / U / |ψ1⟩
多量子ビットゲートでは, 単一量子ビットゲートにはない
制御演算と呼ばれる演算が可能である. 制御演算とは,
制御量子ビットの量子状態が |1⟩ であるときに限り,
標的量子ビットに対してユニタリ演算を作用させる 演算 量子計算の議論において重要な制御演算の 計算基底による行列表現
3.4 (CNOT ゲート) 制御量子ビットを 1 量子ビット, 標的量子ビットを
1 量子ビットとする. 制御量子 ビットの量子状態が |1⟩ のときに限り,
標的量子ビットに X ゲートを作用させる演算を CNOT ゲート 制御量子ビットが第 i 量子ビット, 標的量子ビットが第 j 量子ビットのとき,
CNOT ゲートを Cji [X] と書く. 2 量子ビットに作用する C10 [X] は,
C10 [X] = |00⟩⟨00| + |01⟩⟨01| + |11⟩⟨10| + |10⟩⟨11| = 0 0 0 1 0010
のように表され, 量子回路図上で3.5 (SWAP ゲート) 第 i 量子ビット,
第 j 量子ビットに作用する SWAP ゲート SWAPij は,
1000
0 0 1 0 SWAPij := Cji [X]Cij [X]Cji [X] = 0 1 0 0
(3.15)
1000 0 1 0 0と定義 量子回路図上で
× ×
0001
(3.16)
SWAP ゲート SWAPij は, 第 i 量子ビットと第 j 量子ビットの状態を入れ替えるような働き
SWAP ゲートは, 量子コンピュータ上で隣接していない量子ビット間に 2 量子ビットゲートを
作用させると きに用いられる. ここでは, 図 3.1a のような量子ビットのトポロジーを持つ
3 量子ビットの量子コンピュータ上で, 隣接していない第 0 量子ビットと第 2 量子ビットに
CNOT ゲート C20 [X] を作用3.1b のように, SWAP12 で第 1 量子ビットと第 2 量子ビットの
状態を入れ替えたのち, 第 0 量子 ビットと第 1 量子ビットに CNOT ゲートを作用させ,
再び SWAP12 で第 1 量子ビットと第 2 量子ビットの 状態を入れ替え 0•
1××
2×× (a) (b)
3.1: (a) のような量子ビットのトポロジーを持つ量子コンピュータ上で,
第 0 量子ビットと第 2 量子ビットに CNOT ゲート C20 [X] を作用させるには,
(b) のように SWAP ゲート3.6 (制御 U ゲート) CNOT ゲートを一般化する 制御量子ビットを 1 量子ビット, 標的量子ビットを 1 量子ビットとする
制御量子ビットの量子状態が |1⟩ のときに限り, 標的量子ビットに単一量子ゲート U を
作 用させる演算を制御 U ゲートという. 制御量子ビットが第 i 量子ビット,
標的量子ビットが第 j 量子ビットの とき, 制御 U ゲートを Cji [U] 量子ビットに作用する C10 [U] は,
0 1 2C10 [U] = |00⟩⟨00| + |01⟩⟨01| + (I ⊗ U)|10⟩⟨10| + (I ⊗ U)|11⟩⟨11| =
のように表され, 量子回路図上でI 0 0U
(3.17)
•
U 3.7 (トフォリゲート) 制御量子ビットを 2 量子ビット, 標的量子ビットを
1 量子ビットとする. 制御量子 ビットの量子状態が |11⟩ のときに限り,
標的量子ビットに X ゲートを作用させる演算をトフォリゲート 制御量子ビットが第 i1, i2 量子ビット, 標的量子ビットが第 j 量子ビットのとき,
トフォリゲートを Ci1,i2 [X] と書く. 3 量子ビットに作用する C0,1 [X] は,
j2
C 0,1 [X ] = |000⟩ ⟨000| + |001⟩ ⟨001| + |010⟩ ⟨010| + |011⟩ ⟨011| 2
+ |100⟩ ⟨100| + |101⟩ ⟨101| + |111⟩ ⟨110| + |110⟩ ⟨111| (3.18) 量子回路 24
10000000 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0
のように表され, 量子回路図上で
のように描く.3.3 測定
0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 00000010
• •
=0 0 0 0 1 0 0 0 (3.19) 量子コンピュータでは, 量子ビットに対して量子ゲートを
作用させることで得た量子状態を測定することで,
計算結果を得る.単一量子ビットの測定を, 量子回路図上で
メーター記号を用いて描く. 特に断らない限り,
単一量子ビットの測定は, 計算基底による測定, つま り POVM
{|0⟩ ⟨0| , |1⟩ ⟨1|} (3.20) による POVM 測定を指す.
また, 単一量子ビットの測定結果を古典ビットの情報として
格納することを強調するとき, 量子回路図上でのように表す ここで, 2 重線の配線が古典ビット 量子回路 25 同様に,
n 量子ビットの第 i1,i2,...,ik (0 ≤ i1 < i2 < ··· < ik < n)
量子ビット測定は,I⊗i1 ⊗|j1⟩⟨j1|⊗I⊗i2−i1−1 ⊗|j2⟩
⟨j2|⊗···⊗|jk⟩⟨jk|⊗I⊗n−ik−1 |jl ∈{0,1}, l=1,2,...,k(3.21) による
POVM 測定を指す. 特に, n 量子ビット全てを測定する場合は,
n 量子ビットの計算基底による測定に対応する 3.4 雑音量子コンピュータに対する雑音は,
CPTP 写像として記述できる. ここでは,
量子コンピュータに対する雑音のモデルとの例として,
ビット反転チャンネルと分極解消チャンネルを紹介する
3.4.1 ビット反転チャンネル
1 量子ビットを考える. H = C2 とする 定義 3.8 (ビット反転チャンネル) ビット反転チャンネルを,
CPTP 写像 E : L (H) → L (H) で, A ∈ L (H)に対して,
E (A) = pA + (1 − p) XAX (3.22) なる写像と定義 p ∈ [0, 1] とした.定義 3.8 より, ビット反転チャンネル E は,
確率 p で始状態を保ち, 確率 1 − p で X を始状態に作用させる
雑音のモデルと理解できる.3.4.2 分極解消チャンネルn 量子ビット
H = (C2)⊗n とする. 分極解消チャンネルは次のように定義 i1 i2 . ik, n 量子ビットの第 i1 , i2 , . . . , ik 量子ビット測定は,
POVM量子回路 26 定義 3.9 (分極解消チャンネル)
分極解消チャンネルを, CPTP 写像 Dp : L(H) → L(H) で, A ∈ L(H) に
対して,
Dp (A) = pA + Tr [A] (1 − p) IH 2n
(3.23)(3.24)なる写像と定義
,p∈ − 1 ,1 とした. 4n −1
分極解消チャンネルの Kraus 演算子の集合は,
√ p + 1 − p M0 ∪ 1 − p Mαで表せる A ∈ L (H) に対して,
Np
N = ⃝ (Dpi ◦ Ui)
j=1
N(A)=Dp ◦U(A)
(3.25)
(3.26)
で定義する. このとき,
Np
N := ⃝ (Dpi ◦ Ui) (3.27)
j=1
N =Dp ◦U (3.28)
α̸=0
= i=0 σαi α∈{0,1,2,3}n とした.
Mα:=(α0 ,α1 ,...,αn−1 )
4n
2n n−1 分極解消チャンネルを用いて, 量子コンピュータ上の
簡単な雑音のモデルを考える. 実際の量子コンピュータ上で,
初期状態 ρ ∈ S (H) に対して量子ゲート U を作用させる際には,
U をいくつかの基本 ゲートの積 U = UNg · · · U1 に分解する 基本ゲート Ui を量子状態 に作用させる度に Dpi が作用するという
雑音のモデル N : L (H) → L (H) を考える. すると, CPTP 写像
Ui : L(H) ∋ A → UiAUi† ∈ L(H) として, 雑音のモデルは,が成立する U: L(H) ∋ A → UAU† ∈ L(H), p := pNg ...p2p1 示して いるように,
雑音のモデル N が, ユニタリ演算 U が作用したのちに分極解消チャンネル Dp が
作用する雑音 のモデルと等価であることを意味している
ここで述べた 2 つの雑音のモデルの等価性は後に用いるので,
命 題という形でまとめておく.命題 3.10 Ui ∈ L(H) (i = 1,2,...,Ng) を
ユニタリ演算子とし, Ui : L(H) ∋ A → UiAUi† ∈ L(H) とする
また, Dpi (i = 1,2,...,Ng) は分極解消チャンネルとする CPTP 写像 N : L(H) → L(H) を,U:=UNg ···U2U1に対して,
U:L(H)∋A→UAU†∈L(H)とし,p:=Ng piとした. i=1
導出については E.1 各ゲート Ui が作用するたびに, 分極解消チャンネル Dpi が
作用する雑音のモデル(b) ゲート UNg · · · U2 U1 が作用したのちに,
分極解消チャンネル Dp:=pNg ...p2 p1 が作用する雑音のモデル
3.2: 2 つの雑音のモデル (a), (b) は等価なモデルである 3.5 QiskitQiskit は, IBM 社が中心となって開発を行っている,
量子回路による量子計算のためのオープンソースの
Python 用 SDKQiskit を用いて量子回路を作成し,
シミュレータや実機を用いてQiskit では, 量子回路を
QuantumCircuit オブジェクトとして表現 QuantumCircuit オブジェク トは, 量子ビットに対応する
QuantumRegister オブジェクトや測定結果を保存する
古典ビットに対応 する ClassicalRegister オブジェクトを
コンストラクタの引数にとり初期化する こうして初期化した QuantumCircuit オブジェクトに,
量子ゲートや測定の操作をメソッドによって追加していき,
所望の量子回 路を得る. 図 3.3a にベル状態を生成し
全ての量子ビットを測定する量子回路を作るための
サンプルコードを 示し, 量子回路図を示す Qiskit では, 雑音のない場合だけでなく自ら定義した雑音のモデルの下でも,
作成した量子回路をシミュ レータによって計算することができる
計算結果を double の精度で状態ベクトルや密度演算子として得る
シ ミュレータや有限回の測定まで考慮に入れた計算を行うシミュレータがある
測定回数が ∞ 回のシミュレータQiskit では, 作成した量子回路を
IBM 社が開発している超伝導型量子コンピュータで掲示する 僕は、意図的に社会からは孤立してるけど、引き篭もりじゃないんだよね。行動派なんだ。東京に住んでいて引き篭もりだともったいないよ!
新宿渋谷高田馬場代々木秋葉原六本木下北沢吉祥寺高円寺阿佐ヶ谷目白などに年中出掛けてるからね。
それぞれに偽名で拠点があるんだ。親には無職って事にして金を巻き上げてるけど実は無職じゃ無いんだ。
何してるかは秘密だけど、悪さじゃないよ。まあ少し悪いかな。
頭脳犯だからね。知能犯だよw 君らじゃ無理。
親や親戚の年金や貯金は騙して使ってるけどさ。子供や孫は可愛いんだよ。どんな嘘でもお金はくれる。
どうせあの世まで持っていけない。家族の貯蓄は僕が有意義に使ってあげないとさ。
今日は別のネカフェに引っ越しするから忙しいんだ。
ベトナム人から買った期間限定スマホの返却交換や無能な主婦から借りてたノートパソコンの返却とか
他人の起動システムが色々入った外付けハードディスクとか移動するのも色々と持ち物が多いんだ。
まあ各ネカフェ周辺に預かり所があるから偽名で送るんだけどさ。バイク便で運んでくれるガキも手下で居るからねw
普段は伊達メガネと巨大マスクと帽子を被っていてリアルな社会でも顔を覚えられないようにしてるんだ。
コロナ対策のおかげでこんな姿で街を歩いていても買い物しても引っ越しても不審者に思われなくなったからいい時代だよ。
リアルな社会でも掲示板みたいに存在が曖昧で匿名で生きてるんだ。あぶく銭を持っていて大都会の東京だから出来るんだよ。
田舎の貧乏な乞食ヒッキーじゃあ無理だよねw
実は為替や各種メール送信や、改竄や情報操作や総会屋さんごっこで暇じゃないんだけどさ。
ネットには複数の回線で24時間接続してるから、つい、板にも寄ってさあ。
君たちを構っちゃうんだ。ラブドールは持ってるけど使った事無いよ。可愛いから持ってるだけだよ。
忙しいからドールにも構えないんだ。今日は秋葉原と神保町でチップと基盤の取り引きがあるんだ。
ついでに、ドルフィーとアゾンドールとグットスマイルカンパニーの新作も買わなきゃなんだ。
クレジットカードで買うんだけど、僕のカードじゃないんだよw ご愁傷さまだよねw 1 from qiskit import QuantumCircuit,
QuantumRegister, ClassicalRegister
2
3 nqubit = 2
4 qr = QuantumRegister(nqubit, ’q’)
5 cr = ClassicalRegister(nqubit, ’c’)
6 qc = QuantumCircuit(qr, cr)
7 qc.h(qr[0])
8 qc.cx(qr[0], qr[1])
9 qc.measure(qr, cr)
28
q0 : q1 :
H •
スルー耐性検定 失格者続出
ぬいの話題より食いつきいいじゃんおまえら CPTP 写像 N : L(H) → L(H) を,U:=UNg ···U2U1に対して,
U:L(H)∋A→UAU†∈L(H)とし,p:=Ng piとした. i=1
導出については E.1 各ゲート Ui が作用するたびに, 分極解消チャンネル Dpi が
作用する雑音のモデル(b) ゲート UNg · · · U2 U1 が作用したのちに,
分極解消チャンネル Dp:=pNg ...p2 p1 が作用する雑音のモデル
3.2: 2 つの雑音のモデル (a), (b) は等価なモデルである 3.5 QiskitQiskit は, IBM 社が中心となって開発を行っている,
量子回路による量子計算のためのオープンソースの
Python 用 SDKQiskit を用いて量子回路を作成し,
シミュレータや実機を用いてQiskit では, 量子回路を
QuantumCircuit オブジェクトとして表現 QuantumCircuit オブジェク トは, 量子ビットに対応する
QuantumRegister オブジェクトや測定結果を保存する
古典ビットに対応 する ClassicalRegister オブジェクトを
コンストラクタの引数にとり初期化する こうして初期化した QuantumCircuit オブジェクトに,
量子ゲートや測定の操作をメソッドによって追加していき,
所望の量子回 路を得る. 図 3.3a にベル状態を生成し
全ての量子ビットを測定する量子回路を作るための
サンプルコードを 示し, 量子回路図を示す Qiskit では, 雑音のない場合だけでなく自ら定義した雑音のモデルの下でも,
作成した量子回路をシミュ レータによって計算することができる
計算結果を double の精度で状態ベクトルや密度演算子として得る
シ ミュレータや有限回の測定まで考慮に入れた計算を行うシミュレータがある
測定回数が ∞ 回のシミュレータQiskit では, 作成した量子回路を
IBM 社が開発している超伝導型量子コンピュータで掲示 1 from qiskit import QuantumCircuit,
QuantumRegister, ClassicalRegister
2
3 nqubit = 2
4 qr = QuantumRegister(nqubit, ’q’)
5 cr = ClassicalRegister(nqubit, ’c’)
6 qc = QuantumCircuit(qr, cr)
7 qc.h(qr[0])
8 qc.cx(qr[0], qr[1])
9 qc.measure(qr, cr)
28
q0 : q1 :
H •
c : /2
量子回路図Qiskit を用いてベル状態を生成するための
量子回路 ibm lagos の量子ビットのトポロジー
全ての量子ビットが隣接し ているわけではない
隣接していない量子ビット間には, 量子ビットゲートを
直接作用させ ることはできない. この問題は, 例 3.5 で述べたように
SWAP ゲートを用いることで解決できる. また, IBM 社の量子コンピュータでは,
マイクロ波パルスを制御することで, 量子ゲートや量子ビットの測定を実現 あらかじめ IBM 社によってキャリブレートされた
パルス制御のためのパラメータ量子ゲートに対して
あらかじめ定められているのではなく,
いくつかの 基本ゲートに対してのみ
あらかじめ定まっていることに注意する.
こうした事情から, 作成した量子回路を,
実際の量子コンピュータの量子ビットの
トポロジーを考慮しつつ基本ゲートに分解する必要がある transpile モジュールを用いて所望の量子回路を基本ゲートに分解
transpile モ ジュールによって, 図 3.4 で示した ibm lagos の量子ビット
トポロジーの下, トフォリゲートを基本ゲート X, √X, RZ, CNOT に
分解するためのサンプルコードをトフォリゲートの量子回路図に 1 2 3 4
5 6 7 8 9
10 11
from qiskit import QuantumCircuit, QuantumRegister from qiskit.compiler import transpile
coupling_map = [[0, 1], [1, 0], [1, 2], [1, 3], [2, 1], [3, 1], [3, 5], [4, 5], [5, 3], [5, 4], [5, 6], [6, 5]]
basis_gates = [’rz’, ’sx’, ’x’, ’cx’]
nqubit = 3
qr = QuantumRegister(nqubit, ’q’)
qc = QuantumCircuit(qr)
qc.toffoli(qr[0], qr[1], qr) transpiled_qc = transpile(circuits=qc, basis_gates=basis_gates, coupling_map=
coupling_map)
•
(a) サンプルコード
√X RZ(π) 442
0
1
2
•
•
• •
• RZ(π) • • RZ(3π)
• • RZ(π4) • RZ(π4)
√ X Qiskit の transpile モジュールによって,
ibm lagos の量子ビットトポロジーの下,
トフォリゲートを基本ゲート
√
R Z ( π2 )
R Z ( π2 )
R Z ( π4 )
R Z ( π4 ) • • • R Z ( π4 ) • (b) 分解後のトフォリゲート
X, RZ, CNOT に分解した. (a) に示したサンプルコードに
よって分解されたトフォリゲートの量子回路図 を (b) に示した.
X, 変分量子アルゴリズム NISQ デバイスを用いた代表的なアルゴリズムである
変分量子アルゴリズム (Variatonal Quantum Algorithm, VQA)
4.3 では, 変分量子アルゴリズムの抱えるバレンプラトー最適化問題,
つまり関数の最小化問題へ とマッピングする. 最小化すべき関数 C (γ) のことを
コスト関数という. ここで, コスト関数 C (γ) は, パラ メータ γ に依存する 量子ゲート U (γ) を用いて定義される. パラメータに依存する量子ゲートを
アンザッツ という. 変分量子アルゴリズムでは, 量子コンピュータを用いて
コスト関数の値や勾配の計算 を評価することと, 古典コンピュータを用いて
コスト関数を最小化するようにパラメータをアップデートする
交互に繰り返し行うことで, コスト関数の最小点を求める
コスト関数の最小点を探索するアル ゴリズムをオプティマイザー
変分量子アルゴリズムにおけるコスト関数,
アンザッツ, オプティマイザー4.1.1 コスト関数 変分量子アルゴリズムの最初の一歩は, 解きたい問題を数理最適化問題に
マッピングする, つまりコスト関 数を定義することである.
数理最適化問題では, 解きたい問題の解の候補を Γ ⊂ RNp 上の点として表現する.
コスト関数は, 解きたい問題の解が最小値に対応するように定義された関数で,
解と解の候補の差を定量的に 表現する関数 Γ → R である.
したがって, コスト関数を最小化するようなパラメータ γ を探索する 変分量子アルゴリズムにおける, 量子古典ハイブリッドループ
量子コンピュータを用いたコスト関数値や勾配の 評価と,
古典コンピュータを用いたパラメータのアップデートを
交互に繰り返し行うことで, コスト関数の最小点 を求める 変分量子アルゴリズムのコスト関数は, C(γ)= fi Tr OiU(γ)ρiU(γ) (4.1)i
の形で定義される. ここで, 各 Oi は物理量, 各 ρi は入力状態, fi は
R → R の関数, U (γ) はアンザッツであ
る. 変分量子アルゴリズムでは, コスト関数を量子状態 ρi や
量子的な操作 U (γ) を用いて定義することで,
古 典コンピュータ上では計算不可能なコスト関数を
計算できていると期待している 変分量子アルゴリズムのコスト関数が満たすべき条件として,
次の 4 点が提案されている
(C1) コスト関数の最小点が解きたい問題の解に対応する.
(C2) コスト関数の値が小さい点ほど良い解に対応する.
(C3) コスト関数の値や勾配は, 量子コンピュータ上の測定と
必要があれば測定後の後処理を古典コンピュータに
よって効率的に計算できる.
(C4) コスト関数の最小点は効率的に求める (C1), (C2) は, 変分量子アルゴリズムに限らず, 一般の
数理最適化問題が満たすべき条件である.
量子コンピュータ上の測定とは (4.1) の
Tr OiU (γ) ρiU (γ)† の期待値計算に対応し,
古典コンピュータ上の後処理とは, (4.1) の fi (·) の
計算や i についての足し合わせ計算に対応する 変分量子アルゴリズム
32
RZ (2γ21) RZ (2γ22) RZ (2γ23) RZ (2γ24)
0 1 2 3
0 1 2 3
RX (2γ1) RX (2γ2) RX (2γ3) RX (2γ4)
RZ (2γ5) RZ (2γ6) RZ (2γ7) RZ (2γ8)
•
•
•
RX (2γ9) RX (2γ10) RX (2γ11) RX (2γ12)
RZ (2γ13) • RZ (2γ14) • RZ (2γ15) • RZ (2γ16)
RX (2γ17) RX (2γ18) RX (2γ19) RX (2γ20)
(a)
(b) 量子ビットのトポロジーを持つ量子コンピュータ上の
Hardware Efficient アンザッツの例を (b) に 示した.
4.1.2 アンザッツ
パラメータ付きの量子ゲートのことをアンザッツ Np 個のパラメータを持つ量子ゲート URPQC : [0, 2π)Np → U (2n) を
URPQC (γ) =
Uj (γj)Wj = UNp
(4.2)
Np
γNp WNp ...U2 (γ2)W2U1 (γ1)W1
j=1
と定義 URPQC(γ) はアンザッツである. URPQC(γ) を
Random Parametrized Quantum Cir-
cuit (RPQC)
Wj はパラメータを持たない量子ゲートとし, Uj (γj ) は
Vj2 = I を満たすエル ミート Vj を用いて, Uj (γj ) := exp [−iγj Vj ] アンザッツは大きく分けて porblem-agnositc アンザッツと
problem-inspired アンザッツの 2 種類に分類
porblem-agnositc アンザッツとは,
解きたい問題に関する前提知識を用いずに
設計された汎用的 なアンザッツのことをいう
一方で, problem-inspired アンザッツとは,
解きたい問題に関する前提知識を
組 み込んで設計されたアンザッツ problem-agnostic アンザッツの例として,
Hardware Efficient アンザッツ がある.
Hardware Efficient アンザッツとは,
用いる量子コンピュータのアーキテクチャに
依存した構造を持つアンザッツのことである 量子ビットトポロジーを持つ量子コンピュータ上の
Hardware Efficient アンザッツ の例として,
隣接している量子ビット間でのみ
2 量子ビットゲートが作用している
アンザッ ツが挙げられる一般的に
定義したアンザッツ URPQC (γ) の一例 一方で, problem-inspired アンザッツの例として,
粒子数保存アンザッツがある
粒子数保存アンザッ ツとは,
入力量子状態の粒子数を保存するアンザッツで,
A ゲートと呼ばれる 2 量子ゲートを繰り返し
作用す演算子に対する ∏ の積の
順序は取ることにする. 変分量子アルゴリズム
• RZ(−φ) RY (−θ)
(a) A ゲート A (θ, φ) の RY ゲート, RZ ゲート, CNOT ゲートによる分解.
(b) 粒子数保存アンザッツ. A ゲートを繰り返し用いる
A ゲートと粒子数保存アンザッツの構造.
RY (θ) RZ(φ) •
A (θ0,0, φ0,0)
A (θ1,0, φ1,0)
A (θ2,0, φ2,0)
A (θ0,2, φ0,2)
A (θ1,2, φ1,2)
A (θ2,2, φ2,2)
A (θ0,1, φ0,1)
A (θ1,1, φ1,1)
A (θ2,1, φ2,1) 粒子数とは, 量子状態の計算基底による表示において,
1 が立っている量子ビッ トの個数のことで,
古典コンピュータでいう popcount に対応する量
|0111⟩ の粒子数は 3 前提知識によってアンザッツで表現すべき量子状態の粒子数が
既にわかっている場合には, 粒子数保存アンザッツは有用
粒子数保存アンザッツを用いた
変分量子アルゴリズムのアンザッツの表現力 自らの設計したアンザッツによって, 解きたい問題の解が表現できているかは
一般には分からない. しかし ながら, 個々のアンザッツの性質を定量化して
評価することを考えることで, その特性を理解しようとする アンザッツの性質の指標として, エンタングルメント容量表現力表現度という
量が提案されている n 量子ビット系 H に作用するアンザッツ U : Γ → U (2n) の
表現力について アンザッツ U (γ) を量子状態 ρ ∈ S (H) に作用させることで,
量子状態 U (γ) ρU (γ)† を得ることができる. γ を
様々な値に変化させることで, U (γ) は
様々なユニタリ演算子となりうるので, U (γ) ρU (γ)† は
また様々 な量子状態を表現しうる γ が Γ の中の様々な値をとりうるという意味で分布 ν*2を持つ
Γ-値確率変 数と見なすことにすると, U (γ) もまた確率変数と
見なすことができる 一方で, U (2n) 上の “一様分布” アンザッツ U : Γ → U (2n) は連続であると仮定する.
この仮定は合理的である. というのも, 変分量子アルゴリ
ズムに用いられる多くのアンザッツは, 回転ゲートと
パラメータを持たないゲートから成るので,
U (γ) の行列表示の各成分は, γ1, γ2, . . . , γNp に依存する
三角関数たちの線型和, つまり連続関数 よって, U (γ) の各成分が連続なので, ボレル可測,
つまり確率変数であるさらに, U (γ) の各成分が
確率変数ならば, U (γ) も確率変数となる 変分量子アルゴリズム 34
ハール分布に従う確率変数 V を考えてみると,
V ρV † はユニタリ時間発展によって作り出せる
全ての量 子状態を表現しうる 確率変数 V が最も表現能力のあるアンザッツに
対応すると考えることができる
確率変数 U (γ) と確率変数 V の差として,
アンザッツ U (γ) の表現力を定義していくのが
良さそうで ある. 確率変数 U (γ) と確率変数 V の差に対応する量として,
線型写像 A(t) : L (H⊗t) → L (H⊗t) を U(γ),ν
A(t) (·):= U(γ),ν
リ t - デザインであるという*5. そして, A(t) U(γ),ν
を用いて, 入力 X ∈ L (H) に対して, アンザッツ U (γ) の表
現力 ε(t) U(γ),ν
(X) を
⊗t μH(dV)V⊗t(·) V† −
⊗t ν(dγ)U(γ)⊗t(·) U(γ)† (4.3)
U(2n)
で定義 t は自然数,
ν はアンザッツのパラメータ γ の分布,
μH はユニタリ群 U (2n) 上のハール
測度とした. 任意の X ∈ L (H⊗t) に対して
A(t) (X) = 0 であるとき, U (2n)-値確率変数 U (γ) はユニタ U(γ),ν
( t ) で定義 , ‖·‖p は, シャッテン p - ノルムとした*6.
⊗ t X
( t )
εU(γ),ν (X) := AU(γ),ν
(4.4) アンザッツの表現力 ε(t) (X) は,
一般化フレームポテンシャルという量と
関係づけられる [39]. アンザッ U(γ),ν
ツ U (γ) とそのパラメータ γ の分布 ν,
X ∈ L (H) に対して, 一般化フレームポテンシャルを,t
F(t) (X) := ν (dγ) ν (dγ′) Tr XU (γ′)† U (γ) X†U (γ)† U (γ′)
(4.5)
(4.6)
(4.7)
(4.8)
U(γ),ν U (2n)-値確率変数 U (γ) が,
ハール分布 μH に従うとき,
U(2n) とする. すると, X ∈ L (H) に対して,
が成り立ち, アンザッツの表現力 ε(t) U(γ),ν
F(t) U(γ),ν
U(2n)
(X) − F(t) (X) ≥ 0 H
F(t) (X) := H
t μH (dV ) μH (dW)Tr XW†V X†V †W
ΓΓ
Γ
(X) と一般化フレームポテンシャルとの関係は,
2
で与えられる*7 アンザッツの表現力は, A(t)
U(γ),ν
ε(t) U(γ),ν
(X) =
F(t) (X) − F(t) (X) U(γ),ν H
への入力 X に依存する量だった. そこで, 入力に依らない
アンザッツの表現力を定義 2 つの線型写像 L (H⊗t) → L (H⊗t), μ (dV ) V ⊗t (·) V †⊗t
U(2n) H
と ν(dγ)U(γ)⊗t(·)U(γ)†⊗t の差を,
アンザッツの表現力として採用する.
一般に, 2つの線型写像 変分量子アルゴリズム
オプティマイザーがパラメータを更新していく様子.
パラメータ更新を繰り返すことで, コスト関数 C (γ) の最小 点を求める.
L (H1) → L (H2) 同士の差を定量化するノルムとして,
ダイアモンモンドノルム ‖·‖⋄ という量が知られ
アンザッツ U (γ) の表現力 ⋄ε(t) を定義 ■ このスレッドは過去ログ倉庫に格納されています