第1章: なぜ化学がキラーアプリなのか

電子構造問題、指数の壁、そして化学が実際に要求する精度

📖 Reading Time: 20-25 minutes 📊 Difficulty: Beginner 💻 Code Examples: 0 📝 Exercises: 0

ビデオ講義

このビデオは以下のテキストと同じ内容をカバーしています。お好みの学習形式をお選びください。

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

量子コンピューティング道場 > 量子コンピュータによる量子化学計算 > 第1章

量子コンピュータの応用分野を並べたリストは、どれも化学を上位に置きます。そして今回ばかりは、その順位づけはマーケティングではありません。化学は、問題と機械の相性が偶然ではなく構造的に一致している応用分野なのです。古典的に保存する余裕がないもの、それが量子状態であり、量子コンピュータは量子状態を保存することを生業としています。

この議論は述べるのも容易であれば、誇張するのも容易です。本章はそれを正確なものにするという、より難しい仕事に取り組みます。量子化学が解こうとしている問題を厳密に定義し、それがどれほど速く不可能になるのかを正確に数え上げ、化学者が使えるようになるまでに答えがどれだけ正確でなければならないのかを厳密に定義します。そのうえで、古典的手法がすでにどれほど優秀であるかを誠実に見つめます。それこそが、いかなる量子的アプローチも越えなければならないハードルだからです。本章を終えるころには、どの化学的問題が量子コンピュータの候補になるのか、そして同じくらい重要なこととして、どれがそうでないのかを言えるようになっているはずです。

1.1 電子構造問題

分子とは、クーロン力を介して相互作用する原子核と電子の集まりです。そのシュレーディンガー方程式を書き下すことは難しくありません。難しいのは解くことです。

最初の単純化はあまりに普遍的なので、しばしば明示されないままになります。原子核は電子より数千倍重いので、はるかにゆっくり動きます。電子から見れば、原子核は事実上凍りついているように見えます。これが Born-Oppenheimer近似 を正当化します。原子核を選んだ位置に固定し、そこから生じる静電場の中で電子について解き、得られたエネルギーを原子核座標の関数として扱うのです。

📚 Born-Oppenheimer近似がもたらすもの

2つあり、そのどちらも数値的というより構造的なものです。

適切に定式化された電子の問題。 原子核を固定すると、未知数は電子だけの波動関数になります。これが 電子構造問題 であり、本シリーズ全体が扱う問題です。

ポテンシャルエネルギー曲面。 多数の原子核配置で計算を繰り返せば、電子エネルギーが 分子の形の関数 として得られます。化学者はこの曲面の上で暮らしています。その極小点は安定構造であり、極小点どうしを結ぶ経路は反応機構であり、その経路上の峠は遷移状態です。ほとんどすべての化学的な問いは、この曲面の形についての問いにほかなりません。

したがって目標は 基底状態エネルギー \(E_0\)、すなわち与えられた配置における電子ハミルトニアンの最低固有値です。

波動関数のほうがはるかに多くの情報を含んでいるのに、なぜ エネルギー なのでしょうか。それは、化学がエネルギーの 差 によって駆動されており、実験が測定するのもその差だからです。

これらはいずれも、大きな2つの数の引き算であり、その差は小さいのです。この1つの事実こそが、量子化学が精度に取りつかれている理由であり、1.3節の主題です。

1.2 指数の壁

ここからが難しいところです。電子は フェルミオン です。すなわち同一で区別不能であり、パウリの原理によって反対称な波動関数を持つことが要求されます。しかも互いに反発するので、その運動は 相関 しています。ある電子がどこにいるかが、他の電子がどこにいられるかに影響するのです。電子を1つずつ解くことはできません。

多電子波動関数を組み立てる標準的な方法は、有限個の1電子関数の集合を選ぶことから始まります。基底関数系 が \(K\) 個の 空間軌道 を与え、そのそれぞれがどちらのスピンの電子も収容できるので、\(2K\) 個の スピン軌道 ——電子が占有しうる席——が得られます。\(n\) 個の電子を \(2K\) 個の席に割り当てる1つの割り当て方を スレーター行列式 と呼びます(行列式という構造こそが反対称性を強制します。第2章でこれをきちんと扱い直します)。

