電子講義:入門量子情報

全卓樹

[電子講義集] [全HP]
[Index] [0] [5] [10] [15] [20] [25] [30]
前へ 次へ

猫でもわかる量子情報(23)

量子おみくじを作ってみる

 そこで早速一つ量子的な魔法のオラクルを作ってみましょう。今の場合、食わせる x は1ビットなので、量子的にキュビット1つの素子でもいいようですが、一般には x は n ビットの場合を考えたいですし、この数 x は後にも使うかもしれないので、そのまま変えないで、出力キュビット y (オラクルキュビット)を別に用意して最下位ビットとして扱う事にします。次のような働きの n+1ビット素子を考えます。

 U_f :
   |x> → |x'> = |x>
   |y> → |y'> = |y .xor. f(x)>

当然ですが y=0 を入れると、オラクルキュビットの方に

   |x> → |x>
   |0> → |f(x)>

という風に函数 f が出てきて、この素子 U_f は量子オラクルになってます。

 実際どうやって作るのか、行列では何に対応するのか、というのも示しておきましょう。これは x が n = 1 ビットの例で、オラクルビットを下位ビットとして加えて2キュビットの状態への演算です。

A: 
  f(0)=0
  f(1)=0

U_a =
[I
0]
[0
I]
B:
  f(0)=0
  f(1)=1

U_b =
[ I
0]
[0
X]
C:
  f(0)=1
  f(1)=0

U_c =
[X
0]
[0
I]
D:
  f(0)=1
  f(1)=1

U_d =
[X
0]
[0
X]

2ビットの x だと可能な2値函数 f(x) は 2^4 = 16 通りありますから、これに対応する3キュビット(入力に2キュビット、オラクルキュビット1)の量子オラクル(8x8の行列)を16個作っておけば良い訳です。練習問題に良いので、皆さんご自身でやってみてください。正解はそのうち秘密の場所にアップしておくつもりです。
行先: 研究のページ
copyright 2004
全卓樹ホーム 教育のページ
t.cheon & associates