第5章: 光・半導体スピン・トポロジカル、そして総括

⚛️ 残る3方式、1枚の比較表、そして材料科学が入る場所

📖 読了時間: 45-50分 📊 難易度: 上級 💻 コード例: 6個 📝 演習問題: 5問

🌐 JP | 🇬🇧 EN | Last sync: 2026-08-13

基礎数理道場 > 量子ハードウェア入門 > 第5章

第2章、第3章、第4章では、世界の実験努力の大半を吸収している3方式を扱いました。本章はさらに3つを扱い、そのうえで本コース全体が向かってきたことを行います。6方式すべてを1枚の表に並べるのです。

ここで扱う3方式は「その他」ではありません。それぞれが、重要な意味で最初の3方式と構造的に異なります。光子には待機中のデコヒーレンスがまったくありません — 飛行中の光子は位相を失わず、引用すべき $T_1$ も存在しません。光子は緩和しないからです。代わりに光子がするのは消えることであり、損失はどのPauli誤りモデルもカバーしない別種の誤りチャネルです — そしてその代価として、本書で最も厄介な問題、すなわち2つの光子を相互作用させられないという問題を負います。半導体スピンは、本コースの中で商用CMOSファウンドリで、自分の制御回路と同じウェハ上に作れる唯一の量子ビットであり、その代価として考えうる最も騒がしい近隣 — 数十ナノメートル先のアモルファスゲート酸化膜 — を負います。トポロジカル量子ビットは、その保護が工学的成果ではなく数学の定理である唯一のものであり、その代価として、まだ確実には存在しない材料を要求します。

そして5.4節がスコアカードを組み立て、5.5節が本コースがずっと論じてきたことを述べます。勝者がいない理由は、誰かが良い着想を欠いているからではありません。各方式が異なる材料問題に阻まれているからであり — そしてそこが、材料研究者が傍観者であることをやめる地点です。

単位と規約。 全編を通じてハミルトニアンでは $\hbar = 1$ です。エネルギーは各分野の慣用単位で表します。量子ドットには µeV($1\ \mu\mathrm{eV} = h \times 242$ MHz)、Kitaev鎖にはホッピング $w$ を単位とする無次元量、光の計算には無次元比です。$T_1$、$T_2$、$T_2^\ast$ の定義は第1章のものをそのまま使います。本章では3つの記号が二重の役目を負います。どれもそれぞれの分野で標準なので、ここで一度固定します。$V$ は5.1節ではHOM干渉の可視度、第4章の誤り床 $(\gamma/V)^{2/3}$ を引用する箇所ではRydberg相互作用 $C_6/R^6$ です。$\gamma$ は5.1節では光子のモード重なり $\langle\phi_1|\phi_2\rangle$、同じ誤り床の中ではRydberg状態の崩壊率、5.3節ではMajorana演算子です。$\eta$ はここでは光の透過率であり、第3章のLamb-Dickeパラメータではありません。いずれの用法もその節の内部に限られます。量子ビット順序は全編ビッグエンディアンで、5.2節のフェルミオンモード順序はアルゴリズム編第4章のJordan-Wigner規約に従います。

学習目標

本章を修了すると、以下のことができるようになります:


5.1 光量子ビット

まず良い知らせから

低損失導波路を伝わる光子はデコヒーレンスしません。$T_1$ も $T_2$ もなく、室温で結合する熱浴もなく、いったん放出された後で周波数をずらす製造欠陥もありません。1量子ビットゲートはビームスプリッタと位相シフタであり、受動的で本質的に完璧です。検出は、何を測ったかについて曖昧さのない射影測定です。第2章から第4章のすべてと比べて、これは驚くべき出発位置です。

問題はちょうど1つあり、それは本質的です。光子は相互作用しません。 Maxwell方程式は線形であり、非線形光学媒質は存在するものの、単一光子レベルで使える非線形性は決定論的な2光子ゲートを作るには何桁も弱すぎます。光量子計算のあらゆるアーキテクチャは、線形光学と測定から実効的な相互作用を得るための戦略です。

無料で手に入る相互作用

線形光学に2光子効果は1つあり、それは完全に統計性の帰結です。50:50ビームスプリッタの各入力ポートに光子を1つずつ入れます。同時計数 — 各出力ポートから1光子 — に至る経路が2つあり、ビームスプリッタはそれらに符号が逆の振幅を与えます。同一のボソンでは厳密に打ち消します。これがHong-Ou-Mandel干渉であり、線形ネットワークが提供する光子間相互作用に最も近いものです。

HOMは「2光子が集まる」と述べられがちですが、意味があるのは定量的な言明なので、帳簿を正確に扱う価値があります。ビームスプリッタを $a^\dagger \to (c^\dagger + d^\dagger)/\sqrt2$、$b^\dagger \to (c^\dagger - d^\dagger)/\sqrt2$ と書くと

$$ a^\dagger b^\dagger|0\rangle \to \tfrac12\left(c^\dagger c^\dagger - c^\dagger d^\dagger + d^\dagger c^\dagger - d^\dagger d^\dagger\right)|0\rangle $$

です。ボソンでは $c^\dagger d^\dagger = d^\dagger c^\dagger$ なので中央の2項が打ち消し、フェルミオンではそれらが加算される一方 $c^\dagger c^\dagger = 0$ が他を消すので、フェルミオンは必ず別々に出てきます。2つの統計性が与える同時計数確率は0と1であり、識別可能な古典粒子は1/2です。ここには近似が1つもありません。

物理的に重要な一般化は、完全に同一ではない光子への拡張です。内部(時間・スペクトル・偏光)モードの重なりを $\gamma = \langle\phi_1|\phi_2\rangle$ とすると

$$ P_{cc} = \frac{1 - |\gamma|^2}{2} $$

なので、HOMディップの深さは2光子がどれだけ同一かの直接測定そのものです。これが材料科学との接続であり、緩い接続ではありません。融合型の光アーキテクチャではすべてのエンタングリング操作がHOM干渉なので、$1 - |\gamma|^2$ が1ゲートあたりの誤差になり、それはエミッタの再現性で決まります。

Code Example 1: Hong-Ou-Mandel干渉

"""2光子振幅から出発するHong-Ou-Mandel干渉。

1光子のHilbert空間は「空間モード2」×「時間モード M」。2粒子状態はその空間上の
振幅 Psi(alpha, beta) であり、sum |Psi|^2 = 1 で規格化し、ボソンでは対称、
フェルミオンでは反対称とします。互いに素なモード集合 S と T に1粒子ずつ見出す
確率は 2 * sum_{alpha in S, beta in T} |Psi(alpha,beta)|^2 です。
"""
import numpy as np

M = 401                       # 時間方向の格子点数
T = np.linspace(-8.0, 8.0, M)
dt = T[1] - T[0]
SIGMA = 1.0                   # 波束の時間幅


def wavepacket(t0):
    """t0 を中心とする規格化されたGauss時間モード(l2ノルム1)。"""
    f = np.exp(-(T - t0) ** 2 / (4 * SIGMA ** 2))
    return f / np.linalg.norm(f)


def single_photon(spatial, temporal):
    """2M次元空間(空間×時間)上の1光子状態ベクトル。"""
    v = np.zeros((2, M))
    v[spatial] = temporal
    return v.reshape(-1)


BS = np.array([[1.0, 1.0], [1.0, -1.0]]) / np.sqrt(2.0)   # 50:50ビームスプリッタ
BS_FULL = np.kron(BS, np.eye(M))


def two_particle(u, v, statistics):
    """直交する2つの1粒子状態から作る2粒子振幅。"""
    if statistics == "boson":
        Psi = (np.outer(u, v) + np.outer(v, u)) / np.sqrt(2.0)
    elif statistics == "fermion":
        Psi = (np.outer(u, v) - np.outer(v, u)) / np.sqrt(2.0)
    else:                                   # 識別可能:交換対称性なし
        Psi = np.outer(u, v)
    return Psi


def coincidence(Psi, statistics):
    """出力 c と出力 d に1粒子ずつ見出す確率。"""
    P = np.abs(Psi.reshape(2, M, 2, M)) ** 2
    if statistics == "classical":
        return P[0, :, 1, :].sum() + P[1, :, 0, :].sum()
    return 2.0 * P[0, :, 1, :].sum()


def hom(delay, statistics):
    u = single_photon(0, wavepacket(-0.5 * delay))     # 入力ポート a
    v = single_photon(1, wavepacket(+0.5 * delay))     # 入力ポート b
    Psi = two_particle(u, v, statistics)
    Psi_out = BS_FULL @ Psi @ BS_FULL.T                # 各粒子にBSが1回作用
    return coincidence(Psi_out, statistics)


print("50:50ビームスプリッタの2つの入力ポートに1粒子ずつ入れる。")
print("波束が同一(遅延ゼロ)の場合:")
for st in ["boson", "fermion", "classical"]:
    print(f"  {st:<15} P(coincidence) = {hom(0.0, st):.10f}")
print("  ボソンは別々のポートに同時に出てこない。同時計数を与える2経路")
print("  (a->c, b->d) と (a->d, b->c) の振幅が 1/2 と -1/2 だからである。")

# --- 振幅の帳簿を書き出す ------------------------------------------------
print()
print("打ち消しを項ごとに(a^dag -> (c^dag + d^dag)/sqrt2、")
print("                    b^dag -> (c^dag - d^dag)/sqrt2):")
print("  a^dag b^dag |0> = (c^dag c^dag - c^dag d^dag + d^dag c^dag - d^dag d^dag)/2 |0>")
print("  ボソン:   c^dag d^dag = d^dag c^dag なので交差項が厳密に打ち消す")
print("  フェルミオン: c^dag d^dag = -d^dag c^dag なので加算され、c^dag c^dag = 0")
print("            したがって同時計数の項だけが生き残る")

# --- ディップ ------------------------------------------------------------
print()
print("HOMディップ:相対遅延に対する同時計数確率。")
hdr = (f"{'delay/sigma':>13}{'overlap |g|':>13}{'boson':>11}{'(1-|g|^2)/2':>13}"
       f"{'fermion':>10}{'classical':>11}")
print(hdr)
print("-" * len(hdr))
for d in [0.0, 0.5, 1.0, 2.0, 3.0, 4.0, 6.0]:
    g = float(wavepacket(-0.5 * d) @ wavepacket(0.5 * d))
    print(f"{d:>13.1f}{abs(g):>13.6f}{hom(d, 'boson'):>11.6f}"
          f"{(1 - g ** 2) / 2:>13.6f}{hom(d, 'fermion'):>10.6f}"
          f"{hom(d, 'classical'):>11.6f}")
print("  ボソンでは P_cc = (1 - |<phi_1|phi_2>|^2)/2。ディップはモード重なりそのもの。")
print(f"  Gauss波束の予測 |g| = exp(-delay^2/(8 sigma^2))。delay = 2 sigma では")
print(f"  exp(-0.5) = {np.exp(-0.5):.6f}")

# --- 可視度と、それを損なうもの ------------------------------------------
print()
print("モードの不一致に対する可視度 V = 1 - 2 P_cc(0)。")
print(f"{'mismatch':>26}{'|g|':>9}{'P_cc(0)':>10}{'visibility':>12}")
cases = [("identical", 0.0, SIGMA), ("delay 0.5 sigma", 0.5, SIGMA),
         ("delay 1.0 sigma", 1.0, SIGMA), ("duration ratio 1.5", 0.0, 1.5 * SIGMA),
         ("duration ratio 3.0", 0.0, 3.0 * SIGMA)]   # 遅延と時間幅の不一致
for name, d, s2 in cases:
    f2 = np.exp(-(T - 0.5 * d) ** 2 / (4 * s2 ** 2))
    f2 /= np.linalg.norm(f2)
    u = single_photon(0, wavepacket(-0.5 * d))
    v = single_photon(1, f2)
    Psi = (np.outer(u, v) + np.outer(v, u)) / np.sqrt(2.0)
    P = coincidence(BS_FULL @ Psi @ BS_FULL.T, "boson")
    g = float(wavepacket(-0.5 * d) @ f2)
    print(f"{name:>26}{abs(g):>9.5f}{P:>10.6f}{1 - 2 * P:>12.6f}")
print()
print("可視度が1を下回ることは小さな不完全さではない。融合型の光アーキテクチャでは")
print("すべてのエンタングリング操作がHOM干渉なので、1 - V が1ゲートあたりの誤差に")
print("なる。そしてそれは2つの固体エミッタがどれだけ同一かで決まる — 歪み、電荷")
print("環境、スペクトル拡散という材料の問題である。")
50:50ビームスプリッタの2つの入力ポートに1粒子ずつ入れる。
波束が同一(遅延ゼロ)の場合:
  boson           P(coincidence) = 0.0000000000
  fermion         P(coincidence) = 1.0000000000
  classical       P(coincidence) = 0.5000000000
  ボソンは別々のポートに同時に出てこない。同時計数を与える2経路
  (a->c, b->d) と (a->d, b->c) の振幅が 1/2 と -1/2 だからである。

打ち消しを項ごとに(a^dag -> (c^dag + d^dag)/sqrt2、
                    b^dag -> (c^dag - d^dag)/sqrt2):
  a^dag b^dag |0> = (c^dag c^dag - c^dag d^dag + d^dag c^dag - d^dag d^dag)/2 |0>
  ボソン:   c^dag d^dag = d^dag c^dag なので交差項が厳密に打ち消す
  フェルミオン: c^dag d^dag = -d^dag c^dag なので加算され、c^dag c^dag = 0
            したがって同時計数の項だけが生き残る

HOMディップ:相対遅延に対する同時計数確率。
  delay/sigma  overlap |g|      boson  (1-|g|^2)/2   fermion  classical
-----------------------------------------------------------------------
          0.0     1.000000   0.000000     0.000000  1.000000   0.500000
          0.5     0.969233   0.030293     0.030293  0.969707   0.500000
          1.0     0.882497   0.110600     0.110600  0.889400   0.500000
          2.0     0.606531   0.316060     0.316060  0.683940   0.500000
          3.0     0.324652   0.447300     0.447300  0.552700   0.500000
          4.0     0.135335   0.490842     0.490842  0.509158   0.500000
          6.0     0.011109   0.499938     0.499938  0.500062   0.500000
  ボソンでは P_cc = (1 - |<phi_1|phi_2>|^2)/2。ディップはモード重なりそのもの。
  Gauss波束の予測 |g| = exp(-delay^2/(8 sigma^2))。delay = 2 sigma では
  exp(-0.5) = 0.606531

モードの不一致に対する可視度 V = 1 - 2 P_cc(0)。
                  mismatch      |g|   P_cc(0)  visibility
                 identical  1.00000  0.000000    1.000000
           delay 0.5 sigma  0.96923  0.030293    0.939413
           delay 1.0 sigma  0.88250  0.110600    0.778801
        duration ratio 1.5  0.96077  0.038461    0.923077
        duration ratio 3.0  0.77752  0.197730    0.604540