その基底関数系の中での厳密な波動関数は、あらゆる そうした割り当ての重ね合わせです。これが 完全配置間相互作用(FCI) であり、その次元は二項係数になります。

\[ \dim_{\text{FCI}} = \binom{2K}{n} \]

ここに巧妙なところは何もありません。\(2K\) 個の席のうちどの \(n\) 個が占有されるかを選ぶ場合の数、それだけです。しかし、この無害に見える二項係数こそが問題のすべてなのです。半充填の系では \(\binom{2K}{K}\) はおおよそ \(4^K\) のように増大します。基底関数系に空間軌道を1つ加えるたびに、問題の規模がおよそ4倍になるのです。

📚 ファインマンの議論を具体的に

1980年代初頭、リチャード・ファインマンは、古典コンピュータは量子系のシミュレーションに構造的に向いていないと指摘しました。量子状態を記述するのに必要な古典的データの量が、粒子数に対して指数的に増大するからです。上の二項係数は、その議論を化学向けに書き下したもの そのもの です。

何が指数的で何がそうでないかに注目してください。問題の 記述 は小さいのです。分子はいくつかの原子核位置と基底関数系で指定されます。解 は巨大です。\(\binom{2K}{n}\) 個の複素成分を持つベクトルなのですから。したがって古典的手法はそのベクトルを圧縮しなければなりません。近似するか、打ち切るか、パラメトライズするかです。1.4節に登場するあらゆる古典的手法は、そのための特定の戦略にほかなりません。

量子コンピュータは別の取引を提案します。\(2K\) 個の量子ビットからなるレジスタは、\(2^{2K}\) 通りの占有パターン全体にわたる重ね合わせをそのまま保持します。それ自体がそれだけの配置を持つ 量子系である からです。量子ビットの数はスピン軌道の数に対して 線形に 増える一方で、それらが張る空間は指数的に増大します。これが量子コンピュータによる量子化学計算の構造的な議論のすべてであり、1.6節ではそれを読み取れる表にします。

1.3 「化学精度」とは何を意味するのか

分子のエネルギーを、支払う気のある範囲でいくらでも高い精度で計算できるとしましょう。では、どれだけ正確なら十分に正確なのでしょうか。

コミュニティの答えは 化学精度 と呼ばれる目標値であり、これは 定義 として扱う価値があります。

\[ \text{chemical accuracy} \;\equiv\; 1\ \text{kcal}\,\text{mol}^{-1} \]

電子構造計算が実際に用いる原子単位で表すと、これは 1.6ミリハートリー に近い値です。この換算は純粋な単位の算術なので、引用するのはやめましょう。計算してみることにします。そして同時に、この目標値がそこにある理由も計算しましょう。

その理由は反応速度論にあります。反応速度は、アレニウス因子 \(k \propto e^{-E_a / RT}\) を通じて障壁高さに依存します。したがって、計算された障壁の 誤差 \(\delta\) は予測される速度を少しずらすのではなく、\(e^{\delta / RT}\) 倍します。以下のコードは、その倍率を室温で評価します。

import math

# ---------------------------------------------------------------
# 1. 「化学精度」を定義として扱い、SI単位から換算する。
#    以下の定数はいずれも厳密値かCODATAで定義された値であり、
#    化学の論文から引用してきた値ではない。
# ---------------------------------------------------------------
HARTREE_J = 4.3597447222060e-18   # 1ハートリーのジュール値(CODATA)
AVOGADRO = 6.02214076e23          # 1/mol、SIの定義により厳密値
KCAL_J = 4184.0                   # 熱化学カロリー基準の1 kcalのジュール値、定義により厳密
R_GAS = 8.314462618               # J/(mol K)、SIの定義により厳密値

kcal_per_mol_in_J = KCAL_J / AVOGADRO
chemical_accuracy_hartree = kcal_per_mol_in_J / HARTREE_J

