かっこの前の文字
は、かっこを外すとになる。では、形のよく似たも、と開けるのだろうか。
開けない。
は、との掛け算ではないからだ。読み方は「エフエックス」で、は数を1つ受け取って数を1つ返す決まりの名前、かっこの中はその決まりに入れる値を表す。
たとえばなら、は「の場所にを入れた値」と読む。計算するとで、とはまるで別の式だ。ならになる。0.5を決まりに入れて、出てきた値がである。
英国の数学学習支援サイトmathcentreの手引きも、関数を「入力を決まりに従って処理し、出力を作る数学の機械」として箱の図で描く。そのうえでを「f is a function of x」、短く「f of x」と読むと書いている。
大学の数学に進むと、同じ関数に2本の矢印が付く。
左のは集合から集合へ、右のは1つの値から1つの値へ向かう。形は似ていても、矢印の両端に置くものが違う。
声に出すときの形
では、この1行はどう読むのか。前半は「エフは実数から実数への写像」、後半は「エックスをエックス2乗マイナス1に写す」と読む。は実数全体の集合を表す。改訂新版 世界大百科事典の「写像」の項も、によってにが定まることを「fはaをbに写す」と言い表している。
| 式 | 日本語 | 英語 |
|---|---|---|
| エフエックス | f of x | |
| エフさん | f of three | |
| ワイイコールエフエックス | y equals f of x | |
| AからBへの写像f | f from A to B | |
| xをx²に写す | x maps to x squared | |
| ジーエフエックス | g of f of x |
4行目と5行目にある2本の矢印が、この記事の主役だ。最後のは、から出た値をそのままに入れる、という2段の箱を表す。
表の読みのうち、資料に書かれているのは、mathcentreの「f of x」、世界大百科事典の「AからBへの写像」と「写す」、Unicodeの注記にある「maps to」である。「エフさん」や「g of f of x」などほかの読みは、口で読むときの慣用の言い方だ。
日本の学校で関数という言葉に出会うのは、中学1年だ。中学校学習指導要領は1年の「関数」の領域で比例と反比例を扱い、「関数関係の意味を理解すること」を求め、用語として「関数」「変数」「変域」を挙げている。の記号が出てくるのは高校の数学Iで、学習指導要領の解説は二次関数の箇所に「関数概念の理解を深める意味から、記号f(x)を使用することも考えられる」と書く。
写像という言葉も、意外な場所で高校の解説に出てくる。数学Bの統計的な推測で、確率変数を「標本空間の各要素に対し一つの実数を対応させる写像」と説明している。コインを2枚投げた結果の1つ1つに、表の枚数という数を1つ対応させる決まりも、れっきとした写像だ。
→と↦が指すもの
図の1行目、のを定義域と呼ぶ。決まりに入れてよい値を集めた集合である。矢印の先のは出てきた値が入る集合で、英語ではcodomainと言う。2行目のは、の像(image)と呼ぶ。
ただ、を指す日本語は1つに決まっていない。北見工業大学の講義資料は、を終域(codomain)または行き先(target)と呼んだうえで、「終域」を使う人はほとんどいないと書き添えている。の意味で値域と言う人もいるが、値域は像と同じ意味で使うのが普通なので避けたほうがよい、という。ブリタニカ国際大百科事典では、「関数」の項で同じを余域や終集合と呼び、「値域」の項では、値の集合を今では「fの像というほうが普通」としている。
高校数学の学習指導要領の解説には、定義域と値域は出てくるが、終域という言葉は見当たらない。訳語が1つに定まらないのは、を名前で呼ぶ場面が大学に入るまでほとんど無いからかもしれない。
では、終域と像はどこが違うのか。
を、からへの写像として描くと、違いが目に見える。のどの点からも、矢印はちょうど1本ずつ出る。と1はどちらも0に、と2はどちらも3に入る。2本が同じ点に入るのは構わないが、1つの点から2本出ることはない。
矢印の届く点を集めたが像で、終域の一部にすぎない。実数全体で考えても事情は同じだ。はより小さくならないので、終域をにとっても、像は以上の実数に限られる。
動く文字と止まった文字
テイラー展開の式を、2つの読み方で読み分けてみる。
左辺は「エフエックス」、右辺の分子は「エフのn階導関数の、エーでの値」と読む。はを回微分した関数で、肩にかっこが無いとの乗と紛れてしまう。
同じのかっこに、左では、右ではが入っている。は動かす値、は展開の中心として止めておく点だ。だからはどれもただの数になり、右辺はに決まった数を掛けて足し合わせた式として読める。
たとえば、なら、、、で、2次までの和はになる。を入れると0.875で、にもう近い。
かっこの中の文字は、入れ物の名前にすぎない。にを入れても、にを入れても、出てくるのは同じ8だ。2つは同じ関数で、文字を取り替えても決まりは変わらない。テイラー展開の記事の証明でも、積分の中で動くのはで、は積分の上端として止まっている。
関数そのものを入れる決まりもある。フーリエ級数の係数は、次の積分で求める。
積分の中でがからまで動き終わると、は式から消える。残るのは、関数と番号で決まる1つの数だ。矢印で書けばとなり、箱に入れるものは数ではなく、関数の全体になる。
↦を何度もたどる
マンデルブロ集合の決まりは、矢印で書くと1行で済む。出てきた値をまた入れると、↦が鎖のようにつながっていく。
-
決まりの名前をとし、を添字に置く。はくり返しの間は動かさない値で、動かすと書き分けている。
-
として、0.5を入れる。
-
出てきたを、もう一度入れる。を続けて2回使うことを、と書く。
-
1回目の値を2乗した数とは別物だ。くり返しを肩の2で書くと、この2つが紛れる。
-
さらに続けると、値は0とに交互に近づいていく。
-
複素数を入れると、1回目でに移る。絶対値はで、半径2の円の外に出た。
-
マンデルブロ集合では、出発点を0に止めてのほうを動かす。0から始めた値が半径2の円を出ないを集めたものが、集合である。
同じでも、どの文字を止めるかで別の図形が現れる。を止めて出発点を動かすと、遠くへ飛んでいかない出発点の集まりができ、その縁がジュリア集合になる。マンデルブロ集合のほうは、出発点を0に止め、を1つずつ取り替えながら0の行き先を調べて描く。の添字が表すのは、1回のくり返しの間はを止めておく、という約束である。
↦の行き先は、数とは限らない。ショアのアルゴリズムの記事では、まずが、、、、と4つごとに元へ戻ることから、周期4を読み取る。同じ記事の量子フーリエ変換では、↦の両側に量子状態が来る。と、基底の状態1つずつの行き先だけを書く。この変換は線形なので、基底の行き先が決まれば、重ね合わせた状態の行き先も足し算で決まるからだ。
ロジスティック写像の「写像」も、この↦をくり返す決まりのことを指している。
数を入れる箱
「数直線で1回」では、上の数直線の値が箱を通り、下の数直線のへ移る。のつまみを動かすと、から出た破線も同じ点に入り、斜線で示した像より左には、どの値も届かない。「平面でくり返す」に切り替えると、出発点からをくり返した道すじが弧の矢印でつながり、半径2の円を出たところで止まる。画面をたたくと、入れる値がその場所に移る。
作ってみて驚いたのは、、のまま虚部を0から0.2に変えただけで、道すじががらりと変わることだ。なら値は実軸の上で0とに近づいていく。ところがでは、0の近くとの近くを行き来しながら少しずつずれ、11回目で円の外へ出ていく。
オイラーのfと、位相幾何学から来た矢印
の記号より先に、関数という言葉があった。MacTutorの解説によると、ライプニッツは1673年8月の手稿で、図形の中で「何かの役目(function)を果たす」線という意味でこの語を使っている。数学の用語というより、ふだんの言葉の「機能」に近い。
式の意味に近づけたのは、ヨハン・ベルヌーイである。1694年9月のライプニッツあての手紙で、ベルヌーイは「不定の量と定数から、何らかの形で作られた量」を考えた。ただしミラーの資料によれば、この手紙には、functioという語そのものは出てこない。ベルヌーイがこの語をはっきり解析の意味で使ったのは1698年7月の手紙で、ライプニッツは同じ月の末に、賛成する返事を書いた。MacTutorの解説は、ライプニッツが書いた一節「私の意味でfunctionという語を使ってくれてうれしい」を英訳で引いている。
の形を初めて書いたのは、オイラーとされる。ミラーの資料は、カジョリの『数学記号の歴史』第2巻を引き、オイラーが1734年にペテルブルク科学アカデミーの紀要でを使ったのが最初だとしている1。1748年の『無限解析序説』では、関数を解析学の中心に据え、次のように定義した。
変量の関数とは、その変量と数、または定数から、どのような形にせよ組み立てられた解析的な式である。
この訳は、MacTutorの解説にある英訳から筆者が訳した。
式で書けるものだけが関数か。オイラー自身、7年後の1755年に出した微分学の教科書では、ほかの量が変わるとそれにつれて変わる量を、まとめて関数と呼んでいる。ただ、MacTutorの解説によれば、その本で扱ったのは式で書ける関数だけだった。
熱を研究したフーリエは、1822年の『熱の解析的理論』で、式から意図して離れた定義を書いた。MacTutorが引く英訳では「一般に、関数f(x)は、それぞれが任意である値(縦座標)の並びを表す」とあり、値どうしに共通の法則を仮定しない。ディリクレは1837年にこの定義を受け入れ、すぐあとに今の意味での連続関数を定義している。
英語のmappingは、ドイツ語のAbbildungを訳した言葉だ。ミラーの資料によると、Abbildungは挿絵や図、地図も指す語で、数学の用語としての使い方はリーマンとクラインまでさかのぼる。同じ資料が引くフェレイロスの説明では、オイラーのを「集合から別の集合への写像」として捉え直したのは1888年のデデキントで、像や恒等写像、写像の合成といった用語も、デデキントが次々に導入した。欠けていたのは矢印の記号だけだった、という。
矢印は、それから半世紀ほどあとに現れる。ミラーの資料によると、マックレーンは、1971年の著書『Categories for the Working Mathematician』で、「関数を矢印で表すという基本的な考えは、1940年ごろ位相幾何学に初めて現れた。おそらくフレヴィッツの相対ホモトピー群の論文か講義だろう」と述べている。の矢印は、それまでときどき使われていたという書き方を、たちまち押しのけたという。マックレーンは、矢印という記法が圏という概念を生んだ、とまとめている。
もう1本の↦が、いつ、だれの本から使われ始めたかは、ミラーの資料にも見当たらず、確かめられなかった。
プログラムに残る↦
↦とよく似た矢印は、プログラムの中にもある。JavaScriptのアロー関数x => x * xは、矢印の形までによく似ている。MDNの解説は、アロー関数式を、従来の関数式を簡潔に書く代わりの方法だと説明する。Pythonではlambda x: x * xと書き、公式の文書によれば、名前の無い関数を作る式である。
筆者が手元のNode.js 24で[0.5, 1, 2].map(x => x * x - 1)を動かすと、[ -0.75, 0, 3 ]が返った。Python 3.14の(lambda x: x * x - 1)(0.5)は-0.75だ。後ろの(0.5)が、のかっこにあたる。
ExcelのLAMBDA関数も同じ形をしている。Microsoftのサポートページによると、=LAMBDA(number, number + 1)(1)は2を返す。末尾の(1)を付けずに決まりだけをセルに書くと、#CALC!のエラーになる。決まりだけでは値は出ず、とかっこで値を入れて初めて数になる。との違いが、そのままエラーの有無に表れているのが面白い。
数式を打つときは、TeXの書き方でを\to、を\mapstoと書く。このサイトの式を描いているKaTeXも、2つとも対応している。文字として打つなら、→はU+2192、↦はU+21A6で、↦のUnicodeでの名前はRIGHTWARDS ARROW FROM BARだ。長い⟼(U+27FC)には、「maps to」という注記が添えてある。
読んだあとは、次の順に手を動かすとよい。
- に0.5、1、2を入れ、、0、3になるのを見る。続けてを展開し、になることを確認する。
- 上のシミュレーションで「平面でくり返す」を選び、とを0にして、を0.25と0.26で比べる。0.25では30回たどっても円の中にとどまり、0.26では30回目で外へ出る。
- テイラー展開の証明でとの役目を、マンデルブロ集合でジュリア集合との違いを、ショアのアルゴリズムでの周期を読む。
- 肩の数の読み方は累乗と指数の読み方、テイラー展開のΣはΣと∫の読み方で読める。
を前に手が止まったら、かっこの前の文字が掛け算の相手なのか、決まりの名前なのかを、まず声に出して読み分けてみるとよい。
参考文献
- mathcentre, "What is a function?"(mc-bus-function-2009-1), 2009. 同サイトの"About mathcentre"によれば、mathcentreはラフバラ大学、リーズ大学、コヴェントリー大学などが2003年に立ち上げた.
- J. J. O'Connor, E. F. Robertson, "The function concept", MacTutor History of Mathematics, セント・アンドルーズ大学.
- Jeff Miller, "Earliest Uses of Function Symbols"(f(x)とUse of arrowsの項。S. Mac Lane, Categories for the Working Mathematician, Springer, 1971, p. 29と、J. Ferreirósの記述を引く), MacTutor History of Mathematics.
- Jeff Miller, "Earliest Known Uses of Some of the Words of Mathematics"(FUNCTION、MAPPINGの項), MacTutor History of Mathematics.
- F. Cajori, A History of Mathematical Notations, Vol. II (Open Court, 1929). 本体は未見。本文のカジョリにかかわる記述は文献3による孫引き.
- 文部科学省『中学校学習指導要領(平成29年告示)』第2章第3節 数学. 『高等学校学習指導要領(平成30年告示)解説 数学編 理数編』の数学I「二次関数」と数学B「統計的な推測」.
- 北見工業大学の講義資料「3写像」(3.3定義域・終域(行き先)).
- 改訂新版 世界大百科事典「写像」(西村純一)、平凡社. ブリタニカ国際大百科事典 小項目事典「値域」「関数」. いずれもコトバンクで確認.
- MDN Web Docs, "Arrow function expressions". Python 3 Documentation, "6.14. Lambdas". Microsoftサポート, "LAMBDA function". KaTeX, "Supported Functions".
- The Unicode Consortium, NamesList.txt (Unicode 18.0.0).
注
-
カジョリの本そのものは確認できていない。年と頁(第2巻268頁)は、ミラーの資料からの孫引きである。 ↩