可視度が1を下回ることは小さな不完全さではない。融合型の光アーキテクチャでは
すべてのエンタングリング操作がHOM干渉なので、1 - V が1ゲートあたりの誤差に
なる。そしてそれは2つの固体エミッタがどれだけ同一かで決まる — 歪み、電荷
環境、スペクトル拡散という材料の問題である。

着目点。 この計算は $2M$ 次元の1粒子空間上の2粒子振幅として立てられており、これは通常の教科書的扱いより意図的に一般的です。ボソン、フェルミオン、識別可能粒子、部分的識別可能性のすべてを同じ3行で計算できます。

ゼロ、二分の一、一。 3つの統計性はそれぞれ厳密に 0.0000000000、0.5000000000、1.0000000000 を与えます。ボソンのゼロは干渉、フェルミオンの1はPauli排他、古典の1/2はコイン投げで得られる値です。0と1/2の間の同時計数率を報告する実験は、ボソン的な場合と古典的な場合の混合を報告しているのであり、その混合パラメータがモード重なりです。

ディップは重なりそのもの、厳密に。 測定された $P_{cc}$ は、どの遅延でも $(1 - |\gamma|^2)/2$ と印字された全桁で一致します。これは実験の位置づけを逆転させるので内在化する価値があります。HOMディップは量子的な不思議さの定性的な実演ではなく、光子の識別不能性に対する計量ツールであり、しかも標準的なそれです。

可視度は、確認しようと思わない不一致で壊れる。 波束の時間幅の半分の遅延で可視度は6%失われます。しかし時間幅の不一致でも同じです。まったく同時に到達するがパルス長が1.5倍違う2光子は $|\gamma| = 0.961$、可視度0.923です。局所的な歪みと電荷環境が異なる2つの固体エミッタは線幅・中心周波数・寿命が異なり、その差のすべてがここに現れます。「識別不能な単一光子源」が光学の問題ではなく材料成長の問題である理由がこれです。

非決定性がアーキテクチャの問題である理由

実効的な非線形性は測定が与えます。標準的な事後選択による線形光学CZゲートの成功確率は $1/9$ です。9回のうち8回、あとになってゲートが起きなかったと分かります。1ゲートならこれは単に非効率です。回路では致命的です。確率が掛け算になるからです。

Knill、Laflamme、Milburnによる脱出路と、その後発展した測定型・融合型アーキテクチャには3つの要素があります。ヘラルド:補助光子の検出がゲートの成否を教えるように組み、しかもデータ量子ビットを壊さないこと。多重化:各ゲートのコピーを並列に多数走らせ、成功した1つを切り替えて使うこと。オフライン資源状態:多数の小さなヘラルド操作で大きなエンタングルクラスター状態をあらかじめ作り、計算はその状態上の1量子ビット測定の列として走らせ、残る非決定性を状態準備の中だけに閉じ込めること。

3つ目が概念的に重要な移動であり、光量子が測定型量子計算の自然な住処である理由です。それは深さの問題を資源数の問題に変換します — 光子源と検出器が安価で並列なら、はるかに良い問題であり、そうでなければはるかに悪い問題です。

Code Example 2: 非決定性の算術

"""線形光学が測定を必要とする理由:非決定性と損失の算術。"""
import numpy as np
from itertools import permutations

P_CZ = 1.0 / 9.0        # 事後選択による線形光学CZの成功確率

print("事後選択による線形光学の2量子ビットゲートは p = 1/9 で成功する。")
print("修復なしで G 個つなぐと確率は掛け算になる。")
hdr = f"{'G gates':>9}{'p^G':>13}{'trials for 50%':>16}{'wall time at 1 GHz':>20}"
print(hdr)
print("-" * len(hdr))
for G in [1, 2, 5, 10, 20, 50]:
    p = P_CZ ** G
    trials = np.log(2.0) / p          # p << 1 のとき、50%の期待試行回数
    secs = trials / 1e9
    unit = (f"{secs:.2e} s" if secs < 3.15e7 else f"{secs / 3.156e7:.2e} yr")
    print(f"{G:>9}{p:>13.3e}{trials:>16.3e}{unit:>20}")
print("  50ゲートは自明な回路だが、指数関数はすでに議論を終わらせている。")
print("  事後選択はアーキテクチャではない。")

# --- ヘラルドと多重化が買うもの ------------------------------------------
print()
print("ヘラルド付きゲートは再試行できる。1ゲート枠あたり n_mux 個並列に用意すると、")
print("少なくとも1つが成功する確率は 1 - (1-p)^n_mux である:")
print(f"{'n_mux':>7}{'P(slot ok)':>13}{'P(all 100 slots ok)':>22}")
for n_mux in [1, 10, 30, 60, 100, 200]:
    q = 1 - (1 - P_CZ) ** n_mux
    print(f"{n_mux:>7}{q:>13.6f}{q ** 100:>22.3e}")
print("  100ゲート回路で99%に届くには P(slot ok) > 0.9999 が必要、すなわち")
n_needed = int(np.ceil(np.log(1 - 0.9999) / np.log(1 - P_CZ)))
print(f"  1枠あたり n_mux >= {n_needed} 個、つまり {n_needed * 100} 個のヘラルド資源が必要である。")
print("  超伝導チップなら100発のパルスで走らせる回路のために。")

# --- 真の敵は損失 --------------------------------------------------------
print()
print("光子損失:素子1個あたりの透過率 eta、経路中の素子数 N。")
hdr = f"{'eta':>7}" + "".join(f"{'N=' + str(N):>12}" for N in [10, 50, 100, 500])
print(hdr)
print("-" * len(hdr))
for eta in [0.999, 0.99, 0.95, 0.9]:
    print(f"{eta:>7.3f}" + "".join(f"{eta ** N:>12.3e}" for N in [10, 50, 100, 500]))
print("  損失は事後選択では訂正できない — 失われた光子は失われた量子ビットである —")
print("  ので光量子の誤り耐性には損失耐性符号が必要であり、その閾値はゲート誤差では")
print("  なく素子あたりの eta で述べられる。")

# --- それでも続ける理由:サンプリングの計算困難性 ------------------------
print()
print("裏面:線形光学ネットワークの出力振幅は行列のパーマネントであり、")
print("パーマネントに劣指数時間のアルゴリズムは知られていない。")


def permanent_bruteforce(A):
    n = A.shape[0]
    return sum(np.prod([A[i, p[i]] for i in range(n)]) for p in permutations(range(n)))


def permanent_ryser(A):
    """Ryserの公式:n! 通りの置換ではなく 2^n 通りの部分集合で計算する。"""
    n = A.shape[0]
    total = 0.0
    for mask in range(1, 1 << n):
        cols = [j for j in range(n) if mask >> j & 1]
        rowsum = A[:, cols].sum(axis=1)
        total += (-1) ** len(cols) * np.prod(rowsum)
    return total * (-1) ** n


rng = np.random.default_rng(7)
A = rng.normal(size=(6, 6))
print(f"  6x6のテスト行列: 総当たり {permanent_bruteforce(A):+.10f}, "
      f"Ryser {permanent_ryser(A):+.10f}")
print(f"{'n':>5}{'n! terms':>14}{'2^n n terms (Ryser)':>22}{'ratio':>12}")
for n in [6, 10, 20, 30, 40, 50]:
    fact = np.exp(sum(np.log(i) for i in range(1, n + 1)))
    ryser = 2.0 ** n * n
    print(f"{n:>5}{fact:>14.3e}{ryser:>22.3e}{fact / ryser:>12.3e}")
print("  Ryserは n! を 2^n n に変える。莫大な勝利だが、依然として指数関数である。")
print("  この隔たりがボソンサンプリングの優位性主張の内容のすべてである。それは")
print("  サンプリング問題の古典的コストについて何かを述べるが、材料研究者が欲しい")
print("  基底状態エネルギーについては何も述べない。")
事後選択による線形光学の2量子ビットゲートは p = 1/9 で成功する。
修復なしで G 個つなぐと確率は掛け算になる。
  G gates          p^G  trials for 50%  wall time at 1 GHz
----------------------------------------------------------
        1    1.111e-01       6.238e+00          6.24e-09 s
        2    1.235e-02       5.614e+01          5.61e-08 s
        5    1.694e-05       4.093e+04          4.09e-05 s
       10    2.868e-10       2.417e+09          2.42e+00 s
       20    8.225e-20       8.427e+18         2.67e+02 yr
       50    1.940e-48       3.572e+47         1.13e+31 yr
  50ゲートは自明な回路だが、指数関数はすでに議論を終わらせている。
  事後選択はアーキテクチャではない。

ヘラルド付きゲートは再試行できる。1ゲート枠あたり n_mux 個並列に用意すると、
少なくとも1つが成功する確率は 1 - (1-p)^n_mux である:
  n_mux   P(slot ok)   P(all 100 slots ok)
      1     0.111111             3.765e-96
     10     0.692054             1.033e-16
     30     0.970797             5.162e-02
     60     0.999147             9.182e-01
    100     0.999992             9.992e-01
    200     1.000000             1.000e+00
  100ゲート回路で99%に届くには P(slot ok) > 0.9999 が必要、すなわち
  1枠あたり n_mux >= 79 個、つまり 7900 個のヘラルド資源が必要である。
  超伝導チップなら100発のパルスで走らせる回路のために。

光子損失:素子1個あたりの透過率 eta、経路中の素子数 N。
    eta        N=10        N=50       N=100       N=500
-------------------------------------------------------
  0.999   9.900e-01   9.512e-01   9.048e-01   6.064e-01
  0.990   9.044e-01   6.050e-01   3.660e-01   6.570e-03
  0.950   5.987e-01   7.694e-02   5.921e-03   7.274e-12
  0.900   3.487e-01   5.154e-03   2.656e-05   1.322e-23
  損失は事後選択では訂正できない — 失われた光子は失われた量子ビットである —
  ので光量子の誤り耐性には損失耐性符号が必要であり、その閾値はゲート誤差では
  なく素子あたりの eta で述べられる。

裏面:線形光学ネットワークの出力振幅は行列のパーマネントであり、
パーマネントに劣指数時間のアルゴリズムは知られていない。
  6x6のテスト行列: 総当たり -13.9851672727, Ryser -13.9851672727
    n      n! terms   2^n n terms (Ryser)       ratio
    6     7.200e+02             3.840e+02   1.875e+00
   10     3.629e+06             1.024e+04   3.544e+02
   20     2.433e+18             2.097e+07   1.160e+11
   30     2.653e+32             3.221e+10   8.235e+21
   40     8.159e+47             4.398e+13   1.855e+34
   50     3.041e+64             5.629e+16   5.403e+47
  Ryserは n! を 2^n n に変える。莫大な勝利だが、依然として指数関数である。
  この隔たりがボソンサンプリングの優位性主張の内容のすべてである。それは
  サンプリング問題の古典的コストについて何かを述べるが、材料研究者が欲しい
  基底状態エネルギーについては何も述べない。

着目点。 3つの独立した算術的事実があり、それぞれが独立にアーキテクチャを形づくります。

事後選択は20ゲートで死ぬ。 $9^{-20} = 8\times10^{-20}$ なので、ギガヘルツの繰り返しでも20ゲート回路の成功を1回見るまでの期待時間は267年です。20ゲートなど何でもありません — 第4章の封鎖ゲートはマイクロ秒でそれ以上をこなします。これは光量子が悪いという言明ではなく、事後選択がアーキテクチャになりえないという証明であり、だからこそ誰もそれをアーキテクチャとして提案しません。

多重化は機能し、そして高価である。 100ゲート回路で99%の成功に届くには1ゲート枠あたり79個の並列コピー、すなわち超伝導チップが100発のマイクロ波パルスで走らせる回路のために約7900個のヘラルド資源が必要です。おおよそ2桁というこの比が非決定性の代価であり、光量子の提案が量子ビット数ではなく光源数と検出器数で述べられる理由です。

損失は他の方式に対応物のない破綻様式。 素子あたり99%の透過率なら100素子の経路は37%の確率で通し、95%なら0.6%です。そしてPauli誤りと違い、失われた光子は標準的なスタビライザー符号では訂正できません — 第4章の原子損失とまったく同じ漏れです。したがって光量子の誤り耐性には、閾値が素子あたりの透過率で述べられる損失耐性符号が必要です。すべての界面、すべての導波路の曲がり、すべての検出器効率がその予算を消費し、それが光集積回路の材料スタック全体 — 低損失窒化シリコン、ニオブ酸リチウム、ファイバ結合、超伝導ナノワイヤ検出器 — を律速条件にしています。

それでもこの分野が良い物理に満ちている理由。 線形ネットワークの出力振幅は行列のパーマネントであり、Ryserのアルゴリズムは $n!$ を $2^n n$ に減らします — $n = 50$ で $5\times10^{47}$ 倍の改善で、それでも指数関数です。この隔たりがボソンサンプリングやGauss型ボソンサンプリングの優位性主張の内容です。それはサンプリング問題の古典的コストについての本物の言明です。そしてアルゴリズム編が詳しく論じたとおり、基底状態エネルギーについての言明ではなく、両者を互換に扱うことがこの種の結果を読むうえで最も多い誤りです。


5.2 半導体スピン量子ビット

電子1個、ドット1個、CMOSプロセス1本

半導体中に電子1個を静電的に閉じ込め、磁場をかけると、そのスピンは指定可能なZeeman分裂をもつ2準位系になります。ドットはヘテロ構造(典型的にはSi/SiGeまたはSi/SiO$_2$)上の金属ゲートで数十ナノメートルの尺度に定義されます — つまり、半導体産業が数十年にわたって量産してきた尺度です。

この最後の一文がこの方式の戦略的論拠のすべてであり、真剣に受け取るに値します。シリコンスピン量子ビットは、本コースの中で商用ファウンドリの300 mmウェハ上に、トランジスタと同じリソグラフィ・同じ計測・同じ歩留まり統計で作れる唯一の量子ビットです。しかも制御回路を同じダイに載せる可能性があり、それは第2章と第4章がともにアーキテクチャ上の問題と同定した配線問題を回避します。量子ビットは小さくもあります。ドットは $\sim$100 nm、トランズモンは $\sim$100 µmで、面積で $10^6$ の差です。

その下にある磁気・スピン輸送の物理 — Zeeman分裂、$g$ 因子、スピン軌道相互作用、スピン緩和チャネル — はスピントロニクス入門コースの主題であり、両者は目的の異なる同じ物理です。スピントロニクスはデバイス内でスピン情報をどう動かし検出するかを問い、スピン量子ビットは1つのスピンをコヒーレントに保ちながら精密に回転させる方法を問います。

2量子ビットゲートは交換相互作用

トンネル障壁を挟んで隣接する2つのドット中の2電子は、2サイトHubbard模型で記述されます — アルゴリズム編が第4章で量子化学のおもちゃとして対角化した、まさにその2サイトHubbard模型です。ここではそれはおもちゃではなく、デバイスのハミルトニアンです。

$$ H = -t\sum_\sigma \left(c^\dagger_{0\sigma}c_{1\sigma} + \text{h.c.}\right) + U\sum_i n_{i\uparrow}n_{i\downarrow} + \frac{\varepsilon}{2}\left(n_1 - n_0\right) $$