print("Chemical accuracy, derived rather than quoted")
print(f"  1 kcal/mol            = {kcal_per_mol_in_J:.6e} J per molecule")
print(f"  1 kcal/mol            = {chemical_accuracy_hartree:.6e} hartree")
print(f"                        = {chemical_accuracy_hartree * 1e3:.4f} millihartree")
print(f"  1 millihartree        = {1e-3 / chemical_accuracy_hartree:.4f} kcal/mol")
print()

# ---------------------------------------------------------------
# 2. なぜその目標値なのか: 速度定数のアレニウス感度。
#    k ~ exp(-Ea / RT) なので、障壁の誤差 dEa は予測される速度を
#    exp(-dEa / RT) 倍する。
# ---------------------------------------------------------------
T = 298.15   # K、きりのよい室温の基準値
RT = R_GAS * T
print(f"Rate-constant error factor at T = {T} K   (RT = {RT:.2f} J/mol)")
for kcal in [0.5, 1.0, 2.0, 5.0, 10.0]:
    dEa = kcal * KCAL_J                      # 障壁の誤差(J/mol)
    factor = math.exp(dEa / RT)              # k_true / k_predicted
    mhartree = kcal * chemical_accuracy_hartree * 1e3
    print(f"  barrier error {kcal:5.1f} kcal/mol ({mhartree:7.2f} mhartree)"
          f" -> rate off by x {factor:12.2f}")

出力:

Chemical accuracy, derived rather than quoted
  1 kcal/mol            = 6.947695e-21 J per molecule
  1 kcal/mol            = 1.593601e-03 hartree
                        = 1.5936 millihartree
  1 millihartree        = 0.6275 kcal/mol

Rate-constant error factor at T = 298.15 K   (RT = 2478.96 J/mol)
  barrier error   0.5 kcal/mol (   0.80 mhartree) -> rate off by x         2.33
  barrier error   1.0 kcal/mol (   1.59 mhartree) -> rate off by x         5.41
  barrier error   2.0 kcal/mol (   3.19 mhartree) -> rate off by x        29.24
  barrier error   5.0 kcal/mol (   7.97 mhartree) -> rate off by x      4624.08
  barrier error  10.0 kcal/mol (  15.94 mhartree) -> rate off by x  21382125.12

結果の読み方。 障壁における1 kcal/molの誤差は、予測される速度をおよそ5倍ずらします。これは許容範囲です。それでも速い経路を特定でき、定性的な化学は正しく捉えられるでしょう。5 kcal/molの誤差は速度を数千倍にし、10 kcal/molでは7桁も外れます。1秒で終わると予測された反応が数か月かかると予測される、あるいはその逆になるのです。

つまり化学精度とは、優雅さのために選ばれたきりのよい数字ではありません。それは反応速度の予測をなお使いものになる状態にとどめる、おおよそ最大の誤差なのであり、アレニウス式の指数関数こそが、このしきい値をこれほど鋭いものにしているのです。

引き算の残酷さ

分子の全電子エネルギーは大きく——何ハートリーにもなります——一方、化学者が気にする差はミリハートリーのオーダーです。個々には数千倍も大きい2つの量の 差 に対して1.6ミリハートリーを要求するということは、生の大きさから想像されるよりはるかに高い相対精度を要求することを意味します。全エネルギーについて「99%正確」に見える手法が化学の役に立たないことがあるのはこのためであり、また、よく似た計算どうしのあいだの誤差相殺がこの分野で最も重要な実践的道具の1つである理由でもあります。

1.4 古典的な道具箱を、誠実に

量子化学は量子コンピュータを待っていたわけではありません。それは重層的な道具箱を持つ成熟した学問分野であり、量子コンピューティングを擁護する誠実な議論は、まずそれに敬意を払うところから始めなければなりません。

📚 ハートリー・フォック法: 平均場

ハートリー・フォック法(HF) は、電子間反発を平均で置き換えます。各電子は他のすべての電子がつくる平均場の中を運動します。波動関数は 単一の スレーター行列式であり、エネルギーを最小化するように自己無撞着に選ばれます。

