tecktom.com

情報の側から見ると:ゲートの数は情報量で下から押さえられる

2026年10月15日6分で読めますAI生成教科書『虎の巻』第6部 第1章 回路モデルと万能性
目次
  1. 数え上げの議論
  2. 何が分かり、何が分からないか
  3. 木下の層

AI 生成・木下が未勉強

相対エントロピーから情報と物理を組み立てる 第6部 第1章 §6.1.4 ★★ LL 個のゲートの並びは Llog⁡2KL\log_2K ビットで書けてしまう。見分けたいユニタリの数がそれより多ければ書き分けられないので、ほとんどのユニタリは 4n4^n に比例する数のゲートを要する

数え上げの議論

万能なゲート集合があれば、どんなユニタリも作れる。では、何個のゲートが要るか。上からの見積もりは2節と3節の構成で 4n4^n 程度だった。下からの見積もりは、構成を工夫しても避けられない限界で、数を数えるだけで得られる。

1回に当てるゲートの選び方が KK 通りあるとする。たとえば {H,T,CNOT}\{H,T,\mathrm{CNOT}\} を nn 量子ビットに当てるなら、HH と TT はどの量子ビットに当てるかで 2n2n 通り、CNOT は制御と標的の順序つきの対で n(n−1)n(n-1) 通りあり、K=n2+nK=n^2+n である。LL 個のゲートの回路は高々 KLK^L 通りしかない。ここで情報の言葉に直す。回路を1つ指定するのに要るのは、各段で KK 通りのどれを選んだかを書いた列で、長さは Llog⁡2KL\log_2K ビットである。

一方、精度 ε\varepsilon で互いに見分けたいユニタリの数を数える。全体の位相を除いた nn 量子ビットのユニタリは dn=4n−1d_n=4^n-1 次元の集合で、互いに 2ε2\varepsilon 以上離れた点を詰め込むと、およそ (c/ε)dn(c/\varepsilon )^{d_n} 個入る(cc は nn によるが ε\varepsilon によらない数)。dd 次元の箱を幅 ε\varepsilon の小さな箱に切ると ε−d\varepsilon ^{-d} 個に分かれるのと同じ勘定である。これらの点のどの2つも、同じ回路で精度 ε\varepsilon に近似することはできない。したがって、すべてを近似するには回路の数がそれ以上要り、KL≳(c/ε)dnK^L\gtrsim(c/\varepsilon )^{d_n}、すなわち

Llog⁡2K ≳ (4n−1)log⁡21ε+(ε によらない項).(6.1.7)L\log_2K\ \gtrsim\ (4^n-1)\log_2\frac1\varepsilon +(\varepsilon \text{ によらない項}).\tag{6.1.7}

左辺は回路を書くのに使えるビット数、右辺は見分けたいユニタリの1つを名指すのに要るビット数である。名指すべきものの数が書ける文字列の数より多ければ、どう工夫しても書き分けられない。第1部第5章(第1部第5章)のデータ圧縮で、2ℓ2^\ell 個より多くのものを ℓ\ell ビットで誤りなく書けないと言ったのと同じ理屈である。

定理 6.1.11(ほとんどのユニタリは指数個のゲートを要する ★★)

有限のゲート集合を固定する。ε\varepsilon を十分小さく取ると、nn 量子ビットのユニタリのうち「LL 個以下のゲートで精度 ε\varepsilon に近似できるもの」が全体に占める割合は、LL が (4n−1)ln⁡(1/ε)/ln⁡K(4^n-1)\ln(1/\varepsilon )/\ln K よりかなり小さい限り、ほとんど 00 である。

この議論は Knill1E. Knill (1995), arXiv:quant-ph/9508006。下の脚注へによる。3節の図 6.1.2 で最小距離が異なる元の数の −1/3-1/3 乗で下がったのは、1量子ビットの場合 d1=3d_1=3 だからで、NN 個の点で3次元を覆えば1点あたりの持ち分の体積は 1/N1/N、その幅は N−1/3N^{-1/3} になる。{H,T}\{H,T\} の語は1文字ごとに約 1.301.30 倍に増えたので、1文字で書ける情報量は log⁡21.30=0.38\log_21.30=0.38 ビットにとどまった。