ここで $t$ は障壁ゲートで決まるトンネル結合、$U$ はオンサイト充電エネルギー、$\varepsilon$ はプランジャーゲートで決まる2ドット間の離調です。2電子セクターでは、スピン一重項は二重占有の $(2,0)$ と $(0,2)$ 配置へ仮想的にホップできますが、三重項はPauli排他によりできません。その結果生じるエネルギー差が交換分裂

$$ J = E_T - E_S \simeq \frac{2t^2}{U-\varepsilon} + \frac{2t^2}{U+\varepsilon} = \frac{4t^2 U}{U^2 - \varepsilon^2} $$

であり、離調ゼロで馴染みの超交換 $4t^2/U$ に帰着します。$J$ を時間 $t = \pi\hbar/J$ だけオンにすると SWAP になりますが、これはまったくエンタングリングではありません。2つのスピンを入れ替えるだけです。エンタングリングゲートはその半分です。$t = \pi\hbar/2J$ で発展は $\sqrt{\mathrm{SWAP}}$ になり、$|{\uparrow\downarrow}\rangle$ を $|{\uparrow\downarrow}\rangle$ と $|{\downarrow\uparrow}\rangle$ の等重ね合わせに写し、1量子ビット回転と合成してCNOTになります。以下の表が引用するのはSWAP時間 $h/2J$ であり、エンタングラはその半分です。スピン量子ビットの動作に関するすべては、$J$ がゲート電圧で制御される量であるという事実の帰結です。速く、局所的で、そしてデバイス内のあらゆる電圧揺らぎに晒されています。

Code Example 3: 交換結合した二重量子ドット

"""交換結合した二重量子ドットを厳密対角化する。

ドット2個、各1軌道、スピン2種:フェルミオンモードは4つで、順序は
(ドット0上、ドット0下、ドット1上、ドット1下)。アルゴリズム編とまったく同じ
Jordan-Wigner変換でHubbard二量体を組み、2電子セクターに制限して
一重項-三重項分裂 J を読み取ります。エネルギーはすべて ueV。
"""
import numpy as np

NM = 4                              # フェルミオンモード数
DIM = 2 ** NM
I2 = np.eye(2, dtype=complex)
Z = np.array([[1, 0], [0, -1]], dtype=complex)
LOWER = np.array([[0, 1], [0, 0]], dtype=complex)      # |0><1| : 消滅演算子


def kron_list(ops):
    out = np.array([[1.0 + 0j]])
    for o in ops:
        out = np.kron(out, o)
    return out


def annihilate(p):
    """モード p のJordan-Wigner消滅演算子(モード順序はビッグエンディアン)。"""
    return kron_list([Z] * p + [LOWER] + [I2] * (NM - p - 1))


C = [annihilate(p) for p in range(NM)]
CD = [c.conj().T for c in C]
NOP = [CD[p] @ C[p] for p in range(NM)]
N_TOT = sum(NOP)
# モード順 (0u, 0d, 1u, 1d) に対する S_z = (n_0u - n_0d + n_1u - n_1d)/2
SZ = 0.5 * (NOP[0] - NOP[1] + NOP[2] - NOP[3])
# S_+ S_- から組んだ全 S^2(2つのスピン1/2に対して)
SP = CD[0] @ C[1] + CD[2] @ C[3]
SM = SP.conj().T
S2 = SM @ SP + SZ @ SZ + SZ


def hamiltonian(t, U, eps):
    """-t がホッピング、U がオンサイト、eps が離調(ドット1とドット0の差)。"""
    H = np.zeros((DIM, DIM), dtype=complex)
    for s in (0, 1):
        H += -t * (CD[s] @ C[2 + s] + CD[2 + s] @ C[s])
    H += U * (NOP[0] @ NOP[1] + NOP[2] @ NOP[3])
    H += 0.5 * eps * (NOP[2] + NOP[3] - NOP[0] - NOP[1])
    return H


def two_electron_spectrum(t, U, eps):
    """2電子セクターの固有値、<S^2>、および二重占有率を返す。"""
    H = hamiltonian(t, U, eps)
    keep = np.isclose(np.diag(N_TOT).real, 2.0)
    idx = np.where(keep)[0]
    Hs = H[np.ix_(idx, idx)]
    w, v = np.linalg.eigh(Hs)
    s2 = np.array([(v[:, i].conj() @ S2[np.ix_(idx, idx)] @ v[:, i]).real
                   for i in range(len(w))])
    DOCC = NOP[0] @ NOP[1] + NOP[2] @ NOP[3]
    d = np.array([(v[:, i].conj() @ DOCC[np.ix_(idx, idx)] @ v[:, i]).real
                  for i in range(len(w))])
    return w, s2, d


def exchange(t, U, eps):
    """J = E(三重項) - E(一重項)。いずれも各セクターの最低状態をとる。"""
    w, s2, _ = two_electron_spectrum(t, U, eps)
    E_s = w[s2 < 0.5].min()          # S = 0 なら <S^2> = 0
    E_t = w[s2 > 1.5].min()          # S = 1 なら <S^2> = 2
    return E_t - E_s


U, t = 3000.0, 100.0                 # ueV:充電エネルギーとトンネル結合
print(f"二重量子ドット: U = {U:.0f} ueV, t = {t:.0f} ueV、2電子状態は6個。")
w, s2, docc = two_electron_spectrum(t, U, 0.0)
print(f"{'E (ueV)':>12}{'<S^2>':>9}{'<n_up n_dn>':>13}{'label':>28}")
for E, s, d in zip(w, s2, docc):
    if s > 1.5:
        lab = "triplet (1,1)"     # 三重項
    elif d < 0.5:
        lab = "singlet, mostly (1,1)"        # 主に (1,1) の一重項
    else:
        lab = "singlet, mostly (2,0)+(0,2)"  # 主に (2,0)+(0,2) の一重項
    print(f"{E:>12.4f}{s:>9.4f}{d:>13.4f}{lab:>28}")
print(f"  J = E_T - E_S = {exchange(t, U, 0.0):.4f} ueV")
print(f"  摂動論の 4t^2/U = {4 * t ** 2 / U:.4f} ueV")
print(f"  2サイトの厳密式 U/2 - sqrt((U/2)^2 + 4t^2) から J = "
      f"{-(U / 2 - np.sqrt((U / 2) ** 2 + 4 * t ** 2)):.4f} ueV")

# --- つまみとしての J:トンネル結合と離調 --------------------------------
print()
print("離調ゼロでのトンネル結合に対する J(「対称動作」のつまみ):")
print(f"{'t (ueV)':>9}{'J (ueV)':>12}{'4t^2/U':>11}{'J/h (MHz)':>12}{'SWAP h/2J':>11}")
for ti in [5.0, 10.0, 20.0, 50.0, 100.0, 200.0]:
    J = exchange(ti, U, 0.0)
    f_MHz = J * 1e-6 * 1.602176634e-19 / 6.62607015e-34 / 1e6
    print(f"{ti:>9.0f}{J:>12.4f}{4 * ti ** 2 / U:>11.4f}{f_MHz:>12.2f}"
          f"{500.0 / f_MHz:>11.3f}")

print()
print("t を固定した離調に対する J(「傾斜動作」のつまみ):")
hdr = (f"{'eps/U':>8}{'J (ueV)':>11}{'4t^2 U/(U^2-eps^2)':>20}"
       f"{'dJ/d eps':>11}{'|dJ/deps|/J':>13}")
print(hdr)
print("-" * len(hdr))
h_eps = 1.0
for r in [0.0, 0.2, 0.4, 0.6, 0.8, 0.9]:
    eps = r * U
    J = exchange(t, U, eps)
    dJ = (exchange(t, U, eps + h_eps) - exchange(t, U, eps - h_eps)) / (2 * h_eps)
    pert = 2 * t ** 2 / (U - eps) + 2 * t ** 2 / (U + eps)
    print(f"{r:>8.1f}{J:>11.4f}{pert:>20.4f}{dJ:>11.5f}{abs(dJ) / J:>13.5f}")

# --- スイートスポットと電荷ノイズの代価 ----------------------------------
print()
print("電荷ノイズ:静的な離調オフセット d_eps は J を変えるので、交換位相は1ゲート")
print("あたり pi |J(eps+d_eps) - J(eps)| / J だけ狂う。1ラジアンに達するまでのゲート数:")
print(f"{'eps/U':>8}{'J (ueV)':>11}{'SWAP h/2J':>12}"
      f"{'N at d_eps=1 ueV':>18}{'N at d_eps=10 ueV':>19}")
for r in [0.0, 0.2, 0.5, 0.8]:
    eps = r * U
    J = exchange(t, U, eps)
    f_MHz = J * 1e-6 * 1.602176634e-19 / 6.62607015e-34 / 1e6
    ns = [J / (np.pi * abs(exchange(t, U, eps + d) - J)) for d in (1.0, 10.0)]
    print(f"{r:>8.1f}{J:>11.4f}{500.0 / f_MHz:>12.3f}"
          f"{ns[0]:>18.1f}{ns[1]:>19.1f}")
print("  eps = 0 では対称性により微分が消える。J は1次で平坦である。")
print("  これが対称交換のスイートスポットであり、スピン量子ビットが電荷遷移の斜面で")
print("  はなくそこで動作させられる理由のすべてである。")
二重量子ドット: U = 3000 ueV, t = 100 ueV、2電子状態は6個。
     E (ueV)    <S^2>  <n_up n_dn>                       label
    -13.2746   0.0000       0.0044       singlet, mostly (1,1)
     -0.0000   2.0000       0.0000               triplet (1,1)
      0.0000   2.0000       0.0000               triplet (1,1)
      0.0000   2.0000       0.0000               triplet (1,1)
   3000.0000   0.0000       1.0000 singlet, mostly (2,0)+(0,2)
   3013.2746   0.0000       0.9956 singlet, mostly (2,0)+(0,2)
  J = E_T - E_S = 13.2746 ueV
  摂動論の 4t^2/U = 13.3333 ueV
  2サイトの厳密式 U/2 - sqrt((U/2)^2 + 4t^2) から J = 13.2746 ueV

離調ゼロでのトンネル結合に対する J(「対称動作」のつまみ):
  t (ueV)     J (ueV)     4t^2/U   J/h (MHz)  SWAP h/2J
        5      0.0333     0.0333        8.06     62.036
       10      0.1333     0.1333       32.24     15.509
       20      0.5332     0.5333      128.94      3.878
       50      3.3296     3.3333      805.10      0.621
      100     13.2746    13.3333     3209.78      0.156
      200     52.4175    53.3333    12674.49      0.039

t を固定した離調に対する J(「傾斜動作」のつまみ):
   eps/U    J (ueV)  4t^2 U/(U^2-eps^2)   dJ/d eps  |dJ/deps|/J
---------------------------------------------------------------
     0.0    13.2746             13.3333   -0.00000      0.00000
     0.2    13.8199             13.8889    0.00189      0.00014
     0.4    15.7588             15.8730    0.00491      0.00031
     0.6    20.5352             20.8333    0.01239      0.00060
     0.8    35.1675             37.0370    0.04656      0.00132
     0.9    59.1585             70.1754    0.13364      0.00226

電荷ノイズ:静的な離調オフセット d_eps は J を変えるので、交換位相は1ゲート
あたり pi |J(eps+d_eps) - J(eps)| / J だけ狂う。1ラジアンに達するまでのゲート数:
   eps/U    J (ueV)   SWAP h/2J  N at d_eps=1 ueV  N at d_eps=10 ueV
     0.0    13.2746       0.156         2902931.1            29029.0
     0.2    13.8199       0.150            2323.1              230.3
     0.5    17.6058       0.117             733.9               72.9
     0.8    35.1675       0.059             240.1               23.7
  eps = 0 では対称性により微分が消える。J は1次で平坦である。
  これが対称交換のスイートスポットであり、スピン量子ビットが電荷遷移の斜面で
  はなくそこで動作させられる理由のすべてである。

着目点。 これはアルゴリズム編と同じJordan-Wignerの道具立てを、分子ではなくデバイスに適用したもので、この方式の中心的な設計原理を生みます。

6状態、そして物理はラベルに見える。 2電子セクターには $-13.27$ µeVの $(1,1)$ 一重項1個、ちょうどゼロの3重縮退した $(1,1)$ 三重項、そして $U$ 付近の主に二重占有の一重項2個があります。三重項が厳密にゼロにあるのは、Pauli排他がホッピングを禁じているからです — それが機構のすべてであり、ここではトンネル結合が持ち上げられない縮退として現れています。$J = 13.2746$ µeVは閉じた形 $\sqrt{(U/2)^2+4t^2} - U/2$ と印字全桁で一致し、摂動論の $4t^2/U = 13.3333$ と0.4%で一致します。

$J$ は妥当な $t$ の範囲で3桁にわたる。 $t = 5$ µeVから $t = 200$ µeVで $J$ は0.033から52 µeV — 1570倍、すなわち3.2桁 — になり、SWAP時間は62 nsから0.04 nsになります(エンタングリングな $\sqrt{\mathrm{SWAP}}$ はそれぞれ半分)。トンネル結合は障壁ゲート電圧の指数関数なので、この3桁の範囲は1つの電極上で使えます — それがこの方式の最大の利便性であり、同時に最大の露出です。

スイートスポットは本物で、1000倍の価値がある。 $\varepsilon = 0$ では対称性により微分 $\mathrm{d}J/\mathrm{d}\varepsilon$ が消えます。一重項が $(2,0)$ と $(0,2)$ に等しく結合し、2つの線形シフトが打ち消すからです。1 µeVの離調オフセットが交換位相を1ラジアン狂わせるのは $2.9\times10^6$ ゲート後であり、$\varepsilon = 0.2U$ では2323ゲート、$\varepsilon = 0.8U$ では240ゲートです。対称点で動作させることはゲート数で3桁の価値があり、その代価はバイアスの選び方だけです。 これは第2章のトランズモンの電荷ノイズ非感受性のスピン量子ビット版であり、議論の構造は同一です。量子ビット周波数のノイズパラメータについての1次微分が消える点を見つけ、そこに座るのです。

そして正直な留保はコード自身のコメントにあります。 スイートスポットの数値は静的なオフセットを仮定しています。この種のデバイスの実際の電荷ノイズは $1/f$ で、ゲート酸化膜と界面の2準位ゆらぎ体の集団が生成するので、数十ナノ秒続くゲートは多数のオフセットを走査し、2次の曲率が損害を与えます。その機構 — アモルファス酸化膜中の2準位欠陥 — は、第2章で超伝導量子ビットを律速するまったく同じ物理機構です。これ以上違って見えようのない2方式が、同じ種類の欠陥に阻まれています。

同位体精製、そしてそれが効かなくなる場所

天然シリコンは4.7%の $^{29}$Si を含み、これが核スピンをもつ唯一の安定シリコン同位体です。各核は接触超微細相互作用で電子に結合し、電子の包絡線内の $\sim10^5$ 個の核にわたる和がランダムな実効磁場 — Overhauser場 — となって、ショットごとに異なる量だけ量子ビット周波数をずらします。これは不均一な位相緩和なので、第1章の定義どおり $T_2$ ではなく $T_2^\ast$ を制限します。