HFは安価であり、他のすべてがその上に築かれる土台です。後続の手法が相関を取り込む際の軌道を供給するからです。しかしその構成上、HFは 電子相関、すなわち電子が積極的に互いを避け合うことから生じるエネルギー成分を取りこぼします。この欠落分は全エネルギーに占める割合としては小さく、化学精度と比べれば大きいのであり、これはまさに最悪の組み合わせです。

📚 密度汎関数理論: 主力

DFT は別の道をとります。波動関数ではなく、電子 密度 を基本変数として扱うのです。すなわち \(3n\) 個ではなく3個の座標の関数です。原理的には、基底状態エネルギーはその密度の厳密な汎関数です。実際には厳密な汎関数を誰も知らないので、この分野では 近似的な交換相関汎関数 が用いられます。その系統は多数あり、それぞれに得意分野と破綻の仕方があります。

DFTは計算化学と材料科学の主力です。系のサイズに対するコストの増え方が穏やかなので、波動関数法の手の届かないはるか先の系まで扱えるからです。その弱点は強みの裏返しです。汎関数は近似であり系統的に改良できないため、厳密な答えへ収束させるために回せる内部のつまみが存在しません。DFTが誤っているとき、DFTはそれを教えてくれないのです。

📚 結合クラスター法: ゴールドスタンダード

結合クラスター法(CC) は、ハートリー・フォック参照の上に指数演算子を用いて相関を積み上げます。\(|\Psi\rangle = e^{\hat{T}}|\Phi_{\text{HF}}\rangle\) であり、ここで \(\hat{T}\) は電子を占有軌道から空軌道へと励起させる演算子です。\(\hat{T}\) を1電子励起と2電子励起で打ち切り、3電子励起を摂動論的に扱った手法が、量子化学の ゴールドスタンダード と一般に呼ばれるものです。

その評判は正当に得られたものです。しかし、それには条件がついています。結合クラスター法は、真の波動関数が 1つの行列式に支配されており、それ以外はすべて補正であると仮定します。この仮定が成り立つとき、この手法は日常的に化学精度に到達します。仮定が破れたとき、結合クラスター法は劇的に、しかも何の警告もなく破綻しうるのです。

📚 完全CI: 厳密であり、それゆえ小さい

FCI は、選んだ基底関数系の中での厳密な答えであり、\(\binom{2K}{n}\) 個の行列式が張る全空間でハミルトニアンを対角化することで得られます。これはあらゆる近似手法を較正する際の基準であり、なぜ小さな系に限られるのかは1.6節で正確に示します。

📚 道具箱が苦戦するところ

以上の手法は相関した形で破綻します。すなわち、同じ 系で、同じ理由で苦戦する傾向があるのです。

重要な区別は2種類の相関のあいだにあります。動的相関 は、電子どうしがきめ細かく短距離で避け合うことであり、単一行列式の参照ではうまく記述できませんが、摂動論的補正や結合クラスター補正がよく捉えてくれるものです。静的相関(あるいは強相関) はそれとは異なります。真の波動関数の中で複数の行列式が同程度の重みを持つときに生じるので、いかなる単一の参照も良い出発点にならないのです。

静的相関で悪名高い問題は3系統あります。

こうした場合のために専用の多参照法があります。それらは機能しますが、同時に高価であり、活性空間の選択に専門的な判断を要し、大きな系へはスケールしません。

これがギャップです。 化学一般ではありません。化学一般は古典的な道具箱によって十分に扱われています。ギャップは強相関にあります。

1.5 量子コンピュータが適合する理由——そしてそれが証明していないこと

構造的な議論は1.2節のものです。古典コンピュータは相関した多電子状態を、サイズが爆発するデータ構造に 符号化 しなければなりません。量子コンピュータはそれを、スピン軌道1つあたり量子ビット1つで 保持 します。何も圧縮する必要はありません。古典的な意味で何も書き下す必要がないからです。古典的には難しいケースである強相関にも、特別な罰則はつきません。重要な配置が多数ある重ね合わせは、支配的な配置が1つだけの重ね合わせと比べて、量子レジスタが保持するのに何ら難しくないのです。

