はじめに
解析力学や場の理論を学んでいると、次のような式に出会います。
\delta S = 0
あるいは
\frac{\delta S}{\delta q(t)} = 0
多くの教科書では、これは比較的あっさりと導入されます。「変分を取る」「汎関数微分を計算する」といった言葉が並び、はじめて学ぶ人はそれを計算手続きとして受け取ることになります。
しかし、少し立ち止まって考えてみると、違和感が湧きます。
関数を変数にした“関数”を、いったいどうやって微分しているのか?
この問いに正面から答えるのは、実は結構難しいです。(自分も深く理解できてない、ということを自覚しています...) ただ、何が難しいと思うのかは伝えることはできると思いますので、トライしてみます。
(注)この記事は、汎関数微分を「なんとなく教わったけど、実はよく分からない」という人向けです。厳密な数学よりもまず、「なぜこう考えるのか」「どこまで正しいのか」を意識した説明です。
初回(全3回)の「はじめての汎関数微分 (1) 発明編:なぜ「汎関数微分」は必要だったのか」では、汎関数微分が「なぜ必要だったのか」 その発明の動機を伝えながら、歴史と物理の物語から振り返ります。
1. そもそも何が問題だったのか?
ニュートン力学は「点の力学」だった
ニュートン力学では、運動は次のように記述されます。
- ある時刻の位置 $x(t)$
- そこに働く力 $F(x,t)$
- 運動方程式 $m\ddot{x}=F$
ここで扱っているのは、「ある瞬間の状態」 です。
時間発展は、微分方程式を解くことで得られます。
こうして、17世紀までに、ガリレオ・ガリレイ(1564-1642)とヨハネス・ケプラー(1571-1630)、そして、ニュートンが登場し、『プリンキピア』(正式名称『自然哲学の数学的諸原理』)が1687年に刊行され、運動の法則がわかってきました。
しかし自然は「全体」を好んでいるように見えた
18世紀に入ると、物理学者たちは奇妙な事実に気づき始めました。
- 光の進み方は、フェルマー(Pierre de Fermat, 1607–1665) が提案した
「最短時間の原理」によって統一的に説明できる - 力学的な運動も、モーペルテュイ(Pierre-Louis Maupertuis, 1698–1759) が
1744年に主張した「最小作用の原理」に従っているように見える
ここで現れる「ある量」は、後に作用(action) と呼ばれるようになります。
この考え方を数学的に洗練させたのが、
オイラー(Leonhard Euler, 1707–1783) と
ラグランジュ(Joseph-Louis Lagrange, 1736–1813)
でした。
重要なのは、ここで自然が参照している対象が、
「一瞬一瞬の状態」ではなく、運動全体(軌道)に見える
という点です。
この「全体を最適化する」という発想は、18世紀の解析力学を特徴づける決定的な転換でした。
2. 「軌道そのもの」をどう扱うのか?
軌道は数ではない
粒子の軌道 $q(t)$ は、
- 数でもない
- ベクトルでもない
- 行列でもない
時間に沿った関数そのものです。そう考えると、次の問いが出てきます。
軌道を少し変えたら、物理量はどう変わるのか?
ここで初めて、「関数を変数として扱う」 という発想が必要になります。
3. オイラーとラグランジュの挑戦
変分法の誕生
この問題に取り組んだのが、先ほど少し紹介した オイラー と ラグランジュ でした。
彼らは次の問いを立てました。
軌道 $q(t)$ を少しだけ変えたとき、作用 $S[q]$ はどのように変わるのか?
この問いに答えるために導入されたのが、
- 軌道の「微小変化」 + それによる作用の変化
すなわち 変分 (variation) です
当時はまだ、
- 関数空間
- フレシェ微分
- 汎関数解析
といった数学は 存在していませんでした。それでも彼らは、計算できる形で答えを出す必要があったのです。
4. 「厳密さ」よりも「答えを出すこと」
ラグランジュは、ある意味で天才的な一手を打ちます。
軌道を $ q(t) \rightarrow q(t) + \varepsilon \eta(t) $ と変えてみよう、というアイディアです。
ここで、
- $\eta(t)$ は任意の小さな変化
- $\varepsilon$ は無限小のパラメータ
として、作用の変化を
\delta S = \left.\frac{d}{d\varepsilon}\right|_{\varepsilon=0}
S[q+\varepsilon\eta]
と定義しました。
これは現代の目で見ると、
- 数学的に完全に厳密、とは言えない
- しかし 論理は明確
という、非常に物理的な定義です。
5. 汎関数微分は「後から付いた名前」
ここで歴史的な順序を整理しておきます。
18世紀に「汎関数微分」という概念が明示的に存在していたわけではありません。
18世紀の解析力学において行われていたのは、あくまで次のような 計算手続き でした。
- 軌道 $q(t)$ を微小に変化させる
- 作用 $S[q]$ がどのように変化するかを計算する
- その結果から運動方程式を導く
この方法は、
-
レオンハルト・オイラー(1707–1783)が
1744年『Methodus inveniendi…』で体系化し、 -
ジョゼフ=ルイ・ラグランジュ(1736–1813)が
1788年『解析力学』で完成させました。
この時代には、関数空間という概念も 「関数を変数とする微分」という言葉もまだ存在していません。
したがって当時の認識としては、「これは汎関数に対する微分である」というよりも、
「こうすれば正しい運動方程式が出る」
という 手続き的理解 が先にあったと言えます。
「汎関数微分」という言葉が現れるのはいつか?
「汎関数(functional)」という言葉自体が数学的に定着するのは 19世紀末〜20世紀初頭 です。
-
ヴォルテラ(Vito Volterra, 1860–1940)
👉 1887–1890年頃:「関数の関数」という概念を体系化 -
フレシェ(Maurice Fréchet, 1878–1973)
👉 1906年:関数空間上の微分(フレシェ微分)を定式化
そして、「汎関数微分」という言葉が物理で日常的に使われるようになるのは20世紀の場の理論以降でしょう。
6. なぜこの考え方は生き残ったのか?(歴史的視点)
この計算手続きが生き残った理由は、歴史的には明確です。
数学的に完全だったからではなく、自然を驚くほど正確に記述できたから
です。18世紀の段階ですでに、
- ニュートンの運動方程式が再現される
- 多自由度系にも自然に拡張できる
- 拘束条件を統一的に扱える
ことが示されていました。
さらに19世紀〜20世紀にかけて、
- 電磁場
- 連続体力学
- 相対論的場の理論
へとほぼ形を変えずに拡張できたことが、この考え方の決定的な強さを示しています。
したがって、
汎関数微分は数学的に完成していたから生き残ったのではなく、物理的に強力だったから生き残った
と理解できます。つまり、18世紀に発明されたのは「変分という計算手続き」であり、19世紀にその正当化が進み、「汎関数微分」という名前が定着するのは20世紀以降でしょう。
7. まとめ
汎関数微分は、「美しい数学」を目指して生まれたのではなく、「どうしても答えを出す必要」から発明された
というでしょう。
- この発明は成功した
- しかし同時に、新しい問題も生んだ
その続きが、次の 洗練編 になります。
注) 汎関数「はんかんすう」と呼びます。覚え方の例:
「凡(ぼん)人は一人。汎(はん)は全員。
関数“全体”を見るから汎関数(はんかんすう)。」
補足:なぜ「汎関数微分」の「汎」なのか?
ここまで読んで、次のような疑問を持った人も多いはずです。
「汎関数(はんかんすう)」の『汎』(はん)って、いったい何を意味しているのか?
なぜ単に「関数微分」ではないのか?
この疑問は非常に本質的で、実は
「汎関数微分」という言葉そのものが生まれた背景
を理解する入口になっています。
1. 「汎」は「ひろく・一般に」を意味する漢字
まず日本語としての「汎」を確認しておきます。
「汎(はん)」という漢字は、
- 汎用(はんよう)
- 汎化(generalization)
- 汎関数解析
などに使われるように、
特定の形に限定しない広く一般的なもの
という意味を持ちます。つまり「汎関数」とは、
「特定の形を仮定しない関数(の関数)」
というニュアンスを含んでいます。
2. 原語は functional ——「関数の関数」
「汎関数」に対応する英語は functional です。functional とは、
関数を入力として、数を返す写像
を指します。例:
S[q] = \int L(q(t), \dot q(t), t),dt
ここで
- 入力:関数 $q(t)$
- 出力:数 $S$
という対応になっています。この意味で functional は、しばしば
function of a function
(関数を引数に取る関数)
と説明されます。
3. なぜ日本語では「関数の関数」ではなく「汎関数」なのか?
では、なぜ日本語では単に
*「関数関数」
*「関数の関数」
と訳されなかったのでしょうか。おそらく、理由は主に 2つ あります。
(1) 「関数の関数」は誤解を生みやすい
「関数の関数」と言ってしまうと、
- 合成関数 $f(g(x))$
- 関数を別の関数で変換する操作
のような 初等的な操作 を連想してしまいます。しかし functional が扱うのは、
- 無限次元の関数空間
- 関数全体をひとつの「点」とみなす立場
です。この違いを明確にするため、
あえて日常語から距離を取った訳語 が必要だったのでしょう。
(2) 「汎」は「形を仮定しない」ことを強調できる
functional の重要な特徴は、
入力となる関数の形を一切固定しない
点にあります。
- 多項式である必要はない
- フーリエ級数である必要もない
- 解析的である必要すらない(物理では)
この「どんな関数でも対象にする」という性質を表すために、
汎(general, broad)
という漢字が選ばれましたのでしょう。
4. 「汎関数微分」の意味を言葉として分解する
ここで「汎関数微分」という言葉を分解してみましょう。
- 汎:特定の形に限定しない
- 関数:入力が関数である
- 微分:微小変化に対する感度
つまり、
「関数全体を入力とする量が、
その関数を少し変えたとき、
どう変化するかを測る操作」
が「汎関数微分」です。
5. なぜこの言葉は「後から」必要になったのか?
ここで、この記事の主題と強くつながります。
18世紀のオイラーやラグランジュは、
- 「汎関数」という言葉を知らなかった
- 「汎関数微分」という概念も知らなかった
しかし彼らはすでに、
関数そのものを変数として扱う計算
をしていました。その計算を 後から数学が整理したとき、
- 「これは function ではなく functional だ」
- 「その微分だから functional derivative だ」
と名前が付けられたのです。
つまり、
「汎関数微分」という言葉は概念の発明ではなく、
既に存在した計算手続きを説明するために後付けで導入された名称
だと言えます。
6. まとめ(言葉の意味から見た理解)
- 「汎関数」の「汎」は 形を仮定しない・一般的である という意味
- 原語 functional は 関数を入力とする写像
- 「汎関数微分」とは 関数全体に対する感度を測る操作
- この言葉は18世紀の計算を、19–20世紀の数学が言語化した結果
です。したがって、
「汎関数微分」は難しい数学用語だから生まれたのではなく、すでに行われていた物理の計算を、どうにか説明するために必要になった言葉
だと理解すると、非常に自然です。
こうして、汎関数微分がなぜ発明されたかを感じてもらえたところで、
はじめての汎関数微分 (2):洗練編 では、
- どこが曖昧だったのか
- それを数学はどう整備しようとしたのか
- なぜ今も完全には終わっていないのか
について紹介してみます。
関連記事
(本記事は「はじめての汎関数微分」シリーズの一部です。)