量子フーリエ変換(QFT)をかけたのに、測定結果がどれも同じ確率になった。これは、入力の情報が失われた証拠とは限りません。量子状態では、振幅の大きさだけでなく、成分どうしの位相の関係にも情報が残ります。
2量子ビット、四つの基底状態だけを使い、QFTの直後に測る場合と、逆変換してから測る場合を比べます。式を行列として計算する理想例であり、特定の量子機やSDKの性能試験ではありません。
簡単にまとめると?
- 一つの基底状態をQFTへ入れると、出力の測定確率は均等でも、振幅の位相は入力ごとに変わります。
- 測定せずに逆QFTへ渡せば、理想条件では元の入力に戻ります。途中で測って結果だけ残すと、この戻し方はできません。
- QFTを確かめるには、確率の棒グラフだけでなく、位相を干渉へ変える後段の操作と、ビット列の読み順も確認します。
四つの成分を、複素数の矢印として見る
ここでは|0⟩、|1⟩、|2⟩、|3⟩を、それぞれ2進数の|00⟩、|01⟩、|10⟩、|11⟩と対応させます。左のビットを上位桁とする表記です。QFTには符号の流儀があるため、正の指数を使い、入力|j⟩に対する出力のk番目の振幅を、exp(2πijk/4)/2と定めます。iは二乗すると−1になる虚数単位です。[1]
入力が|0⟩なら、四つの振幅は(1,1,1,1)/2。入力が|1⟩なら、(1,i,−1,−i)/2です。どの成分も大きさは1/2ですが、後者では複素数平面での向きが0度、90度、180度、270度と順に変わります。この向きが位相です。
測定確率は振幅の絶対値の二乗なので、どちらの入力でも四つとも1/4になります。つまり、「0、1、2、3が同じくらい出た」という観測だけでは、この二つの入力を見分けられません。それでも状態全体を比べると、位相の並びが異なっています。

逆変換すると、一つの答えへ集まる
逆QFTは指数の符号を反転します。QFT後の状態をそのまま渡すと、出力lの振幅は、四つの位相因子を足したΣₖ exp[2πi(j−l)k/4]/4になります。jとlが同じなら、四項がすべて1なので振幅は1。異なる場合は、矢印が互いに打ち消し合って0です。
入力が|1⟩なら、逆変換の出力1だけで足し合わせがそろいます。ほかの出力では向きがそろわず、和が消えます。QFTの直後の確率だけを見ていたときには見えなかった区別が、逆変換後には「1が必ず出る」という確率の違いになります。
ここで重要なのは、QFT後の状態を途中で測っていないことです。計算基底で測ると、0から3のどれか一つへ状態が変わります。その結果の状態へ逆QFTをかけても、四つの出力確率は再び均等です。途中の測定結果を記録したとしても、元の未知の入力を復元するための位相の関係が、その記録にそろって残るわけではありません。
今回の数値計算では、途中測定の結果を区別せず平均した状態を、状態の確率と位相の関係をまとめた密度行列から、対角成分だけ残す操作で表しました。QFT後は四つの対角成分が1/4なので、この状態は単位行列の1/4です。状態の長さを保つユニタリ変換をかけても変わらず、逆QFT後も四つの確率は1/4のままになります。
位相を少しずつ回すと、読み出す数が変わる
位相に情報が残ることは、QFTと逆QFTの間へ操作を挟むと、さらに見やすくなります。k番目の成分へexp(2πik/4)を掛けてみます。入力jから作られた振幅exp(2πijk/4)/2は、exp[2πi(j+1)k/4]/2に変わります。
これを逆QFTへ渡すと、出力はj+1になります。ただし四つの状態しかないので、3の次は0へ戻ります。計算で確かめた対応は、0→1、1→2、2→3、3→0です。どの入力でも、位相を回した直後の測定確率はまだ四つとも1/4。変化が見えるのは、逆変換で位相を干渉へ変えた後です。
この操作は、全成分へ同じ位相を掛けることとは違います。全成分を同じだけ回しても、成分間の位相差は変わらず、測定確率も変わりません。ここで数を一つ進められるのは、kに応じて回転角を変えたためです。
実装を比べるときの三つの確認点
一つ目は、どの段階で測ったかです。QFT直後の均等な分布は、この基底入力では正しい結果です。ただし、それだけで位相まで正しく変換できたとは確認できません。逆変換や、目的に合った後段の操作を含めて、期待する結果を計算します。逆変換との往復だけが通っても、同じ誤った変換とその逆を組み合わせれば戻れるため、定義したQFTとの照合も必要です。
二つ目は、符号とビットの順序です。この記事では正の指数と、整数0から3の順を固定しました。回路の線の並び、測定結果の文字列、整数への変換が違えば、同じ状態を別の数として読んでしまうことがあります。特に01と10を入れ替えると、1と2が入れ替わります。回路末尾の交換操作を省く実装では、後段の量子操作や読み出し側がその順序に対応しているかを確認します。
三つ目は、最終的に欲しい出力です。QFTは振幅へフーリエ変換を施す操作であり、変換後の複素係数を全件、普通の数値配列として返す命令ではありません。今回のように後段の干渉で一つの特徴を取り出す場合と、全係数を保存したい場合では、必要な準備と測定が変わります。
計算では4×4のQFT行列と逆行列を作り、四つの入力すべてで往復と位相操作を照合しました。独立に、NumPyの逆離散フーリエ変換を正規化した計算とも一致を確認しています。実回路ではさらに、近似の有無、ゲート誤差、測定誤差を区別する必要があります。均等な棒グラフは情報がない印ではなく、今の測り方では位相の違いを見ていない場合があるのです。
参考資料
- [1] D. Coppersmith, An Approximate Fourier Transform Useful in Quantum Factoring(1994年の報告、arXiv公開版は2002年1月16日)。Fourier Transform節の定義、Calculating the AFFT節の位相操作と出力順序を参照。この記事は近似法の性能比較を扱わず、N=4の厳密な変換に絞っています。本文の具体例と図は独自計算です。