これは実在する、そして十分な根拠のある構造的な優位性です。ここからは反対側の重りであり、それは同じだけの重みに値します。

📚 3つの誠実な留保

古典的手法は極めて優秀であり、しかも改良され続けている。 比較の相手は、大きな分子の厳密対角化では決してありません。そんなことをする人はいないのです。相手は、誰かが積極的に勝ちにいっている最良の古典的手法であり、そうした手法は毎年進歩しています。より良い汎関数、より良い多参照アプローチ、そして事実上厳密な取り扱いをより大きな活性空間へと着実に押し広げるテンソルネットワーク法や量子モンテカルロ法です。そうした進歩のひとつひとつが、量子コンピュータが越えねばならないハードルを上げていきます。

小さな実証は手法を実証するのであって、優位性を実証するのではない。 H₂ のような分子は、この分野の最初期から量子ハードウェア上で走らされてきましたし、それを行うことは実験的制御の真の達成です。しかし、今日の装置で走らせられるほど小さい分子はどれも、ノートパソコンでより速くより正確に解けるほど小さいのです。これらの実験は手法を検証するのであって、計算上の優位性を確立するものではありません。

重なり領域はいまだ空である。 説得力のある実証には、古典的に困難 であり、かつ 入手可能なハードウェアで量子的に扱える という2条件を同時に満たす問題が必要です。今日の時点で、そのような問題は説得力をもって示されていません。それを見つけることは活発かつ正当な研究課題であり、同時に、この分野で過大な主張が最も多く発生する場所でもあります。

両方の半分を同時に抱えてください。構造的な議論は健全であり、消えてなくなることはありません。実証はまだ起きていません。前半だけを信じる読者はプレスリリースになり、後半だけを信じる読者は、なぜ真剣な人々がこれに取り組んでいるのかを見落とします。

1.6 ハンズオン: 指数の壁を数える

壁を描写するのはやめて、数えることにしましょう。以下のコードは標準ライブラリだけで足ります。議論の全体が組合せ論であり、math.comb が浮動小数点の丸めを議論する余地なく厳密に計算してくれます。

各系について、FCI次元 \(\binom{2K}{n}\) と、行列式1つあたり複素振幅を1つ、complex128 で16バイトずつ格納するのに必要なメモリを報告します。これはコストの 下限 であり、しかも非常に甘い下限です。そのベクトル以外は何も格納しないと仮定し、実際に何かを対角化するコストを無視しているからです。

import math

# ---------------------------------------------------------------
# 指数の壁を、厳密に数える。
#
# K   = 基底関数系に含まれる空間軌道の数
# 2K  = スピン軌道の数(各空間軌道が上向きと下向きを収容する)
# n   = 電子数
#
# 完全配置間相互作用(FCI)の空間は、区別できないn個の電子を
# 2K個の席に配置するあらゆる方法によって張られる:
#
#     dim = C(2K, n)
#
# 行列式1つあたり複素振幅を1つ、complex128で格納すると
# 16バイトずつかかる。
# ---------------------------------------------------------------
BYTES_PER_AMPLITUDE = 16     # complex128 = float64が2つ

cases = [
    (2, 2, "4 spin-orbitals: the smallest textbook case"),
    (4, 4, "8 spin-orbitals"),
    (8, 8, "16 spin-orbitals"),
    (16, 16, "32 spin-orbitals"),
    (26, 26, "52 spin-orbitals"),
    (40, 40, "80 spin-orbitals"),
    (50, 50, "100 spin-orbitals"),
]

def human_bytes(nbytes):
    """外部ライブラリを使わずに、バイト数を2進接頭辞つきで整形する。"""
    units = ["B", "KiB", "MiB", "GiB", "TiB", "PiB", "EiB", "ZiB", "YiB"]
    value = float(nbytes)
    for unit in units:
        if value < 1024.0 or unit == units[-1]:
            return f"{value:.3g} {unit}"
        value /= 1024.0

