Nielsen chuang-5-1

29
量子情報勉強会|17>前半 Nielsen-Chuang 5.1 Quantum Fourier Transform @gm3d2 Mar. 21, 2015 池袋バイナリ勉強会会場

Transcript of Nielsen chuang-5-1

量子情報勉強会|17>前半

Nielsen-Chuang5.1 Quantum Fourier Transform

@gm3d2Mar. 21, 2015

池袋バイナリ勉強会会場

線形代数での基底の変換● あるN次元ベクトル空間Vの要素vを考える● vはVの基底 の線形結合

これを であるような別の基底 で表す

なぜこのようなことを考えるか● 数学的にはどの基底も同等● 実用的には基底の選び方によって問題の難易度が

大きく変わる● 元のベクトルvが、ある特定の基底で分かりやす

い性質を持っているケースが(頻繁に)ある– 特定の何個かの成分だけが大きくなる– 考えたい演算が対角化可能

…など

別のとらえ方

● 上の式では、一つのvを二つの方法で表しただけで、v自体は変わらない

● を で置き換えて、 自体を に変えてしまうと考える場合もある(今回はこのケース)

(連続)Fourier変換● 対象となる空間は(実または複素)関数空間

– 周期境界条件● によりベクトル空間

とみなせる– 実関数: – 複素関数:

を基底として与えられた関数を線型結合で表す– 正規直交基底であることがわかる

(連続)Fourier変換(2)● 次の内積を定義

cos、expも同様

離散Fourier変換● 長さNの数列vを考える

● 加法とスカラー倍ができる→ベクトル空間

● 数列           を考える

はVの基底

離散Fourier変換(2)● 二つのベクトル と の間に

で内積を定義する

→ は正規直交基底

離散Fourier変換(3)● の代わりに次の基底 を用いる

離散Fourier変換(4)● も正規直交基底である

量子Fourier変換● として量子計算の計算基底 を用いる● すると● 以降、 を で置き換えることを量子Fourier

変換 (QFT)と呼ぶ

Exercise 5.1● 複素ベクトル空間の正規直交基底から正規直交

基底への変換はユニタリ

● 「元の基底」 の成分

● 前のページで計算した通り

Exercise 5.2●

記法の約束● n-qubitシステム: N = 2^n

: 計算基底

jの2進表示

jの(一部の)小数表示

QFTの積表示● 次のように書ける

● 元の形で計算するより計算量が削減できる

(古典FTでも、量子回路でも)

→Fast Fourier Transform (FFT、QFFT)

QFTの積表示 証明(1)

kを2進表示

位相因子を桁毎にばらして各qubitに分配

計算基底をテンソル積に分解

QFTの積表示 証明(2)

前項から

ここで因数分解

kl = 0と1を明示的に

QFTの量子回路による実現

この形を利用

|0>は素通し、|1>に位相因子をかける

QFTの量子回路による実現(2)

H R2 Rn-1 Rn

H Rn-2 Rn-1

H R2

H

|j1>の受ける変換

H R2 Rn-1 Rn

● H:

● R2 controlled by j2:

● R3 controlled by j3 and so on

|j1>...|jn>の受ける変換

トータルで

ほしい形と逆順

スワップゲート

|α>

|β> |α>

|β>

=

これを図の後段に入れる

必要なゲートの数

O(n^2)のアルゴリズム

(古典)FFTとの比較

● 行いたい操作、利用する式は同じ

● パーツとして利用する基本演算が違う– QFT→量子ゲート回路– FFT→四則演算

ex. 5.3 (古典)FTの計算量

● 素朴な実現

● サイズ2^n x 2^n の行列の積: O((2^n)^2) = O(2^(2n))

ex. 5.3 (古典)FFTの計算量

● 積表示を利用

● 一つの|j>に対し演算はO(n)● |j>の総数が2^n● 全体の演算量はO(n*2^n)

exercise 5.4 C-Rkゲート

● C-Rkゲートを1-qubit演算とCNOTで表す● 4章のControlledゲートの一般論を適用

● 図4.6において、

exercise 5.5 逆QFT回路

● 図5.1を左右を逆転し、各ゲートもすべて逆演算ゲートで置き換えればよい

● スワップゲートとHはそれ自身が逆演算と一致● C-Rkも問題5.4の構成で左右を反転し、Rz(θ)

をRz(-θ)、αを-αで置き換えればよい

exercise 5.6 近似QFT

● QFT回路で最も精度が要求される部分

● |j1>の誤差:(n-1)*Δ, |j2>の誤差: (n-2)*Δ

…全体の累積誤差 = Δ*n(n-1)/2 = O(n^2/p(n))

ΔをO(1/n^2)程度以下に維持できれば全体の誤差を一定に保つことができる

(4.63)