対策は $^{29}$Si を取り除くことです。核スピンが非コヒーレントに加算されるため、場の広がりはその個数の平方根でスケールします:

$$ \sigma_{\text{Overhauser}} \propto \sqrt{f\,N_{\text{sites}}}, \qquad T_2^\ast \propto \frac{1}{\sqrt{f}} $$

これは量子ハードウェアでは本当に珍しい状況です。化学によって除去できるデコヒーレンスチャネルであり、その値段は物理ではなく同位体分離プラントが決めます。そして以下の数値が示すとおり、効果が急速に逓減するチャネルでもあります。

Code Example 4: 同位体精製とOverhauser場

"""同位体精製:28-Siが量子ハードウェア材料である理由。

量子ドット中の電子は N_sites 個の格子サイトと重なります。そのうち割合 f が
スピン1/2の29-Si核をもち、各核がランダムな超微細場を与えます。その和が
Overhauser場であり、その広がりが T2* を制限します。

すべては単一核の超微細結合 a_hf を単位として書くので、装置固有の数値は
一切入りません。物理は比の中にあります。
"""
import numpy as np

rng = np.random.default_rng(2026)
N_SITES = 400_000          # 電子の包絡線内の格子サイト数
N_TRIALS = 40_000          # 各条件でのRamseyショット数

ABUNDANCE = {"natural Si (4.7%)": 4.7e-2, "1000 ppm": 1.0e-3,
             "200 ppm": 2.0e-4, "50 ppm": 5.0e-5}


def overhauser_samples(f, n_trials=N_TRIALS):
    """ランダムな核スピン配置に対するOverhauser離調を a_hf 単位でサンプルする。

    各サイトは確率 f で29-Si核をもち、その核は等確率で +1/2 か -1/2 をとる。
    大 N 極限で和は分散 N_sites * f / 4 のGauss分布になるので、直接それを
    サンプルし、1度だけ明示的に検証する。
    """
    return rng.normal(0.0, np.sqrt(N_SITES * f / 4.0), size=n_trials)


# --- 核スピンを1個ずつ引いてGauss極限を検証する --------------------------
f0 = 4.7e-2
explicit = np.array([
    (rng.random(N_SITES) < f0).astype(float).dot(rng.choice([-0.5, 0.5], N_SITES))
    for _ in range(200)])
print("中心極限の検証(天然Si、明示的な200配置):")
print(f"  明示的な標準偏差 {explicit.std():.3f} a_hf")
print(f"  sqrt(N f / 4)    {np.sqrt(N_SITES * f0 / 4.0):.3f} a_hf")
print(f"  明示的な平均     {explicit.mean():+.3f} a_hf(0のはず)")

# --- 静的だがランダムな離調によるRamsey減衰 ------------------------------
def ramsey(f, times):
    """Overhauser場の実現についてショット平均したRamsey信号 <cos(delta t)>。"""
    delta = overhauser_samples(f)
    return np.array([np.cos(delta * t).mean() for t in times])


print()
print("Ramsey自由誘導減衰。時間の単位は 1/a_hf:")
sigmas, t2s = {}, {}
for name, f in ABUNDANCE.items():
    sigma = np.sqrt(N_SITES * f / 4.0)
    sigmas[name] = sigma
    t2s[name] = np.sqrt(2.0) / sigma          # exp(-(t/T2*)^2)、T2* = sqrt2/sigma
print(f"{'material':>20}{'f':>10}{'N_29':>9}{'sigma (a_hf)':>14}"
      f"{'T2* (1/a_hf)':>14}{'gain':>8}")
for name, f in ABUNDANCE.items():
    print(f"{name:>20}{f:>10.1e}{int(N_SITES * f):>9d}{sigmas[name]:>14.4f}"
          f"{t2s[name]:>14.4e}{t2s[name] / t2s['natural Si (4.7%)']:>8.2f}")
print(f"  4.7% から 50 ppm への予測利得: sqrt(4.7e-2/5e-5) = "
      f"{np.sqrt(4.7e-2 / 5e-5):.2f}")

print()
print("測定された減衰包絡線(モンテカルロ)とGauss予測の比較:")
for name in ["natural Si (4.7%)", "200 ppm"]:
    f = ABUNDANCE[name]
    T2 = t2s[name]
    ts = np.array([0.25, 0.5, 1.0, 1.5, 2.0]) * T2
    sig = ramsey(f, ts)
    print(f"  {name}: T2* = {T2:.4e} / a_hf")
    print(f"    {'t/T2*':>8}{'<cos>':>12}{'exp(-(t/T2*)^2)':>18}")
    for t, s in zip(ts, sig):
        print(f"    {t / T2:>8.2f}{s:>12.6f}{np.exp(-(t / T2) ** 2):>18.6f}")

# --- 精製が直さないもの --------------------------------------------------
print()
print("スケーリングは sqrt(f) なので精製の効果は逓減し、別の機構が支配し始めると")
print("それ以上は役に立たなくなる:")
print(f"{'f':>10}{'T2* (1/a_hf)':>15}{'with a charge-noise cap at 2/a_hf':>36}")
for f in [4.7e-2, 1e-3, 1e-4, 1e-5, 1e-6]:
    T2 = np.sqrt(2.0) / np.sqrt(N_SITES * f / 4.0)
    print(f"{f:>10.1e}{T2:>15.4e}{1.0 / (1.0 / T2 + 1.0 / 2.0):>36.4e}")
print("  交差点、すなわち核スピンと競合機構の 1/T2* への寄与が等しくなる点は")
print("  T2* = 2/a_hf、つまり N_sites f / 4 = 1/2、つまりこのドットでは f = 5 ppm")
print("  である。それを下回ると核スピン浴はもはや限界ではない。限界は酸化膜と界面の")
print("  欠陥に由来する電荷ノイズであり、同位体分離はそれに一切触れない。")
print()
print("材料研究者が持ち帰るべき3つの数:")
print(f"  1. sigma_Overhauser ~ sqrt(f N_sites)。29-Siの99.9%を除去しても")
print(f"     コヒーレンスは {np.sqrt(1e3):.1f} 倍しか買えない。")
print("  2. ドットは、軌道分裂と谷分裂が動作温度を上回るだけ小さくもなければならない")
print("     — これは歪みと界面の問題である。")
print("  3. 床を決めるのは電荷ノイズであり、それはシリコンではなく酸化膜に住んでいる。")
中心極限の検証(天然Si、明示的な200配置):
  明示的な標準偏差 69.000 a_hf
  sqrt(N f / 4)    68.557 a_hf
  明示的な平均     -0.427 a_hf(0のはず)

Ramsey自由誘導減衰。時間の単位は 1/a_hf:
            material         f     N_29  sigma (a_hf)  T2* (1/a_hf)    gain
   natural Si (4.7%)   4.7e-02    18800       68.5565    2.0628e-02    1.00
            1000 ppm   1.0e-03      400       10.0000    1.4142e-01    6.86
             200 ppm   2.0e-04       80        4.4721    3.1623e-01   15.33
              50 ppm   5.0e-05       20        2.2361    6.3246e-01   30.66
  4.7% から 50 ppm への予測利得: sqrt(4.7e-2/5e-5) = 30.66

測定された減衰包絡線(モンテカルロ)とGauss予測の比較:
  natural Si (4.7%): T2* = 2.0628e-02 / a_hf
       t/T2*       <cos>   exp(-(t/T2*)^2)
        0.25    0.939976          0.939413
        0.50    0.780715          0.778801
        1.00    0.371234          0.367879
        1.50    0.105538          0.105399
        2.00    0.016772          0.018316
  200 ppm: T2* = 3.1623e-01 / a_hf
       t/T2*       <cos>   exp(-(t/T2*)^2)
        0.25    0.939462          0.939413
        0.50    0.779112          0.778801
        1.00    0.369357          0.367879
        1.50    0.107046          0.105399
        2.00    0.020746          0.018316

スケーリングは sqrt(f) なので精製の効果は逓減し、別の機構が支配し始めると
それ以上は役に立たなくなる:
         f   T2* (1/a_hf)   with a charge-noise cap at 2/a_hf
   4.7e-02     2.0628e-02                          2.0418e-02
   1.0e-03     1.4142e-01                          1.3208e-01
   1.0e-04     4.4721e-01                          3.6549e-01
   1.0e-05     1.4142e+00                          8.2843e-01
   1.0e-06     4.4721e+00                          1.3820e+00
  交差点、すなわち核スピンと競合機構の 1/T2* への寄与が等しくなる点は
  T2* = 2/a_hf、つまり N_sites f / 4 = 1/2、つまりこのドットでは f = 5 ppm
  である。それを下回ると核スピン浴はもはや限界ではない。限界は酸化膜と界面の
  欠陥に由来する電荷ノイズであり、同位体分離はそれに一切触れない。

材料研究者が持ち帰るべき3つの数:
  1. sigma_Overhauser ~ sqrt(f N_sites)。29-Siの99.9%を除去しても
     コヒーレンスは 31.6 倍しか買えない。
  2. ドットは、軌道分裂と谷分裂が動作温度を上回るだけ小さくもなければならない
     — これは歪みと界面の問題である。
  3. 床を決めるのは電荷ノイズであり、それはシリコンではなく酸化膜に住んでいる。

着目点。 計算全体が単一核の超微細結合を単位としているので、装置の数値は一切入らず、すべての結論が比です。

中心極限定理が仕事をする。 各サイトが確率4.7%で $^{29}$Si 核をもつ40万サイトを明示的に引くと標準偏差は69.0で、予測 $\sqrt{Nf/4} = 68.56$ に対する値です。Overhauser場がGauss的である理由、そしてRamsey包絡線が指数関数ではなく $\exp[-(t/T_2^\ast)^2]$ である理由がこれです — この形の違いが、実験室で不均一な位相緩和と真の $T_2$ 減衰を区別します。

精製が買うのは $\sqrt{f}$ であり、それは硬い天井。 天然シリコンから50 ppmへ行くと核スピンの99.9%が除かれ $T_2^\ast$ は30.7倍改善します — ちょうど $\sqrt{4.7\times10^{-2}/5\times10^{-5}}$ です。この機構の内側でこれより良くする方法はありません。非コヒーレントな和は非コヒーレントな和です。測定されたモンテカルロ包絡線は両濃度で $\exp[-(t/T_2^\ast)^2]$ と小数3桁で一致し、尺度だけでなく形も理解されていることを確認します。

そして、それは効かなくなる。 最後の表は固定レートの競合機構を加えています。交差点より下では、さらなる精製はほとんど何も買いません。全位相緩和率が和になるからです。実際のデバイスでその競合機構は、スピン軌道相互作用と $g$ 因子のばらつきを通じてスピンに結合する電荷ノイズであり、それはシリコン結晶ではなく酸化膜と界面に住んでいます。ある純度を超えると、より良い同位体を買うことは間違ったものを買うことです。

材料問題は1つではなく3つ。 コードの最後の行がそれらを列挙しており、異なる専門家に属するので分けておく価値があります。同位体純度は化学・結晶成長の問題で、原理的には解決済みです。電荷ノイズはアモルファス酸化膜の欠陥問題で、超伝導量子ビットと共有され、未解決です。そして谷分裂 — 歪みシリコン中で最低2つの伝導帯谷がほぼ縮退しており、動作温度より、そして $J$ より大きく持ち上げなければならず、Si/SiGe界面の原子スケールの詳細に依存する — は、本コース全体の中で最も具体的に材料科学の形をした障害と言えるヘテロ構造成長の問題です。


5.3 トポロジカル量子計算

着想を公正に述べる

ここまでのすべての方式は、量子ビットを孤立させ、それでも通り抜けた誤りを訂正することでデコヒーレンスと戦います。トポロジカル量子計算は構造的に異なることを提案します。いかなる局所演算子も読めず乱せない形で情報を蓄えよ。

具体的な機構は、1次元トポロジカル超伝導体の両端に束縛されたMajoranaゼロモードの対 — 自己共役なフェルミオン励起、$\gamma^\dagger = \gamma$ — です。1つのフェルミオン自由度が両者の間に非局所的に共有されるので、その状態は細線の長さだけ離れた2つの対象の共同の性質として符号化されます。片端だけに作用する摂動はそれを変えられません。保護は通常の意味での大きなエネルギーギャップではありません。誤りを起こすために必要な演算子が局所的に存在しない、という言明です。

Kitaevによる最小模型は、p波対相関をもつスピンレスフェルミオンの鎖です:

$$ H = \sum_j \left[-w\left(c^\dagger_j c_{j+1} + \text{h.c.}\right) - \mu\left(n_j - \tfrac12\right) + \Delta\left(c_j c_{j+1} + \text{h.c.}\right)\right] $$

$|\mu| < 2w$ で鎖はトポロジカルになり両端にMajoranaを1つずつもち、$|\mu| > 2w$ では自明でギャップが開きます。2つのMajoranaの重なりが指数的に小さいので、縮退対のエネルギー分裂は

$$ \varepsilon_0 \sim e^{-L/\xi} $$

となり、これが「トポロジカル保護」の定量的内容です。誤り訂正をまったく行わずに、長さについて指数的な誤り抑制。 これが機能すれば、第1章の資源計算を根本から変えます。

ゲートはブレイディングから来ます。2つのMajoranaを交換すると、交換の速さや精度ではなく交換のトポロジーのみに依存する離散的なユニタリが実装されます。ブレイディングだけでは万能ではなく — Majoranaに対してはCliffordに似た部分群しか生成しません — したがってトポロジカル計算機もなお非トポロジカルなゲート1つを必要とし、それはアルゴリズム編の表面符号の会計とまったく同様、マジック状態蒸留が供給します。

Majorana分解と、「非可換」の意味

上の主張は、Majoranaがどこから来るのかを見てからのほうが信用しやすくなります。奇妙なことは何も起きておらず、これは変数変換です。任意のフェルミオンモードはエルミートな2つの半分に分けられます。

$$ c_j = \frac{\gamma_{2j-1} + i\gamma_{2j}}{2}, \qquad \gamma_{2j-1} = c_j + c_j^\dagger, \quad \gamma_{2j} = i\left(c_j^\dagger - c_j\right) $$

これらは $\gamma_a^\dagger = \gamma_a$、$\gamma_a^2 = 1$、$\lbrace \gamma_a, \gamma_b\rbrace = 2\delta_{ab}$ を満たします。普通のフェルミオンでは2つの半分は同じ場所に重なっていて、この分割は帳簿上のものです。Kitaev鎖がするのはそれを分離することです。半分ずつが細線の両端に局在し、両者が共同で定義するフェルミオンモード — 占有か空か、それが量子ビットです — には局所的な担い手がまったく存在しません。その占有数は $i\gamma_L\gamma_R$、両端に1つずつの演算子の積で読まれ、それが情報が非局所であるということの正確な意味です。

$2N$ 個のMajoranaがあって全フェルミオンパリティが固定されていると、基底状態空間は $2^{N-1}$ 次元です。Majorana 4個で量子ビット1個、6個で2個、というふうに。非可換統計とは、2つのMajoranaを交換したときにこの縮退空間がどう変換されるかについての言明です。$\gamma_a$ を $\gamma_b$ の周りでブレイドする操作は、基底状態空間に