print(f"{'K':>3} {'2K':>4} {'n':>3} {'FCI determinants':>22} {'state-vector memory':>22}   note")
print("-" * 100)
for K, n, note in cases:
    dim = math.comb(2 * K, n)
    nbytes = dim * BYTES_PER_AMPLITUDE
    print(f"{K:3d} {2*K:4d} {n:3d} {dim:22d} {human_bytes(nbytes):>22}   {note}")
print()

# ---------------------------------------------------------------
# 壁はどれほど速くやってくるか。気前のよい古典メモリの予算と
# 比べてみる。
# ---------------------------------------------------------------
BUDGET_BYTES = 1024**5      # 1 PiB: どんな単一のマシンよりもはるかに大きい
print(f"Largest half-filled case that fits in {human_bytes(BUDGET_BYTES)} of amplitudes:")
K = 1
while math.comb(2 * (K + 1), K + 1) * BYTES_PER_AMPLITUDE <= BUDGET_BYTES:
    K += 1
print(f"  K = {K} spatial orbitals ({2*K} spin-orbitals, {K} electrons)")
print(f"  dim = {math.comb(2*K, K)}  -> {human_bytes(math.comb(2*K, K) * BYTES_PER_AMPLITUDE)}")
print(f"  add ONE more spatial orbital and one more electron:")
print(f"  dim = {math.comb(2*(K+1), K+1)}"
      f"  -> {human_bytes(math.comb(2*(K+1), K+1) * BYTES_PER_AMPLITUDE)}")
print()

# ---------------------------------------------------------------
# 帳簿の量子ビット側: 量子レジスタはスピン軌道1つあたり量子ビットが
# 1つ必要であり、その増え方は線形である。
# ---------------------------------------------------------------
print("Classical amplitudes vs. qubits, for the same half-filled systems")
print(f"{'2K spin-orbitals':>18} {'FCI determinants':>22} {'qubits needed':>15}")
for K in [2, 4, 8, 16, 26, 40, 50]:
    print(f"{2*K:18d} {math.comb(2*K, K):22d} {2*K:15d}")

出力:

  K   2K   n       FCI determinants    state-vector memory   note
----------------------------------------------------------------------------------------------------
  2    4   2                      6                   96 B   4 spin-orbitals: the smallest textbook case
  4    8   4                     70               1.09 KiB   8 spin-orbitals
  8   16   8                  12870                201 KiB   16 spin-orbitals
 16   32  16              601080390               8.96 GiB   32 spin-orbitals
 26   52  26        495918532948104               7.05 PiB   52 spin-orbitals
 40   80  40 107507208733336176461620               1.42 YiB   80 spin-orbitals
 50  100  50 100891344545564193334812497256           1.34e+06 YiB   100 spin-orbitals

Largest half-filled case that fits in 1 PiB of amplitudes:
  K = 24 spatial orbitals (48 spin-orbitals, 24 electrons)
  dim = 32247603683100  -> 469 TiB
  add ONE more spatial orbital and one more electron:
  dim = 126410606437752  -> 1.8 PiB

Classical amplitudes vs. qubits, for the same half-filled systems
  2K spin-orbitals       FCI determinants   qubits needed
                 4                      6               4
                 8                     70               8
                16                  12870              16
                32              601080390              32
                52        495918532948104              52
                80 107507208733336176461620              80
               100 100891344545564193334812497256             100

結果の読み方。 重要度の低い順に4つの観察を挙げます。

この表を実態以上に読まないよう、1つだけ注意を述べておきます。状態を格納することと、その中で 基底状態を見つける こととは別物であり、真面目な古典的手法がこのサイズで完全なFCIベクトルを格納したことは一度もありません。古典的量子化学の技法の全体は、それを回避することにあるのです。この表が示しているのは、その回避が必要である理由であって、古典化学が無力だということではありません。

不均衡なケース——たとえば \(K = 30\) 個の空間軌道に電子が \(n = 4\) 個だけ——の行を加えて試してみてください。次元が崩れ落ちるのが分かるはずです。多数の軌道に少数の電子という問題は、半充填の殻よりはるかに小さい問題です。計算の難しさを決めるのが原子の数ではなく、相関した 電子の数である理由がこれです。