何が分かり、何が分からないか

定理 6.1.11 は、量子計算機で速く解ける問題が「どのユニタリでもよい」問題ではないことを示している。n=50n=50 なら 450=1.27×10304^{50}=1.27\times10^{30} で、1秒に 10910^9 個のゲートを当てても 102110^{21} 秒を超え、宇宙の年齢(およそ 4.4×10174.4\times10^{17} 秒)よりはるかに長い。Shor のアルゴリズム(第6部第3章)や量子 Fourier 変換(第6部第2章)が少ないゲートで書けるのは、それらが特別な構造を持つユニタリだからである。

ただし、この議論は「ほとんど」について述べるだけで、特定のユニタリに多くのゲートが要ることは何も言わない。具体的なユニタリについて大きな下限を証明することは、古典の回路の下限と同じく難しく、一般にはできていない。数え上げで得られるのは、存在の議論としての下限である。

逆向きの見方もある。Clifford 群のゲートだけの回路は、状態を nn 個のスタビライザーの生成元で書いたままたどることができる。生成元1つは Pauli 行列の列(2n2n ビット)と符号(11 ビット)で書けるので、状態全体は n(2n+1)n(2n+1) ビットで足りる。状態ベクトルの 2n2^n 個の複素数を持たなくてよいので、古典の計算機で効率よく真似できる(Gottesman–Knill の定理)。書くのに要るビット数が少ない状態しか通らない回路は、古典の計算を超えない。TT ゲートはこの「少ないビットで書ける」性質を壊す。

例題 6.1.4 数え上げの下限を数値で見る ★★

オリジナルゲート集合を {H,T,CNOT}\{H,T,\mathrm{CNOT}\} とし、精度を ε=0.01\varepsilon =0.01 とする。式 (6.1.7) の ε\varepsilon によらない項を除いた目安L≳(4n−1)ln⁡(1/ε)/ln⁡KL\gtrsim(4^n-1)\ln(1/\varepsilon )/\ln K を使う。

  1. n=2n=2 のとき KK、次元 4n−14^n-1、見分けたいユニタリを名指すのに要るビット数、1ゲートで書けるビット数を求め、LL の目安を出せ。
  2. n=10n=10 のときの LL の目安を求めよ。
解答

(1) K=n2+n=6K=n^2+n=6、次元は 42−1=154^2-1=15。名指すのに要るのは 15log⁡2100=15×6.644=99.715\log_2100=15\times6.644=99.7 ビット、1ゲートで書けるのは log⁡26=2.585\log_26=2.585 ビットなので、L≳99.7/2.585=38.6L\gtrsim99.7/2.585=38.6。2量子ビットでも、一般のユニタリには数十個のゲートが要る。

(2) K=110K=110、次元は 410−1=10485754^{10}-1=1048575。L≳1048575×ln⁡100/ln⁡110=1048575×4.605/4.700=1.03×106L\gtrsim1048575\times\ln100/\ln110=1048575\times4.605/4.700=1.03\times10^6。量子ビットが10個に増えただけで、一般のユニタリを作るには百万個程度のゲートが要る。KK は n2n^2 でしか増えないのに、次元は 4n4^n で増えるからである。

1 E. Knill (1995), arXiv:quant-ph/9508006。

木下の勉強ステータス

木下はまだこの記事を勉強していません。

AI(Claude)が書いた教材を、木下が勉強しながら公開しています。式と数値は検算していますが、誤りが残っているかもしれません。誤りのご指摘・削除のご依頼をいただければ直します。 連絡先:support@tecktom.com

← AI生成教科書『虎の巻』の記事一覧へ