$$ U_{ab} = \exp\left(\frac{\pi}{4}\gamma_a\gamma_b\right) = \frac{1}{\sqrt{2}}\left(1 + \gamma_a\gamma_b\right) $$

として作用します。これは位相ではなく縮退空間上のユニタリ演算子です。そこが普通のボソンやフェルミオンとの違いのすべてです。あちらでは交換は状態に $+1$ か $-1$ を掛けるだけなので、続けて交換しても可換です。ここでは可換ではありません。Majorana 4個の場合に具体的な表現 $\gamma_1 = X_1$、$\gamma_2 = Y_1$、$\gamma_3 = Z_1X_2$、$\gamma_4 = Z_1Y_2$ を取ると(上の代数をすべて満たします)、偶パリティの基底状態空間に制限したブレイドは

$$ U_{12} = \exp\left(i\frac{\pi}{4}Z\right), \qquad U_{23} = \exp\left(i\frac{\pi}{4}X\right), \qquad U_{34} = \exp\left(i\frac{\pi}{4}Z\right) $$

になります。$U_{12}$ と $U_{23}$ は直交する軸まわりの $\pi/2$ 回転で可換ではなく — 交換子は小さいどころか最大です — 一方で互いに素な対を交換する $U_{12}$ と $U_{34}$ は厳密に可換です。どのブレイドも全パリティと可換なので、ブレイドが基底状態空間の外へ出ることはありません。これはブレイディングだけでは計算に足りない理由も示しています。$\pi/2$ のPauli回転はCliffordゲートであり、Cliffordゲートは古典的にシミュレートできるので、上で触れたマジック状態の費用は提案の見落としではなく代数の帰結です。

もう1つ、符号化に最も直結する観測量なので名前を挙げておく価値のあるシグネチャがあります。2つのトポロジカル超伝導体を弱結合でつなぎます。横切ってトンネルする単一フェルミオンが運ぶ電荷は $2e$ ではなく $e$ なので、そのエネルギーは超伝導位相差に $\cos\varphi$ ではなく $\pm\varepsilon_M\cos(\varphi/2)$ として依存します。$\varphi$ を $2\pi$ 進めても接合は元の状態に戻らず、2つのフェルミオンパリティ分岐を入れ替えます。したがってパリティを固定した分岐の電流-位相関係は $4\pi$ 周期 — 分数ジョセフソン効果 — であり、AC測定ではジョセフソン周波数が半分になる、あるいは奇数番のShapiroステップが欠けるという形で現れます。局所状態密度ではなくパリティ符号化そのものを試す点で、まさに正しい種類のシグネチャです。そしてそれは次の小節が述べるとおりの意味で脆くもあります。測定中にパリティを反転させるものは何であれ、通常の $2\pi$ 周期を復活させます。

Code Example 5: Kitaev鎖と、そのそっくりさん

"""Kitaev鎖:本物のトポロジカル保護と、保護をもたないそっくりさん。

p波鎖のBdGハミルトニアン
H = sum_j [-w(c_j^dag c_j+1 + h.c.) - mu_j(n_j - 1/2) + D(c_j c_j+1 + h.c.)]
をNambu基底 (c_1..c_L, c_1^dag..c_L^dag) で対角化します。エネルギーはすべて
ホッピング w を単位とします。

規約:多体ハミルトニアンを Psi = (c, c^dag) として H = (1/2) Psi^dag H_BdG Psi
と書くので、下で組む行列の「正の」固有値がそのまま1準粒子励起エネルギーで
あり、さらに2倍の因子は付きません。これは短い鎖の厳密な多体対角化で確認済み
です。mu = 0、w = D = 1 では最低の多体励起が 2.0 w で、下のBdGの最低正固有値
も 2.0 w になります。
"""
import numpy as np


def bdg(mu, L, w=1.0, D=1.0):
    """2L x 2L のBdG行列。mu はスカラーでも長さ L の配列でもよい。"""
    mu = np.full(L, mu, dtype=float) if np.isscalar(mu) else np.asarray(mu, float)
    h = np.diag(-mu)
    dl = np.zeros((L, L))
    for j in range(L - 1):
        h[j, j + 1] = h[j + 1, j] = -w
        dl[j, j + 1] = D
        dl[j + 1, j] = -D
    return np.block([[h, dl], [-dl.conj(), -h.conj()]])


def spectrum(mu, L, **kw):
    return np.linalg.eigh(bdg(mu, L, **kw))


def majorana_weight(vec, L):
    """BdG固有ベクトルのサイト分解した重み |u_j|^2 + |v_j|^2。"""
    u, v = vec[:L], vec[L:]
    return np.abs(u) ** 2 + np.abs(v) ** 2


L = 40
print(f"Kitaev鎖、L = {L}、w = D = 1。トポロジカル相の条件は |mu| < 2w。")
hdr = f"{'mu/w':>7}{'|E_0|/w':>12}{'|E_1|/w':>11}{'bulk gap/w':>13}{'phase':>14}"
print(hdr)
print("-" * len(hdr))
for mu in [0.0, 0.5, 1.0, 1.9, 2.0, 2.1, 3.0, 5.0]:
    w_, v_ = spectrum(mu, L)
    a = np.sort(np.abs(w_))
    phase = ("topological" if abs(mu) < 2 else
             "critical" if abs(mu) == 2 else "trivial")
    print(f"{mu:>7.1f}{a[0]:>12.3e}{a[1]:>11.3e}{a[2]:>13.4f}{phase:>14}")
print("  |E_0| と |E_1| はゼロモードの対 +-eps。その次がバルクギャップである。")

print()
print("ゼロ近傍モードはMajoranaの対であり、両端に1つずつある。")
w_, v_ = spectrum(1.0, L)
i0 = int(np.argmin(np.abs(w_)))
wt = majorana_weight(v_[:, i0], L)
print(f"  mu/w = 1.0, E = {w_[i0]:.3e}")
print(f"  サイト 1-4 の重み:  " + " ".join(f"{x:.4f}" for x in wt[:4]))
print(f"  サイト {L-3}-{L} の重み: " + " ".join(f"{x:.4f}" for x in wt[-4:]))
print(f"  中央半分の重み: {wt[L // 4:3 * L // 4].sum():.3e}")

print()
print("ゼロモードの分裂と鎖長の関係。mu = 0 では Kitaev のゼロモード方程式から")
print("1サイトあたりの減衰係数が |x| = sqrt[(w-D)/(w+D)] となるので、対相関 D を")
print("小さくすれば長く測定可能な局在長が得られる。ここでは D = 0.1 w。")
print(f"{'L':>5}{'|E_0|/w':>14}{'ratio to L-10':>16}")
prev, Ls, es = None, [], []
for Lx in [20, 30, 40, 50, 60, 70]:
    wx, _ = spectrum(0.0, Lx, D=0.1)
    e0 = np.sort(np.abs(wx))[0]
    print(f"{Lx:>5}{e0:>14.4e}{(f'{e0 / prev:.5f}' if prev else '-'):>16}")
    prev = e0
    Ls.append(Lx)
    es.append(e0)
slope = np.polyfit(Ls, np.log(es), 1)[0]
print(f"  当てはめた減衰長 xi = {-1.0 / slope:.3f} サイト")
print(f"  解析値 xi = 2/ln[(w+D)/(w-D)] = {2.0 / np.log(1.1 / 0.9):.3f} サイト")
wx, vx = spectrum(0.0, 70, D=0.1)
wt = majorana_weight(vx[:, int(np.argmin(np.abs(wx)))], 70)
print("  mu = 0 では x が純虚数なので包絡線は交替する。2サイトごとに比較する:")
print(f"  j = 4, 6, 8 での weight(j+2)/weight(j): "
      + ", ".join(f"{wt[j + 2] / wt[j]:.5f}" for j in (4, 6, 8)))
print(f"  予測値 [(w-D)/(w+D)]^2 = {(0.9 / 1.1) ** 2:.5f}")
print("  この指数関数こそが保護である。2つのMajoranaはギャップの開いたバルクを")
print("  横切らずに交信できないので、いかなる局所摂動もそれらを分裂させられない。")

# --- ここから正直な部分 --------------------------------------------------
print()
print("さて、居心地の悪い実験である。鎖を完全に自明相(mu = 3w > 2w)に置きつつ、")
print("実際の静電ゲートがそうするように、最初の数サイトで mu を0から滑らかに")
print("立ち上げる。")
print(f"{'ramp length':>13}{'E_0/w':>12}{'left weight':>13}{'right weight':>14}"
      f"{'looks like':>16}")


def smooth_mu(L, mu_bulk, ramp):
    mu = np.full(L, mu_bulk, dtype=float)
    if ramp > 0:
        mu[:ramp] = mu_bulk * np.linspace(0.0, 1.0, ramp + 1)[1:]
    return mu


