関数 (数学)
多変数関数は独立変数がベクトルに値をとるものと解釈できるということを上に述べたが、逆に従属変数がベクトルの値を持つような写像も考えられ、それをベクトル値関数という。ベクトル値関数が与えられたとき、像のベクトルに対してその各成分をとり出す写像を合成することにより、通常の一価関数が複数得られる。つまり、定義域を共有するいくつかの関数を一つのベクトルとしてまとめて扱ったものがベクトル値関数であるということができる。
一つの例として、実数体 \mathbb{R} で定義された二価の関数
f(x) := \pm\sqrt{1+x^2}
f\colon \mathbb{R} \to \mathbb{R}^2;\ x \to f(x) = (\sqrt{1+x^2}, - \sqrt{1+x^2})
として扱うことができる。また、定義域の "コピー" を作って定義域を広げてやることで、その拡張された定義域上の一価の関数
f\colon A \sqcup B \to \mathbb{R} \quad(A=B=\mathbb{R})
f(x)=\begin{cases}
-\sqrt{1+x^2} & (x\in A),\\
\sqrt{1+x^2} & (x\in B)
\end{cases}
と見なすこともある。複素変数の対数関数 log は素朴には無限多価関数であるが、これを log のリーマン面上の一価関数と見なすなど、定義域を広げて一価にする手法は解析的な関数に対してしばしば用いられる。
多変数方程式がいくつかの関数関係を定義することもある。例えば
F(x,y) = 0
のような式が与えられているとき、x と y は独立に別々の値をとることはできない。x に勝手な値を与えるならば、y は x の値によってとりうる値の制約を受けるからである。このことを以って、独立変数 x と従属変数 y が対応付けられると考えるとき、方程式 F(x, y) = 0 は x の関数 y を陰 (implicit) に定めるといい、y を x の陰伏関数または陰関数 (implicit function) という。これに対して、y = f(x) と表されるような関数関係を、y は x の陽関数 (explicit function) である、あるいは y は x で陽 (explicit) に表されているなどと言い表す。
陰伏的な関数関係が F(x, y) = 0 によって与えられていて、陽な関数関係 y = f(x) が適当な集合 D を定義域として F(x, f(x)) = 0 を満たすなら、この陽関数 y = f(x) は D 上で関係式 F(x, y) = 0 から陰伏的に得られるという。関数の概念を広くとらず、一価で連続である場合や一価正則な場合などに考察を限ることはしばしば行われることであるが、そのような仮定のもとでは陰関数から陰伏的に得られる陽関数は一つとは限らず、一般に一つの陰関数は(定義域や値域でより分けることにより)複数の陽関数に分解される。このとき、陰伏的に得られた個々の陽関数をもとの陰関数の枝という。また、陰関数の複数の枝を総じて扱うならば、陰関数の概念から多価関数の概念を得ることになる。例えば、方程式
y^2 - x^2 = 1
が定める陰関数 y は全域で 2 つの一価連続な枝
f_1(x) := \sqrt{1+x^2},
f_2(x) := -\sqrt{1+x^2}
をもつ二価関数である。
また、媒介変数を導入して関係式を分解し、各変数を媒介変数の陽関数として表すことによって、陰関数を表すこともある。例えば、方程式 2x − 3y = 0 は、媒介変数 t を導入して
\begin{cases}
x = 3t, \\
y = 2t
\end{cases}
と表すことができるが、これによって y と x の陰伏的な関数関係が表されていると考えるのである。
有限集合からの関数は実質的に数の組あるいは数列と呼ばれるものになる(適当な演算をいれてベクトルと見ることもできる)。それはつまり、集合の各元に序列を与えて {1, 2, ..., n} と並べるとき、k = 1, 2, ..., n に対して xk = x(k) を対応付ける関数 x を
(x_1,x_2,\ldots,x_n) \in \mathbb{R}^n
のかたちに表すのである。これは有限列であるが、無限列
(s_n)_{n\in\mathbb{N} \in \mathbb{R}^\mathbb{N}
を考えれば、それは各自然数 n に対して、数 sn を対応させる
s\colon \mathbb{N} \to \mathbb{R};\,n \mapsto s_n
という関数を考えていることに他ならない。もっと一般に数の族を考慮に入れれば、通常の実関数 f = f(x) を x を添字に持つ実数の族
(f_x)_{x\in\mathbb{R} \in \mathbb{R}^\mathbb{R}
と読みかえることができる。
関数を変数に取る関数はとくに汎関数 (functional) と呼ばれる。特にある集合上の関数の作るベクトル空間から係数体への線型写像を線型汎関数 (linear functional) という。文脈によっては単に汎関数といえば線型汎関数を指すこともある。たとえば積分
F(f)=\int_{-\infty}^\infty f(x)dx
は可積分関数 f を変数と見なして様々に取り替えることによって汎関数 F を与える。積分は線型性を持つから、F は線型汎関数である。
有限個の変数の組を考えることも関数の一種であったから、汎関数
\mathcal{F}(f)=\mathcal{F}(f(x))
\mathcal{F}\left((f_x)_{x\in\mathbb{R}\right)
と見なすことができる。また、有限次元ベクトル空間は基底を固定することにより、その座標で表される係数体の有限個の直積と同型であるから、そこからの汎関数は多変数関数
F(x_1,x_2,x_3, \ldots, x_n)
と同一視できる。
関数に対して数を対応付けるという汎関数の概念は、さらに関数に関数を対応付ける作用素の概念に一般化される。
シュワルツの超関数(分布、distribution)の理論は、汎関数の一種(コンパクトな台を持つ無限階微分可能関数の作る空間上の連続線型汎関数)として超関数を定義する。通常の局所可積分関数に測度を掛けて積分作用素として見ると、この意味で超関数と見なされる。
この様な連続線型汎関数を用いた定式化の方向で distribution よりも大きいクラスとしては、超分布 (ultradistribution) が知られている。
一方、佐藤の超関数(hyperfunction)は層係数コホモロジー等の代数的手法を用いて定義される。この代数的手法の解析学への導入により、線型微分方程式系の代数化である D 加群の理論等、代数解析学と呼ばれる分野が開かれた。以上の超関数のクラスは局所化可能、言い換えれば層を成すという事が重要である。
「函」が漢字制限による当用漢字に含まれなかったことから、1950年代以降同音の「関」へと書き換えがすすめられた。この他、「干数」案もあった。学習指導要領に「関数」が登場するのは中学校で1958年、高等学校で1960年であり、それまでは「函数」が用いられている但し、1958年の中学校学習指導要領では用語として「一次関数(一次函(かん)数)」と併記しており、「関数」のみになるのは1969年の中学校学習指導要領である。。「関数」表記は 1985 年頃までには日本の初等教育の段階でほぼ定着した。