# 0.2 函數
如同集合,函數也是在數學中無所不在的概念;本節簡單介紹函數的基本術語、運算及反函數。
## 基本術語
函數是集合之間的一種對應關係。
:::warning
**定義0.2.1(函數)**
從集合$A$至集合$B$的<font color=red>函數(function)</font>將每個$A$中的元素對應到恰一個$B$中的元素;
其中,$A$稱為函數的定義域(domain),而$B$稱為對應域(codomain)。
若函數$f$將元素$x$對應到元素$y$,則稱$y$為$f$在$x$的函數值(function value),記$y=f(x)$。
若函數$f$與函數$g$具有相同的定義域$D$,而且對任意$D$中的元素$x$而言$$f(x)=g(x)$$ 則稱$f$與$g$相等,記作$f=g$。
:::
刻畫一個函數須指出其定義域,以及定義域中每個元素的對應值;當函數$f$的定義域為$D$時,稱$f$「定義於$D$上」。函數又稱作映射(mapping),可以想像成一台機器:定義域中的元素是原料,經由函數處理後會得到唯一的產品,即對應域中的元素。
:::info
**範例0.2.2**
蒐集五個人的身高體重數據:
| 身高(公分) | $152$ | $161$ | $164$ | $170$ | $175$ |
| :-------: | :---: | :---: | :---: | :---: | :---: |
| 體重(公斤) | $45$ | $53$ | $53$ | $69$ | $78$ |
令$A=\{152,161,164,170,175\}$,$B=\{45,53,69,78\}$。
因為每個身高數值均對應到恰一個體重數值,所以可以根據表格定義從$A$至$B$的函數$f$:
$$f(152)=45,\quad f(161)=53,\quad f(164)=53,\quad f(170)=69,\quad f(175)=78$$ 然而,由於$53$公斤的體重對應到不只一個身高數值,無法依照表格定義從$B$至$A$的函數。
:::
:::warning
**定義0.2.3(像 & 原像)**
令$f$為從集合$A$至集合$B$的函數,而$S,T$分別是$A,B$的子集合。
集合$\{f(x):x\in S\}$稱為$S$在$f$之下的<font color=red>像(image)</font>,記作$f(S)$;
集合$\{x\in A:f(x)\in T\}$稱為$T$在$f$之下的<font color=red>原像(inverse image)</font>,記作$f^{-1}(T)$。
當$x\in A$時,將$f(\{x\})$簡記成$f(x)$,稱其為$x$在$f$之下的像;
當$y\in B$時,$f^{-1}(\{y\})$簡記成$f^{-1}(y)$,稱為$y$在$f$之下的原像。
特別地,$f(A)$又稱作$f$的值域(range)。
:::
根據定義,$f$的值域包含於對應域;當兩者相等時,稱$f$為映成(onto)函數。另外,$f^{-1}(y)$可能是空集合,此時沒有元素對應到$y$;不過只要$y$是$f$值域中的元素,$f^{-1}(y)$就會非空。
在微積分中我們經常考慮實函數(real function),其定義域與值域皆為實數集合的子集合。
為了方便,之後都會用$\mathbb{R}$表示實數集合。
:::info
**範例0.2.4**
下列函數均為實函數。前五個實函數的定義域都是$\mathbb{R}$,最後一個則定義於非負整數集合上。
1. 恆等函數(Identity function):$f(x)=x$
2. 常數函數(Constant function):$f(x)=c$
3. 線性函數(Linear function):$f(x)=ax+b$
4. 冪函數(Power function):$f(x)=x^n$
5. 多項式函數(Polynomial function):$f(x)=c_0+c_1x+\cdots+c_nx^n$
6. 階乘函數(Factorial function):$f(k)=k!$,其中$k!=1\times \cdots\times k$、$0!=1$
在此$n$為固定的非負整數,而$a,b,c$以及所有的$c_i$均為固定實數。
每個方程式均反映了定義域中元素的對應方式。
:::
注意到恆等函數、常數函數、線性函數和冪函數都是多項式函數的特例。
有時會把函數的定義域拆解成數個子集合,分別描述各個子集合中元素的對應規則。
這種分段定義的函數稱為分段函數(piecewise function)。
:::info
**範例0.2.5**
下列函數是一個定義於$\mathbb{R}$上的分段函數:
$$f(x) = \begin{cases}
x, &x\geq 0\\
0, &x<0
\end{cases}$$ 這個函數的值域為$\{x:x\geq 0\}$,而$f^{-1}(0) = \{x:x\leq 0\}$。
:::
## 函數的運算
基於實函數的函數值是實數,我們能夠自然地對實函數做四則運算。
:::warning
**定義0.2.6(實函數的四則運算)**
給定具有相同定義域$D$的實函數$f,g$,函數<font color=red>$f+g$</font>、<font color=red>$f-g$</font>、<font color=red>$fg$</font>、<font color=red>$f/g$</font>的定義分別如下:
\begin{alignat}{2}
(f+g)(x) &= f(x)+g(x),\quad &&其中\ x\in D\\
(f-g)(x) &= f(x)-g(x),\quad &&其中\ x\in D\\
(fg)(x) &= f(x)g(x),\quad &&其中\ x\in D\\
(f/g)(x) &= f(x)/g(x),\quad &&其中\ x\in D\ 且\ g(x)\neq 0
\end{alignat} $f+g$、$f-g$和$fg$的定義域皆為$D$,而$f/g$的定義域則是$D\setminus \{x: g(x)=0\}$。
:::
除此之外,函數還能進行合成。
:::warning
**定義0.2.7(合成函數)**
令$f,g$為函數,假設$g$的值域包含於$f$的定義域。
<font color=red>合成函數(Composite function)</font>$f\circ g$定義於$g$的定義域上,滿足
$$(f\circ g)(x) = f(g(x))$$ 其中$x$為$g$定義域中的元素。
:::
為了確保$f(g(x))$有意義,須假設$g$的值域包含於$f$的定義域。注意到函數的合成不僅限於實函數,但函數做四則運算的前提是值域中的元素能加減乘除。
:::info
**範例0.2.8**
考慮兩個定義於$\mathbb{R}$上的函數:$f(x)=x+1$、$g(x)=x^2$。那麼
$$(f\circ g)(x) = x^2+1,\quad (g\circ f)(x) = (x+1)^2 = x^2+2x+1$$ 這兩個合成函數的定義域均為$\mathbb{R}$。
:::
範例0.2.8顯示$f\circ g$未必等於$g\circ f$,這說明了函數合成不遵守交換律。
不過,函數合成仍然遵守結合律。
:::danger
**命題0.2.9**
對任意的函數$f,g,h$而言,只要$(f\circ g)\circ h$和$f\circ (g\circ h)$皆有意義,兩者便會相等。
:::
:::success
**證明**
任意給定函數$f,g,h$,假設$(f\circ g)\circ h$和$f\circ (g\circ h)$皆有意義。
$(f\circ g)\circ h$的定義域為$h$的定義域,而$f\circ (g\circ h)$的定義域為$g\circ h$的定義域;
因為$g\circ h$的定義域就是$h$的定義域,所以$(f\circ g)\circ h$與$f\circ (g\circ h)$具有相同的定義域。
又對任意$h$定義域中的元素$x$而言,
$$((f\circ g)\circ h)(x) = (f\circ g)(h(x)) = f(g(h(x))) = f((g\circ h)(x)) = (f\circ (g\circ h))(x)$$ 因此根據定義,$(f\circ g)\circ h$與$f\circ (g\circ h)$相等。
:::
特別留意「$f\circ (g\circ h)$有意義」不保證「$(f\circ g)\circ h$有意義」。比方說,考慮下列函數$f,g,h$:
* $f$把$0$對應到$0$;
* $g$把$1$對應到$0$,把$2$對應到$1$;
* $h$把每個實數都對應到$1$。
那麼$f\circ (g\circ h)$是把所有實數對應到$0$的函數,但$(f\circ g)\circ h$無意義。
因此,命題0.2.9中合成函數的存在前提是必要的。
## 反函數
在範例0.2.5中,原像$f^{-1}(0)$含有多個元素,這是因為函數定義只排除「一對多」的對應關係,而未排除「多對一」的對應關係。一對一函數進一步否決了多對一關係。
:::warning
**定義0.2.10(一對一函數)**
令$f$為定義於集合$D$上的函數。若$f$滿足下列條件,則稱$f$為<font color=red>一對一(one-to-one)函數</font>:
對任意$D$中的元素$x_1,x_2$而言,只要$f(x_1)=f(x_2)$,便保證$x_1=x_2$。
:::
先前提過當$y$是$f$值域中的元素時,$f^{-1}(y)$非空;若$f$又是一對一函數,$f^{-1}(y)$會由單一元素構成。如此一來,我們便能在一對一函數的值域上定義新函數。
:::warning
**定義0.2.11(反函數)**
令$f$為定義於集合$D$上的一對一函數。
$f$的<font color=red>反函數(inverse function)</font>定義於$f(D)$上,將$f(D)$中的元素$y$對應到$f^{-1}(y)$中的元素;
用$f^{-1}$表示$f$的反函數。
:::
在前後文清楚的情況下,$f^{-1}$在$y$的函數值也記成$f^{-1}(y)$。
:::info
**範例0.2.12**
令$f(x)=2x+1$為定義於$\mathbb{R}$上的函數。
不難驗證$f$是值域為$\mathbb{R}$的一對一函數;故$f$的反函數$f^{-1}$存在,定義域也是$\mathbb{R}$。
因為實數$y$在$f$之下的原像為
$$\left\lbrace x:2x+1=y\right\rbrace = \left\lbrace \frac{y-1}{2}\right\rbrace$$ 所以$f^{-1}(y)=(y-1)/2$。
:::
:::info
**範例0.2.13**
令$f(x)=x^2$為定義於$\mathbb{R}$上的函數。
由於$f(1)$和$f(-1)$都等於$1$,$f$不是一對一函數,無法定義$f$的反函數。
不過,若將$f$的定義域限縮至非負實數集合,則可定義$f^{-1}(y) = \sqrt{y}$,$y$為非負實數。
:::
給定一對一函數$f$,令$x,y$分別為$f,f^{-1}$定義域中的元素。
* 因為$f(x)$在$f$之下的原像就是$\{x\}$,所以$f^{-1}(f(x))=x$。
* 反之,因為$f^{-1}(y)$屬於$y$在$f$之下的原像,所以$f(f^{-1}(y))=y$。
由此可推得以下性質:
:::danger
**命題0.2.14**
對任意的一對一函數$f$而言,$f^{-1}\circ f$與$f\circ f^{-1}$皆為恆等函數。
:::
:::success
**證明**
任意給定一對一函數$f$,設其定義域為$D$。
由於$f^{-1}$的定義域為$f(D)$,$f^{-1}$的值域為
$$f^{-1}(f(D)) = \{f^{-1}(y): y\in f(D)\} = \{f^{-1}(f(x)): x\in D\} = \{x:x\in D\} = D$$ 既然$f$的值域就是$f^{-1}$的定義域,$f^{-1}$的值域就是$f$的定義域,$f^{-1}\circ f$和$f\circ f^{-1}$皆有意義。
此外,從前述觀察得知
\begin{alignat}{2}
(f^{-1}\circ f)(x) &= f^{-1}(f(x)) = x,\quad &&x\in D\\
(f\circ f^{-1})(y) &= f(f^{-1}(y)) = y,\quad &&y\in f(D)
\end{alignat} 因此,$f^{-1}\circ f$與$f\circ f^{-1}$皆為恆等函數。
:::