🎯 演習問題

  1. 4倍という因子。 半充填の系について、\(K\) が大きくなるにつれて \(\binom{2K+2}{K+1} / \binom{2K}{K}\) が4に近づくことを示してください。\(K = 5\) と \(K = 25\) でこの比を評価し、極限にどれだけ速く近づくかを論じてください。
  2. 電子数か軌道数か。 math.comb を使って \(\binom{60}{4}\)、\(\binom{60}{10}\)、\(\binom{60}{30}\) を比較してください。計算の難しさを支配するのはどちらの量でしょうか——基底関数系の大きさか、相関した電子の数か。活性空間を選ぶ際の実践的な帰結を述べてください。
  3. 精度目標を読み解く。 アレニウスのコードを使って、298.15 Kにおいて予測される速度定数をちょうど1桁変えてしまう障壁の誤差(kcal/mol単位)を求めてください。500 Kでも繰り返し、変化の向きを説明してください。
  4. 相関を診断する。 以下のそれぞれについて、静的相関が重要になると予想するかどうかとその理由を述べてください。(a) 平衡構造付近のメタン、(b) 平衡結合長の2倍まで引き伸ばされた N₂、(c) 部分的に満たされたd殻を持つ第一遷移系列の金属錯体、(d) 共役色素の第一励起状態。
  5. 主張を監査する。 ある量子デバイスが分子のエネルギーを「化学精度で」計算したという記事を読んだとします。その文が意味を持つために答えなければならない問いを4つ挙げ、それぞれについて満足のいく答えがどのようなものかを述べてください。

まとめ

本章は、本シリーズの残りが攻略する問題を提示しました。Born-Oppenheimer近似 のもとで原子核は固定されたものとして扱われ、電子構造問題 が残ります。すなわち、原子核のつくる場の中で電子の基底状態エネルギーを求め、それを配置ごとに繰り返して、極小点が構造であり峠が遷移状態である ポテンシャルエネルギー曲面 を描き出すことです。私たちがエネルギーを求めるのは、化学が結合の強さ、反応熱力学、障壁、スペクトルといったエネルギーの 差 でできているからであり、そのどれもが大きな数どうしの小さな差だからです。指数の壁 は数えれば従います。\(2K\) 個のスピン軌道と \(n\) 個の電子があるとき、厳密(FCI)な空間は \(\binom{2K}{n}\) 次元を持ち、半充填ではおおよそ \(4^K\) です。これがファインマンの議論の化学版です。化学精度 を1 kcal/molと定義し、SI定数から1.5936ミリハートリーとして導出し、コードで計算したアレニウス感度によってそれを正当化しました。1 kcal/molの障壁誤差は室温での速度をおよそ5倍変え、10 kcal/molの誤差は7桁変えてしまいます。古典的な道具箱を誠実に概観し——平均場としての ハートリー・フォック法、広く適用できるが誤差が系統的でない主力の DFT、単一参照の系に対する ゴールドスタンダードである 結合クラスター法、厳密だが小さい FCI——本当のギャップが 静的相関 にあることを突き止めました。結合解離、遷移金属、励起状態です。最後に、組合せ論の表が量子ハードウェアを支持する構造的な論拠を示しました。\(10^{29}\) 個の行列式を張るために、古典メモリの列は28桁を横切る一方、量子ビットの列は4から100まで増えるだけです。この議論は健全であり、そしてまだ実証ではありません。古典的に困難であり、かつ今日量子的に扱えるという両方を説得力をもって示された問題は、まだ存在しないのです。

次章では、化学とハードウェアのあいだに橋を架けます。第二量子化を導入し、電子ハミルトニアンを生成・消滅演算子で書き下し、そのうえでこの企て全体の中心にある不整合に向き合います。量子ビットは区別可能であり、電子はそうではない、という不整合です。Jordan-Wigner変換がその修復であり、それが機能することを数値的に確かめます。

← シリーズトップ 第2章: 分子から量子ビットへ →

免責事項