for ramp in [0, 4, 8, 12, 20]:
    mu = smooth_mu(L, 3.0, ramp)
    wx, vx = spectrum(mu, L)
    pos = np.argsort(np.abs(wx))
    i = pos[0]
    wt = majorana_weight(vx[:, i], L)
    left, right = wt[:L // 4].sum(), wt[3 * L // 4:].sum()
    e0 = np.sort(wx[wx > -1e-14])[0]
    verdict = "gapped" if e0 > 1e-2 else "a zero mode"   # ギャップあり/ゼロモード
    print(f"{ramp:>13}{e0:>12.4e}{left:>13.4f}{right:>14.4f}{verdict:>16}")

print()
print("両者を分ける非局所性の検査。ゼロモード候補ごとに、細線の両端での重みを")
print("比較する:")
for label, mu, D in [("topological, mu = 1.0 w", np.full(L, 1.0), 1.0),
                     ("trivial + 20-site ramp ", smooth_mu(L, 3.0, 20), 1.0)]:   # 自明相+傾斜
    wx, vx = spectrum(mu, L, D=D)
    i = int(np.argmin(np.abs(wx)))
    wt = majorana_weight(vx[:, i], L)
    left, right = wt[:L // 4].sum(), wt[3 * L // 4:].sum()
    print(f"  {label}: E = {wx[i]:+.3e}, left {left:.4f}, right {right:.4f},"
          f" ratio {min(left, right) / max(left, right):.4f}")
print()
print("細線の片端でのトンネル実験は局所状態密度を測り、どちらの場合もゼロバイアス")
print("ピークを見る。両者を区別するのは*非局所*測定だけであり、それがまさに")
print("難しい実験である。「ゼロバイアスピークを見た」と「Majorana量子ビットを")
print("得た」の間に、プレスリリースではなく10年の仕事が横たわる理由がこれである。")
Kitaev鎖、L = 40、w = D = 1。トポロジカル相の条件は |mu| < 2w。
   mu/w     |E_0|/w    |E_1|/w   bulk gap/w         phase
---------------------------------------------------------
    0.0   3.111e-17  6.661e-16       2.0000   topological
    0.5   3.034e-16  6.035e-16       1.5021   topological
    1.0   1.363e-12  1.365e-12       1.0065   topological
    1.9   2.651e-02  2.651e-02       0.2280   topological
    2.0   7.757e-02  7.757e-02       0.2326      critical
    2.1   1.528e-01  1.528e-01       0.2758       trivial
    3.0   1.016e+00  1.016e+00       1.0623       trivial
    5.0   3.009e+00  3.009e+00       3.0376       trivial
  |E_0| と |E_1| はゼロモードの対 +-eps。その次がバルクギャップである。

ゼロ近傍モードはMajoranaの対であり、両端に1つずつある。
  mu/w = 1.0, E = -1.363e-12
  サイト 1-4 の重み:  0.3751 0.0938 0.0234 0.0059
  サイト 37-40 の重み: 0.0059 0.0234 0.0937 0.3749
  中央半分の重み: 9.537e-07

ゼロモードの分裂と鎖長の関係。mu = 0 では Kitaev のゼロモード方程式から
1サイトあたりの減衰係数が |x| = sqrt[(w-D)/(w+D)] となるので、対相関 D を
小さくすれば長く測定可能な局在長が得られる。ここでは D = 0.1 w。
    L       |E_0|/w   ratio to L-10
   20    5.1588e-02               -
   30    1.8115e-02         0.35115
   40    6.5843e-03         0.36347
   50    2.4102e-03         0.36606
   60    8.8346e-04         0.36655
   70    3.2390e-04         0.36663
  当てはめた減衰長 xi = 9.881 サイト
  解析値 xi = 2/ln[(w+D)/(w-D)] = 9.967 サイト
  mu = 0 では x が純虚数なので包絡線は交替する。2サイトごとに比較する:
  j = 4, 6, 8 での weight(j+2)/weight(j): 0.66942, 0.66942, 0.66942
  予測値 [(w-D)/(w+D)]^2 = 0.66942
  この指数関数こそが保護である。2つのMajoranaはギャップの開いたバルクを
  横切らずに交信できないので、いかなる局所摂動もそれらを分裂させられない。

さて、居心地の悪い実験である。鎖を完全に自明相(mu = 3w > 2w)に置きつつ、
実際の静電ゲートがそうするように、最初の数サイトで mu を0から滑らかに
立ち上げる。
  ramp length       E_0/w  left weight  right weight      looks like
            0  1.0159e+00       0.1101        0.1101          gapped
            4  3.0731e-01       0.9994        0.0000          gapped
            8  2.6703e-02       0.9961        0.0000          gapped
           12  2.0923e-03       0.9536        0.0000     a zero mode
           20  1.1587e-05       0.5785        0.0000     a zero mode

両者を分ける非局所性の検査。ゼロモード候補ごとに、細線の両端での重みを
比較する:
  topological, mu = 1.0 w: E = -1.363e-12, left 0.5002, right 0.4998, ratio 0.9993
  trivial + 20-site ramp : E = -1.159e-05, left 0.5785, right 0.0000, ratio 0.0000

細線の片端でのトンネル実験は局所状態密度を測り、どちらの場合もゼロバイアス
ピークを見る。両者を区別するのは*非局所*測定だけであり、それがまさに
難しい実験である。「ゼロバイアスピークを見た」と「Majorana量子ビットを
得た」の間に、プレスリリースではなく10年の仕事が横たわる理由がこれである。

着目点。 この出力の前半は本章で最も強い定量的論拠です。後半は、この方式がこれ以上進んでいない理由です。

ゼロモードは存在し、非局所である。 $\mu = w$、$L = 40$ で分裂は $w$ 単位で $1.4\times10^{-12}$、バルクギャップは $1.01\,w$ — パラメータ3つのハミルトニアンから、誤り訂正なしで12桁の隔たりです。(このギャップは閉じた形と照合する価値があります。バルクの分散は $E(k) = \sqrt{(2w\cos k + \mu)^2 + 4\Delta^2\sin^2 k}$ で、$\mu = w = \Delta$ での最小値はちょうど $1.0\,w$、$\mu = 0$ では $2\Delta = 2.0\,w$ — これが表の第1行です。ここでは規約が効くのでコードが明示しています。BdG行列は $H = \tfrac12\Psi^\dagger H_\mathrm{BdG}\Psi$ で定義され、その正の固有値が1準粒子エネルギーです。この規約のもとでBdGスペクトルと多体スペクトルのあいだに残る2倍の因子はありません。短い鎖の厳密対角化も $\mu = 0$ で最低励起を $2.0\,w$ に置きます。以前の版のコードは行列に余分な $\tfrac12$ を掛けており、表のすべてのエネルギーを半分にしていました。)波動関数の重みは最初のサイトに0.375、最後のサイトに0.375、鎖の中央半分に $10^{-6}$。これが符号化です。情報は対の中にあり、細線の中央はそれを知りません。

保護は指数的で、指数は測定できる。 $\Delta = 0.1w$ では分裂が10サイトごとに0.3666倍になり、当てはめた減衰長は9.88サイト、解析値 $2/\ln[(w+\Delta)/(w-\Delta)] = 9.97$ に対する値です。波動関数自身の包絡線比は $[(w-\Delta)/(w+\Delta)]^2 = 0.66942$ と5桁で一致します。独立な2つの量 — スペクトル分裂と空間分布 — が1つの閉じた形と一致します。

保護が失われる場所にも注目。 トポロジカル相のすぐ内側 $\mu = 1.9w$ では、$L = 40$ での分裂はすでに $2.7\times10^{-2}$ です。コヒーレンス長が相境界で発散するので、名目上トポロジカルだが転移に近い細線には有用な保護がまったくありません。保護は $L/\xi$ について指数的であり、$\xi$ は制御しなければならないバルクの性質です。

そして居心地の悪い後半。 鎖を完全に自明相 $\mu = 3w > 2w$ に置き($\mu = 2w$ ちょうどはバルクギャップが閉じる臨界点であって自明なギャップ状態ではなく、表もそう表示します)、実際の静電ゲートが必ずそうするように、最初の20サイトで $\mu$ をゼロから滑らかに立ち上げます。結果は $E = 1.2\times10^{-5}$ の状態 — どんな局所測定でもゼロモード — が完全に片端に局在し、反対端の重みはゼロです。その端でのトンネル実験は局所状態密度を測り、ゼロバイアスピークを見ます。同じに見えるのです。 これらは滑らかな閉じ込めポテンシャルが一般に生む「準Majorana」あるいは自明なAndreev束縛状態であり、トポロジカル保護をまったく持ちません。エネルギーは任意のパラメータとともに連続に動き、両方の相棒が同じ局所摂動の手の届く範囲に座っています。

両者を分ける検査は非局所性であり、それが難しい実験です。 印字された比較は決定的です。トポロジカルモードの左右の重みは $0.5002/0.4998$、比 $0.9993$。そっくりさんは $0.5785/0.0000$、比 $0.0000$。片端での測定では区別できず、両端を相関させる測定なら区別できます。この方式の正直な現状が「原理は美しく確立されている — 上のコードが50行で確立している — 一方で実証は、あらゆる局所シグネチャを再現する平凡な代替案の一群を排除することを要する」である理由がこれです。これは着想を否定する理由ではありません。非局所測定という基準でそれを判定し、あらゆる主張をその光の下で読む理由です。

何が真でなければならないか

隔たりを具体的に述べると、動作するトポロジカル量子ビットは同時に次のすべてを必要とします。強いスピン軌道結合をもつ半導体中の硬い誘起超伝導ギャップ、誘起ギャップにサブギャップ状態が現れないほど清浄なエピタキシャルな半導体-超伝導体界面、トポロジカルギャップを閉じる尺度を下回る乱れ、そして分裂が無視できるほど $\xi$ に比べて長い細線。そのどれもが材料成長の仕様であり、しかも互いに衝突します。(硬いギャップのために)界面をより透明にすることは、超伝導体由来の乱れに細線をより弱くもします。この分野の進展が量子ビット数ではなく分子線エピタキシーの改善で測られる理由がこれであり、本コースを読む材料研究者がこの方式は完全に材料問題だと気づくべき理由です。

準粒子ポイズニングと、$e^{-L/\xi}$ が誤り率ではない理由

そのリストにはもう1項目あり、トポロジカル保護が定理として語られるときに最も落ちやすいのがそれです。保護されている量はフェルミオンパリティです。したがって誤りとはパリティを変えるもの全部であり — デバイスのどこかから来た1個の不対電子がまさにそれを、1回のホップで、$L/\xi$ とは何の関係もなく起こします。これが準粒子ポイズニングであり、指数関数への小さな補正ではありません。それと並んで座っている、別の、はるかに大きな誤りチャネルです。

その原因となる集団は、すでに数えたものです。第2章はアルミニウム膜中の非平衡準粒子割合を $x_{qp} \sim 10^{-8}$ から $10^{-6}$ と測りました。1000 $\mu$m$^3$ の膜の中で不対電子が数百個、$2\Delta/h$ を超える迷い赤外光子、宇宙線、フォノンバーストが生み、温度が生むのではないものです。Majorana細線はまさにその種の膜で近接効果を受けています。したがって関係する素子の性能指標はパリティ寿命 $\tau_p$、それら準粒子の1つが細線に着くまでの平均時間であり、超伝導素子でのその測定値はほぼ完全にシールドとフィルタリングだけで決まる形でマイクロ秒からミリ秒の範囲に落ちます — 2.6節が述べたのと同じ工学であり、同じ理由によります。

これをゲート時間と並べると算術は厳しくなりますが、比較は同じ単位で行う必要があります。つまり無次元のエネルギーを誤り率と比べるのではなく、分裂を時間に直さねばなりません。ブレイディングはバルクギャップに対して断熱的でなければなりません。誘起ギャップ $100\ \mu$eV では $\hbar/\Delta = 6.6$ ps なので、1ナノ秒のブレイドは余裕をもって断熱的で、ブレイド自体は律速ではありません。コードの $L = 40$ の細線の分裂 $\varepsilon_0 \approx 10^{-12}\Delta = 1.4\times10^{-16}$ eV が $\pi$ の位相を蓄えるのに要する時間は $h/2\varepsilon_0 = 15$ s なので、指数的な保護だけならナノ秒のブレイドを約 $1.5\times10^{10}$ 回許します。一方パリティ寿命が許すのは $\tau_p/t_\mathrm{braid} \sim 10^{-3}\ \mathrm{s}/10^{-9}\ \mathrm{s} = 10^6$ 回で、これは立派な数字で5.4節のスコアカードの最良の行と同程度ですが、分裂が許す回数よりおよそ4桁少ないのです。指数的な保護は本物であり、そして限界ではありません。帰結が2つ従い、どちらもはっきり述べる価値があります。


5.4 スコアカード

いま6方式と、第1章の6つの軸 — コヒーレンス、ゲート忠実度と速度、接続性、再現性と歩留まり、動作温度、制御のスケーラビリティ — が揃いました。以下の格子は6行ではなく8行です。セルを実際に埋めようとすると軸の2つが分かれるからです。スケーラビリティは量子ビットあたりの制御配線と誤り訂正のオーバーヘッドに分かれ(両者は別のものに律速されます)、さらに本コース独自の1行、材料上の限界を加えます。ゲート忠実度は格子の行ではまったくありません。PART A が材料パラメータから導いたコヒーレント演算回数として定量的に扱います。本節の目的はそのすべてを1枚の表に載せることであり、しかも来年には古びない形でそうすることです。

その制約は明白な方法を排除します。量子ビット数と忠実度レコードの表は動く標的のスナップショットであり、しかも道具として間違っています。レコードは1つの研究室の1つの装置についての言明であり、方向を選ぶ研究者が必要としているのは各アプローチを律速するものについての言明です。そこで以下のスコアカードにはレコードが1つも含まれません。すべての数値は本コースで確立した式から導かれ、その行が名指しする材料パラメータで評価され、桁のオーダーとして報告されます。

Code Example 6: スコアカード

"""スコアカード:各方式を律速する物理によって方式を比較する。

ここに性能レコードは1つも現れません。すべての数値は本コースの式から導かれ、
その行が名指しする材料パラメータで評価したものであり、桁のオーダーとして
のみ報告します。
"""
import numpy as np

print("=" * 78)
print("PART A - 材料パラメータから導いたコヒーレント演算回数")
print("=" * 78)

# --- 超伝導:誘電損失が Q を、非調和性がゲート時間を決める ---------------
print()
print("超伝導トランズモン: N = T2 / t_gate。ただし 1/Q = p * tan(delta)、")
print("T2 = Q/omega、t_gate = k / alpha(k ~ 10 は非調和性1周期分の目安)。")
f_q, alpha, k = 5e9, 200e6, 10.0
print(f"  f_q = {f_q / 1e9:.0f} GHz, alpha/2pi = {alpha / 1e6:.0f} MHz, "
      f"t_gate = {k / alpha * 1e9:.0f} ns")
print(f"  {'participation p':>17}{'tan(delta)':>12}{'Q':>10}{'T2 (us)':>10}{'N_ops':>10}")
for p in [1e-2, 3e-3, 1e-3, 3e-4]:
    for tand in [1e-3]:
        Q = 1.0 / (p * tand)
        T2 = Q / (2 * np.pi * f_q)
        print(f"  {p:>17.1e}{tand:>12.1e}{Q:>10.2e}{T2 * 1e6:>10.2f}"
              f"{T2 / (k / alpha):>10.0f}")
print("  この列の全体は、アモルファス酸化膜の誘電損失角に幾何的な参加率を掛けた")
print("  ものである。これは工学の数値ではなく材料の数値である。")

# --- イオントラップ:異常加熱とサイドバンドの速度限界 --------------------
print()
print("イオントラップ: N_heat = 1/(nbar_dot * t_gate)。共有モードが運動量子1個を")
print("吸収するまでのゲート数である。ゲートはトラップ振動数より速くできないので")
print("t_gate >= 2pi/omega_trap であり、加熱は表面効果である。")
print(f"  {'omega_trap/2pi (MHz)':>22}{'t_gate (us)':>13}"
      + "".join(f"{'ndot=' + str(n):>12}" for n in [1, 10, 100]))
for f_trap in [0.5, 1.0, 3.0]:
    t_gate = 1.0 / (f_trap * 1e6)
    row = "".join(f"{1.0 / (n * t_gate):>12.0f}" for n in [1, 10, 100])
    print(f"  {f_trap:>22.1f}{t_gate * 1e6:>13.2f}" + row)
print("  ndot はトラップ電極表面からの異常加熱の毎秒量子数である — これもまた")
print("  材料の数値であり、いまだ誰も完全には説明できていないものである。")
print("  これらは加熱のみからの上限である。実際にはレーザーの位相ノイズと傍観者")
print("  運動モードが先に律速するので、達成される値はこれより低い。")

# --- 中性原子:第4章のRydberg誤り床 --------------------------------------
print()
print("中性原子: N = 1 / 誤り床。誤り床 ~ (gamma/V)^(2/3) は第4章 Example 5 に")
print("よるもので、Rb の |70S> と |100S> で評価する。")
for label, err in [("n = 70, R = 4 um", 1.348e-3), ("n = 70, R = 6 um", 6.718e-3),
                   ("n = 100, R = 8 um", 7.255e-4)]:
    print(f"  {label:<20} error {err:.3e} -> N_ops ~ {1 / err:>7.0f}")
print("  上限を決めるのはRydberg寿命、すなわち原子物理である。製造上の改善は")
print("  それを変えない。つまみは n と原子間隔である。")

# --- シリコンスピン:スイートスポットとその外での電荷ノイズ --------------
print()
print("シリコンスピン: N は本章 Example 3 による — 離調オフセット下での交換")
print("ゲートの位相誤差を、対称スイートスポットとその外で評価したもの。")
for label, N in [("sweet spot, 1 ueV", 2.9e6), ("eps = 0.2U, 1 ueV", 2.3e3),
                 ("eps = 0.2U, 10 ueV", 2.3e2)]:
    print(f"  {label:<22} N_ops ~ {N:>9.1e}")
print("  スイートスポットの値は楽観的である。静的なオフセットを仮定しているからだ。")
print("  酸化膜の2準位欠陥に由来する実際の1/f電荷ノイズは、1ゲートの間に多数の")
print("  オフセットを走査する。")

# --- 光子:素子あたりの損失 ----------------------------------------------
print()
print("光子: 素子あたり N ~ 1/(1-eta)、干渉あたり 1/(1-V)。")
print(f"  {'eta':>8}{'1/(1-eta)':>12}   {'visibility V':>14}{'1/(1-V)':>10}")
for eta, V in [(0.9, 0.90), (0.99, 0.99), (0.999, 0.999)]:
    print(f"  {eta:>8.3f}{1 / (1 - eta):>12.0f}   {V:>14.3f}{1 / (1 - V):>10.0f}")
print("  損失は導波路、検出器、そしてすべての界面に住んでいる。可視度は2つの")
print("  エミッタがどれだけ同一かに住んでいる。どちらも材料の問題である。")

print()
print("=" * 78)
print("PART B - スコアカード:各軸で各方式を律速するもの")
print("=" * 78)

MODS = ["SC", "ION", "ATOM", "PHOT", "SPIN", "TOPO"]
NAMES = {"SC": "superconducting", "ION": "trapped ion", "ATOM": "neutral atom",
         "PHOT": "photonic", "SPIN": "silicon spin", "TOPO": "topological"}

# 各セルはその軸における*物理的*な限界を名指しする。性能数値ではない。
GRID = {
    "gate speed":       ["10-100ns", "10-100us", "0.1-1us", "ps + herald",
                         "1-100ns", "ns-us adiab"],
    "coherence limit":  ["diel. loss", "heat/B-field", "Rydberg tau",
                         "loss only", "charge noise", "gap, L/xi"],
    "connectivity":     ["planar NN", "all-to-all", "programmable",
                         "routed,lossy", "planar NN", "braiding"],
    "temperature":      ["10 mK", "300 K", "300 K", "mixed", "0.1-1 K", "10 mK"],
    "qubit spread":     ["fabricated", "identical", "identical",
                         "emitter var.", "fabricated", "interface"],
    "wiring/qubit":     ["1+ coax", "optics/zone", "global laser",
                         "src+detector", "3+ gates", "many gates"],
    "error correction": ["surface code", "surface code", "surface code",
                         "loss-toler.", "surface code", "L/xi + magic"],
    "materials limit":  ["oxide TLS", "electrode", "none in qubit",
                         "photon src", "oxide+valley", "SC-SM iface"],
}

w = 14
print(f"{'axis':>16}" + "".join(f"{m:>{w}}" for m in MODS))
print("-" * (16 + w * len(MODS)))
for axis, row in GRID.items():
    print(f"{axis:>16}" + "".join(f"{c:>{w}}" for c in row))
print()
for k, v in NAMES.items():
    print(f"  {k:<6}= {v}")

print()
print("この格子を誠実に読むと、同時に2つのことを述べている。")
print("  (1) ATOM は8行のうち4行で単独または同順の首位である(温度、量子ビットの")
print("      ばらつき、量子ビットあたりの配線、材料上の限界)。すなわち今日の")
print("      運用面の軸では最も制約が少ない列である。")
print("  (2) 一方、耐障害機の費用を支配する行では、どの列も首位でない。6方式の")
print("      うち4つが同じ表面符号のオーバーヘッドを継ぎ、それを免れる2つ")
print("      (光の損失耐性符号、トポロジカルな保護+マジック状態)は、別の")
print("      未解決の費用と取り替えているだけである。")
print("したがって全部の行が6方式を異なる順に並べるわけではない。3行に同順があり、")
print("誤り訂正の行はほぼ一様である。結果は「勝者はいない」より鋭い。運用面の軸で")
print("先行しても、耐障害の請求書はまだ安くならず、各列の残る請求書はそれぞれ")
print("異なる材料問題である。")
==============================================================================
PART A - 材料パラメータから導いたコヒーレント演算回数
==============================================================================

超伝導トランズモン: N = T2 / t_gate。ただし 1/Q = p * tan(delta)、
T2 = Q/omega、t_gate = k / alpha(k ~ 10 は非調和性1周期分の目安)。
  f_q = 5 GHz, alpha/2pi = 200 MHz, t_gate = 50 ns
    participation p  tan(delta)         Q   T2 (us)     N_ops
            1.0e-02     1.0e-03  1.00e+05      3.18        64
            3.0e-03     1.0e-03  3.33e+05     10.61       212
            1.0e-03     1.0e-03  1.00e+06     31.83       637
            3.0e-04     1.0e-03  3.33e+06    106.10      2122
  この列の全体は、アモルファス酸化膜の誘電損失角に幾何的な参加率を掛けた
  ものである。これは工学の数値ではなく材料の数値である。

イオントラップ: N_heat = 1/(nbar_dot * t_gate)。共有モードが運動量子1個を
吸収するまでのゲート数である。ゲートはトラップ振動数より速くできないので
t_gate >= 2pi/omega_trap であり、加熱は表面効果である。
    omega_trap/2pi (MHz)  t_gate (us)      ndot=1     ndot=10    ndot=100
                     0.5         2.00      500000       50000        5000
                     1.0         1.00     1000000      100000       10000
                     3.0         0.33     3000000      300000       30000
  ndot はトラップ電極表面からの異常加熱の毎秒量子数である — これもまた
  材料の数値であり、いまだ誰も完全には説明できていないものである。
  これらは加熱のみからの上限である。実際にはレーザーの位相ノイズと傍観者
  運動モードが先に律速するので、達成される値はこれより低い。

中性原子: N = 1 / 誤り床。誤り床 ~ (gamma/V)^(2/3) は第4章 Example 5 に
よるもので、Rb の |70S> と |100S> で評価する。
  n = 70, R = 4 um     error 1.348e-03 -> N_ops ~     742
  n = 70, R = 6 um     error 6.718e-03 -> N_ops ~     149
  n = 100, R = 8 um    error 7.255e-04 -> N_ops ~    1378
  上限を決めるのはRydberg寿命、すなわち原子物理である。製造上の改善は
  それを変えない。つまみは n と原子間隔である。

シリコンスピン: N は本章 Example 3 による — 離調オフセット下での交換
ゲートの位相誤差を、対称スイートスポットとその外で評価したもの。
  sweet spot, 1 ueV      N_ops ~   2.9e+06
  eps = 0.2U, 1 ueV      N_ops ~   2.3e+03
  eps = 0.2U, 10 ueV     N_ops ~   2.3e+02
  スイートスポットの値は楽観的である。静的なオフセットを仮定しているからだ。
  酸化膜の2準位欠陥に由来する実際の1/f電荷ノイズは、1ゲートの間に多数の
  オフセットを走査する。

光子: 素子あたり N ~ 1/(1-eta)、干渉あたり 1/(1-V)。
       eta   1/(1-eta)     visibility V   1/(1-V)
     0.900          10            0.900        10
     0.990         100            0.990       100
     0.999        1000            0.999      1000
  損失は導波路、検出器、そしてすべての界面に住んでいる。可視度は2つの
  エミッタがどれだけ同一かに住んでいる。どちらも材料の問題である。

==============================================================================
PART B - スコアカード:各軸で各方式を律速するもの
==============================================================================
            axis            SC           ION          ATOM          PHOT          SPIN          TOPO
----------------------------------------------------------------------------------------------------
      gate speed      10-100ns      10-100us       0.1-1us   ps + herald       1-100ns   ns-us adiab
 coherence limit    diel. loss  heat/B-field   Rydberg tau     loss only  charge noise     gap, L/xi
    connectivity     planar NN    all-to-all  programmable  routed,lossy     planar NN      braiding
     temperature         10 mK         300 K         300 K         mixed       0.1-1 K         10 mK
    qubit spread    fabricated     identical     identical  emitter var.    fabricated     interface
    wiring/qubit       1+ coax   optics/zone  global laser  src+detector      3+ gates    many gates
error correction  surface code  surface code  surface code   loss-toler.  surface code  L/xi + magic
 materials limit     oxide TLS     electrode none in qubit    photon src  oxide+valley   SC-SM iface

  SC    = superconducting
  ION   = trapped ion
  ATOM  = neutral atom
  PHOT  = photonic
  SPIN  = silicon spin
  TOPO  = topological

この格子を誠実に読むと、同時に2つのことを述べている。
  (1) ATOM は8行のうち4行で単独または同順の首位である(温度、量子ビットの
      ばらつき、量子ビットあたりの配線、材料上の限界)。すなわち今日の
      運用面の軸では最も制約が少ない列である。
  (2) 一方、耐障害機の費用を支配する行では、どの列も首位でない。6方式の
      うち4つが同じ表面符号のオーバーヘッドを継ぎ、それを免れる2つ
      (光の損失耐性符号、トポロジカルな保護+マジック状態)は、別の
      未解決の費用と取り替えているだけである。
したがって全部の行が6方式を異なる順に並べるわけではない。3行に同順があり、
誤り訂正の行はほぼ一様である。結果は「勝者はいない」より鋭い。運用面の軸で
先行しても、耐障害の請求書はまだ安くならず、各列の残る請求書はそれぞれ
異なる材料問題である。

着目点。 PART A を行ごとに読んでください。要点は数値ではなく、それがどこから来ているかです。

超伝導:コヒーレント演算回数は誘電損失角である。 $N = T_2/t_{\text{gate}}$、$T_2 = Q/\omega$、$1/Q = p\tan\delta$ から、参加率 $10^{-2}$ で64回、$3\times10^{-4}$ で2122回です。この式に工学的な量は1つもありません。$\tan\delta$ はアモルファス酸化膜の性質であり、$p$ は幾何的な参加率です。第2章の中心的主張 — 超伝導量子ビットのコヒーレンスは誘電損失の問題である — とはこの算術のことです。

イオントラップ:上限は表面の性質である。 $N_{\text{heat}} = 1/(\dot{\bar{n}}\,t_{\text{gate}})$、ゲートはトラップ振動数より速くできない、として共有モードが1量子を吸収するまで $10^4$ から $10^6$ 回です。コードが述べるとおりこれは加熱のみからの上限で — レーザーの位相ノイズと傍観者モードが先に律速します — しかし構造的な要点は成り立ちます。分母にある量は電極表面からの異常加熱であり、それは誰も完全には説明できていない材料現象です。

中性原子:上限は放射寿命である。 第4章自身の最適化から、$1/\varepsilon$ は $n=70$、$R = 4$ µmで742、$n = 100$、$R = 8$ µmで1378です。製造工程は現れず、製造上の改善も助けになりません。

シリコンスピン:上限はスイートスポットである。 対称点で $2.9\times10^6$、その外で $2.3\times10^2$ — どの行より広い幅であり、実験者の制御下にある度合いも最大です。同時に、コードが述べる理由で PART A の中で最も楽観的な数値でもあります。

光子:上限は透過率である。 素子あたり $1/(1-\eta)$、干渉あたり $1/(1-V)$ で、どちらも界面とエミッタの性質です。

そして PART B はセルごとではなく全体として、しかもスローガンより注意深く読んでください。どの行も6方式を異なる順に並べる、というのは正しくありません。3つの行にはまったくの同順があり(イオンと原子はどちらも300 Kで、どちらも完全に均一です)、誤り訂正の行はほぼ定数で、6方式のうち4つが同じ表面符号のオーバーヘッドを継ぎます。この格子が実際に示しているのは、同時に2つのことです。

第1に、中性原子は8行のうち4行で単独または同順の首位です — 動作温度、量子ビットの均一性、量子ビットあたりの配線、材料上の限界 — つまり今日素子を運用することを述べる軸では、この列が最も制約が少ないということです。超伝導回路はゲート速度で先行し、温度と均一性で負けます。イオンは均一性で原子と同順、接続性で先行し、速度と配線で負けます。光子は待機コヒーレンスで先行し、決定性と損失で負けます。スピンは製造可能性で先行し、電荷ノイズで負けます。トポロジカル量子ビットは、材料が存在すればコヒーレンスの列で先行するでしょう。

第2に、耐障害機の費用を支配する行では、どの列も先行していません。 誤り訂正のオーバーヘッドは4方式で同じ表面符号の請求書であり、それを免れる2つも安く免れてはいません。光は、しきい値が部品あたりの透過率で表される損失耐性符号に置き換え、トポロジーは、万能性のためになおマジック状態を要する指数的なメモリ保護に置き換えます(5.3節がはっきりそう述べました)。したがって運用面での先行は耐障害の請求書の安さには変換されず、各列に残る請求書はそれぞれ異なる材料問題です。

勝者の列はなく、これは言い逃れではなく結果です。単一の性能指標には軸の重みづけが必要で、正しい重みづけは応用に依存します。フラストレート磁性のアナログ量子シミュレーションはプログラム可能な接続性を欲しがりデューティ比を許容しますが、誤り耐性の化学計算は何よりも深さを欲しがり、そのためにいくらでもハードウェアを払います。正直な要約はこうです。この分野には6つのアプローチがあり、そのどれもが物理をクリアしており、そしてそれぞれが異なる材料問題を待っている。


5.5 材料研究者への示唆

本コースには1つの論点があり、それを6回述べてきました。ここでそれを平明に述べます。

どの方式も材料問題に律速されており、しかもそれらは異なる問題である。 曖昧な意味での「工学の問題」でも「スケーリングの問題」でもなく、具体的で同定可能な欠陥・界面・不純物です。

方式 ボトルネック どの種類の問題か
超伝導 表面酸化膜と金属-基板界面の2準位欠陥、参加率 アモルファス材料物理、表面化学、成膜
イオントラップ 電極表面からの異常加熱、$d^{-4}$ でスケールし未解明 パッチ電位と吸着物の表面科学
中性原子 量子ビットには無い — 限界は放射寿命 量子ビットにはつまみが無い。材料の仕事は真空表面と光学系にある
光量子 決定論的で識別不能な単一光子源、素子あたりの損失 エピタキシャル量子ドット、低損失光集積、検出器
シリコンスピン ゲート酸化膜の $1/f$ 電荷ノイズ、Si/SiGe界面の谷分裂、残留 $^{29}$Si 酸化膜欠陥物理、ヘテロ構造成長、同位体分離
トポロジカル サブギャップ状態のない硬い誘起ギャップ、乱れ、エピタキシャル半導体-超伝導体界面 方式全体が材料問題

この表は2度読んでください。1度目の読みは「この分野は行き詰まっている」と言います。有用なのは2度目です。これは、解決すれば量子ハードウェアを動かす材料科学の未解決問題の一覧であり、その大半は量子情報科学者によって取り組まれていません。 誘電損失、表面吸着物、エピタキシー、同位体化学の問題だからです。

ここから3つの具体的な観察が続きます。

第1に、同じ欠陥が2度現れる。 アモルファス酸化膜中の2準位ゆらぎ体は、誘電損失を通じて超伝導量子ビットを(第2章)、電荷ノイズを通じてシリコンスピン量子ビットを(5.2節)律速します。この2つは産業投資が最も大きい2方式であり、同じ種類の対象 — 無秩序な酸化膜中の双安定な原子配置 — に律速されています。成膜レシピから $\tan\delta$ を予測できるような、その対象の材料レベルの理解は、両方への同時の貢献になります。それはまた、量子計算より数十年古いアモルファス固体の物理の難問でもあります。

第2に、中性原子の行は規則を証明する例外である。 第4章は、量子ビットから製造を取り除いても限界は消えず、原子の中へ移されて放射寿命になり、そこではどんなプロセスも変えられないことを示しました。これは腰を落ち着けて考える価値があります。他の5行の材料問題は未熟さの兆候ではなく、調整可能性の代価だと言っているからです。作り込んだ量子ビットは設計できます。天然の量子ビットはできません。設計の自由を提供するすべての方式は、その代価を材料で払います。

第3に、測定と制御の問題も材料問題である。 超伝導プロセッサの配線ボトルネックは、配線と実装における熱とマイクロ波材料の問題です。中性原子のデューティ比のボトルネックは真空表面の問題です。光の損失は界面の問題です。どれも量子ビットではなく、そしてどれもクリティカルパス上にあります。

これをどう使うか

材料を研究していてここに貢献したいなら、有用な問いは華やかさに欠け、具体的です。酸化アルミニウム中の2準位ゆらぎ体の微視的構造は何であり、それは成膜プロセスにどう依存するのか。金表面上の異常加熱を生む吸着物あるいはパッチ電位の機構は何であり、なぜそのようにスケールするのか。Si/SiGe界面の谷分裂を原子スケールで決めているのは何であり、それは測定ではなく設計できるのか。乱れを持ち込まずに硬いギャップを誘起する半導体-超伝導体界面をどう成長させるか。固体エミッタを同じチップ上の別のエミッタとスペクトル的に同一にできるか。

これらのどれ1つも、答えるに値するために量子コンピュータが作られる必要はなく、そしてもし作られるならそのすべてがクリティカルパス上にあります。この非対称性 — 装置が来るかどうかに関わらず仕事に価値がある — が、材料研究者がこの分野にいる最も擁護できる理由です。

そして対応するリテラシー。次に量子ハードウェアの主張に出会ったら、それが第1章のどの軸を動かし、どの材料的限界に取り組んでいるかを問うてください。2番目の問いの答えが「どれでもない」なら、見ているのは一歩ではなく実演です。どちらも存在し、どちらも公表され、両者を見分けることが本コースの目的でした。


演習

本章のコードを手元に置いて取り組んでください。各問のあとに解答があります。

演習1: HOMディップを読む

別々の量子ドットからの2光子を用いて、可視度 $V = 0.94$ のHOM同時計数ディップが報告されたとします。(a) これはモード重なり $|\gamma|$ いくらに対応しますか。(b) 唯一の不完全さが2光子間のタイミングジッタだとすると、波束の時間幅 $\sigma$ を単位としてどれだけのジッタがこれを説明しますか。(c) このグループはのちに狭帯域スペクトルフィルタを加えて $V = 0.99$ を報告します。機構を説明し、必然的に失われたものを述べてください。(d) $10^6$ 回の成功したエンタングリング操作を要する融合型アーキテクチャでは、どれだけの可視度が必要で、それはフィルタリングについて何を意味しますか。

解答

(a) \(V = 1 - 2P_{cc}\) かつ \(P_{cc} = (1-|\gamma|^2)/2\) なので \(V = |\gamma|^2\)、したがって \(|\gamma| = \sqrt{0.94} = 0.9695\)。

(b) Gauss波束では \(|\gamma| = \exp[-\tau^2/(8\sigma^2)]\) なので \(\tau = \sigma\sqrt{-8\ln 0.9695} = \sigma\sqrt{0.2478} = 0.498\,\sigma\)。Code Example 1 の表がそれを裏づけます。遅延 \(0.5\,\sigma\) で \(|\gamma| = 0.96923\)、\(V = 0.9394\) です。

(c) 局所環境が異なる2つのエミッタは中心周波数と線幅が異なります。狭帯域フィルタは2つのスペクトルの共通部分だけを通すので、透過した光子はより同一に近くなり \(|\gamma|\) が上がります。必然的に失われたのは光子です。フィルタは重なっていないスペクトル重みを捨てるので、光源の輝度が落ちます。フィルタリングは \(\eta\) と \(V\) を交換し、Code Example 2 は経路上で \(\eta\) が \(\eta^N\) として入ることを示したので、この交換が有利かは自明でなく、個々のアーキテクチャについて評価しなければなりません。

(d) \(10^6\) 回の操作がそれぞれ確率 \(1-V\) で失敗するとき、全誤差が1程度になるには \(1 - V \lesssim 10^{-6}\)、すなわち \(V \gtrsim 0.999999\) が必要です。損失耐性符号があれば要求は符号の閾値まで緩みますが、それでも \(0.99\) より遥かに厳しいままです。フィルタリングだけでは到達できません。必要な透過率が禁止的になるからです。エミッタが実際に同一でなければなりません。「識別不能性」が光学ではなく成長と歪み工学の目標として述べられる理由がこれです。

演習2: 交換ゲートを設計する

$U = 3000$ µeVの Code Example 3 を用いて、(a) 離調ゼロで交換ゲート時間10 nsを与えるトンネル結合はいくらですか。(b) デバイスの離調ノイズが1 µeV rmsだとします。$\varepsilon = 0$ と $\varepsilon = 0.5U$ で使えるゲート数を見積もり、その比について述べてください。(c) ノイズに勝てるまでゲートを速くするために単に $t$ を上げてはいけないのはなぜですか。独立な理由を2つ挙げてください。(d) 第2章の超伝導トランズモンとこのデバイスはどちらも1次微分が消える点で動作させられます。一般原理と、両者の相違点1つを述べてください。

解答

(a) ゲート時間 \(h/2J = 10\) ns は \(J/h = 50\) MHz、すなわち \(J = 50/242 = 0.207\) µeV を意味します。\(J \simeq 4t^2/U\) から \(t = \sqrt{JU}/2 = \sqrt{0.207\times3000}/2 = 12.5\) µeV。Code Example 3 の表の \(t = 10\)(15.5 ns)と \(t = 20\)(3.9 ns)の間の内挿と整合します。

(b) Code Example 3 は \(\varepsilon = 0\) で \(2.9\times10^{6}\) ゲート、\(\varepsilon = 0.5U\) で734ゲートを与え、比は約4000です。スイートスポットは3桁半の価値があり、それはノイズ自体のいかなる現実的な改善よりも大きいです。正しくバイアスすることは、\(1/f\) ノイズを数倍下げることより良い投資です。

(c) 第1に、\(J\) は他の項が定める一重項-三重項の尺度より十分小さく保たれなければなりません。とくに \(J\) がZeeman分裂や谷分裂に近づくと2準位記述が破れ、他の状態への漏れが現れます。第2に、\(J \simeq 4t^2/U\) は \(t \ll U\) で成り立つ摂動論の結果です。Code Example 3 の \(t = 200\) の行はすでに摂動値53.3に対し \(J = 52.4\) を示しており、より大きな \(t\) では一重項が実際の二重占有を帯びます。それはまさに一重項をノイズに敏感にした電荷的性格を再導入します。速いゲートはより電荷的なゲートなのです。

(d) 原理は、\(\partial(\text{量子ビット周波数})/\partial(\text{ノイズパラメータ}) = 0\) となる点で動作させ、ノイズが2次でしか入らないようにすることです。トランズモンは電荷についてそれを行い(\(E_J/E_C\) を十分大きくして電荷分散を指数的に平坦にする)、二重ドットは離調についてそれを行います(2つの仮想電荷状態の間の対称性による)。相違点は、トランズモンの非感受性が調整で外せない固定された設計上の選択である一方、スピン量子ビットのスイートスポットは見つけてドリフトに対して維持しなければならないバイアス点であり、しかもそれを設定するゲート電圧そのものがノイズの作用する対象だということです。

演習3: 精製は価値があるか

Code Example 4 のモデルを用いて、(a) 800 ppmから50 ppmへの改善が $T_2^\ast$ をちょうど4倍にすることを示し、一般規則を述べてください。(b) 競合機構が独立に $T_2^\ast$ を800 ppmシリコンの値の2倍に制限しているとします。50 ppmへの精製が与える総改善はいくらですか。(c) 同僚が代わりにドットを小さくして $N_{\text{sites}}$ を減らすことを提案します。それは $\sigma_{\text{Overhauser}}$ に何をし、5.2節の末尾で挙げた他の2つの制約に何をしますか。(d) デコヒーレンスチャネルに労力を割くことについての一般的教訓を述べてください。

解答

(a) \(T_2^\ast \propto f^{-1/2}\) かつ \(800/50 = 16\) なので改善は \(\sqrt{16} = 4\) 倍です。規則:核スピンが非コヒーレントに加算されるため、同位体純度を100倍にするごとにコヒーレンスは10倍しか買えません。同位体分離ほど高価なプロセスに対しては厳しい交換レートです。

(b) 800 ppmの値を \(T_{800}\)、競合機構が \(2T_{800}\) を与えるとします。800 ppmでの総和は \(1/(1/T_{800} + 1/2T_{800}) = 0.667\,T_{800}\)。50 ppmでは核の寄与が \(4T_{800}\) なので総和は \(1/(1/4T_{800} + 1/2T_{800}) = 1.333\,T_{800}\)。改善は4倍ではなく \(2.0\) 倍で、利益の半分が食われています。これが Code Example 4 の最後の表が示す交差です。

(c) \(\sigma \propto \sqrt{f N_{\rm sites}}\) なので、ドット体積を半分にすると \(T_2^\ast\) は \(\sqrt{2}\) 倍 — 同じ弱い平方根です。一方でドットを小さくすると軌道分裂と谷分裂が上がり、これは他の2つの制約の両方に良いことであり、充電エネルギーも上がるので \(J\) と動作点が変わります。したがってドットの縮小は本物で多目的のてこであり、シリコンドットがリソグラフィの許す限り小さく作られる理由の1つです。ただし平方根から逃れられはしません。

(d) 投資する前に交差点を計算すること。平方根でスケールするチャネルが、そうでないチャネルと競合するなら、予測可能な点で限界であることをやめ、その先に費やす労力は何も買いません。同じ論理がアルゴリズム編のゼロノイズ外挿にも、第4章のRydberg \(n\) にも当てはまりました。どの機構が律速し、つまみのどの値でそれをやめるのかを知ることです。

演習4: Majoranaとそっくりさんを区別する

Code Example 5 を用いて、(a) $\mu = 1.9w$、$L = 40$ で分裂は $2.7\times10^{-2}\,w$ です。そこでの減衰長が8サイトなら $10^{-6}\,w$ に達するのに必要な長さを見積もり、述べてください。(b) 自明相での20サイトの滑らかな傾斜は $E_0 = 1.2\times10^{-5}\,w$ を与えました。真のトポロジカルモードと共有する実験的シグネチャを2つ、共有しないものを1つ挙げてください。(c) コードが印字する量を用いて、両者を区別する測定を設計してください。(d) $2e^2/h$ に量子化されたゼロバイアス伝導度ピークを報告してMajorana観測を主張する論文があります。排除しなければならない平凡な説明を2つ述べてください。

解答

(a) \(\varepsilon \sim e^{-L/\xi}\) なので \(L = 40 + 8\ln(2.7\times10^{-2}/10^{-6}) = 40 + 8 \times 10.2 = 122\) サイト、3倍の長さです。それが要点です。転移の近くでは \(\xi\) が伸び、必要な細線長もそれとともに伸びます。\(\xi\) は \(\mu\)、\(w\)、\(\Delta\) に依存し、そのすべてが乱れとゲートの非一様性のために実際の細線に沿って変動するので、平均としてトポロジカルな細線が場所によっては境界的でありえます。保護は \(L/\xi\) について指数的であり、\(\xi\) は直接制御下にありません。

(b) 共有するもの:(i) ギャップの尺度で本質的にゼロのエネルギー、(ii) 細線端に局在した波動関数、したがって端からのトンネルで測る局所状態密度のゼロバイアスピーク。共有しないもの:相棒です。トポロジカルモードは重みの半分を反対端にもち(0.5002 / 0.4998)、そっくりさんは 0.5785 / 0.0000 です。区別する性質はピークではなく非局所性です。

(c) 両端で測って相関をとります。具体的には、非局所伝導度を測る2端子実験、あるいは \(1e\) 周期の充電シグネチャが非局所に共有されたフェルミオンパリティを要求するCoulombブロッケード島、あるいは両端の共同パリティに感度をもつ干渉計です。コードの言葉では、観測量は比 \(\min(\text{左},\text{右})/\max(\text{左},\text{右})\) であり、トポロジカルモードで0.9993、そっくりさんで0.0000です。片端に限定された測定はこの数を出せません。

(d) (i) 滑らかな閉じ込めポテンシャルによる自明なAndreev束縛状態。まさにコードで構成したものであり、ゼロバイアス付近にピークを生み、細かく調整すれば量子化された高さに近づけます。(ii) 乱れ由来のサブギャップ状態、あるいは軟らかい誘起ギャップ。まったく別の機構からゼロバイアス特徴を生みます。関連して、量子化されていないピークを平坦に広げてプラトーらしく見せる装置的効果(有限温度、トンネル障壁の透過率、散逸)もあります。どちらに対しても決定的な応答は、非局所測定と、その特徴が連続的なパラメータ変化では消せないことの実証です。

演習5: 方向を選ぶ

薄膜成膜と界面評価に強みをもつ材料グループを率いており、量子ハードウェアに貢献したいとします。(a) 5.5節の表を用いて、あなたの専門性が最も直接にクリティカルパス上にある2方式と、それぞれの具体的問題を挙げてください。(b) そのうち1つについて、グループが報告する測定量と、それを量子ビットの性能指標に変換する本コース中の式を述べてください。(c) あなたの専門性が本質的に無関係な方式を1つ挙げ、その理由を1文で説明してください。(d) 助成の公募が「量子コンピューティングが成功しなかった場合でも」この研究を正当化せよと求めています。擁護できる回答を述べてください。

解答

(a) 超伝導量子ビット — 表面および界面の酸化膜中の2準位欠陥で、誘電損失角と参加率で定量されるもの — と、シリコンスピン量子ビットで、同じ種類の酸化膜欠陥が \(1/f\) 電荷ノイズを生み、Si/SiGe界面が谷分裂を決めるものです。どちらも成膜と界面の問題であり、どちらも産業投資が最も大きい2方式のクリティカルパス上にあります。(トポロジカル量子ビットも純粋に材料問題であり、グループの専門性がエピタキシャルな半導体-超伝導体成長に及ぶなら該当します。)

(b) 超伝導の場合:成膜した誘電体の \(\tan\delta\) と、試験形状の界面参加率 \(p\) を報告します。Code Example 6 がそれを変換します。\(Q = 1/(p\tan\delta)\)、\(T_2 = Q/\omega\)、そして \(t_{\rm gate} \approx 10/\alpha\) として \(N = T_2/t_{\rm gate}\)。\(p\tan\delta\) を3分の1にすればコヒーレント演算回数が3倍になり、その一文が材料の測定と量子情報の性能指標の間の橋です。

(c) 中性原子です。量子ビットには製造された材料が一切含まれないので、誤り床 \(\sim(\gamma/V)^{2/3}\) は成膜が触れられない放射寿命で決まります。この方式の材料仕事は量子ビットではなく真空槽と光学系にあります。(これは量子ビットについての言明であることに注意してください。光学コーティングと真空表面は本物の材料仕事です。)

(d) (a)で挙げた問題はどれも、量子コンピューティングとは独立に、無秩序固体と埋め込み界面の物理の未解決問題です。酸化アルミニウム中の2準位ゆらぎ体は微視的に何なのか。原子スケールで粗いSi/SiGe界面の谷分裂を決めているのは何か。これらの問いはこの分野より古く、誘電体の信頼性、低温エレクトロニクス、精密計測、低ノイズセンシングに関わり、量子コンピュータが1台も作られなくても答える価値があります。量子ハードウェアは見返りに価値あるものを供給します。それはまさにこれらの欠陥に対する精妙に敏感な計量プラットフォームであり、個々のゆらぎ体を検出できます。正しい枠づけは、結果への賭けではなく双方向の交換です。


まとめ

要点

1. 光子は待機中のデコヒーレンスをもたず、相互作用もできない

2. 光量子のアーキテクチャ問題はデコヒーレンスではなく非決定性である

3. スピン量子ビットはCMOS互換性を電荷ノイズと交換している

4. 同位体精製は化学で除去できるデコヒーレンスチャネルだが、$\sqrt{f}$ の硬い天井がある

5. トポロジカル保護は模型では本物であり、細線で実証するのは難しい

6. スコアカードに勝者はおらず、それが結果である

実務上の含意

次章へ

シリーズの最後に到達しました。何が良い量子ビットを作るのかという問いとデコヒーレンスの共通言語から始め、3方式を詳しく分解し — 自らの酸化膜に律速される作り込まれた回路、自らを保持する表面に律速される天然の原子、光に保持され自らの放射寿命に律速される原子 — 本章では構造的に異なる形で破綻する3方式を加えました。その道すがら、コサインポテンシャルを対角化し、Mathieuの安定図を計算し、封鎖された原子対を発展させ、交換分裂を求め、Majorana対が指数的に分裂するのを見ました。いずれも、再実行して改変できるコードとともに。

残るのはそれを使うことです。次に読むハードウェアの発表は、いまや位置づけられるものです。どの物理系か、どの軸か、どの材料的限界か、そして引用された数はレコードなのかスケーリング則なのか。このハードウェアが最終的に走らせるべきアルゴリズムと、それにかかるコストの正直な会計については量子コンピューティング入門へ、第2章の下にある超伝導については超伝導入門へ、5.2節の下にあるスピン物理についてはスピントロニクス入門へ進んでください。

そしてもし材料を研究しているなら、5.5節の一覧は悲観の理由の一覧ではありません。それは未解決問題の一覧であり、その大半は、解決してほしい人々によっては現在取り組まれていないものです。

← 第4章: 中性原子 シリーズ目次に戻る →

免責事項