函數
f
(
)
{\displaystyle f()}
就像機器或黑箱 ,給予輸入值
x
{\displaystyle x}
便產生唯一輸出值
f
(
x
)
{\displaystyle f(x)}
。
函數 (英語:Function )在數學 中為兩不為空集的集合 間的一種對應關係:輸入值集合中的每項元素皆能對應唯一 一項輸出值集合中的元素。例如實數
x
{\displaystyle x}
對應到其平方
x
2
{\displaystyle x^2}
的關係就是一個函數,若以
3
{\displaystyle 3}
作為此函數的輸入值,所得的輸出值便是
9
{\displaystyle 9}
。
為方便起見,一般做法是以符號
f
,
g
,
h
{\displaystyle f,g,h}
等等來指代一個函數。若函數
f
{\displaystyle f}
以
x
{\displaystyle x}
作為輸入值,則其輸出值一般寫作
f
(
x
)
{\displaystyle f(x)}
,讀作'f of x' 。上述的平方函數關係寫成數學式記為
f
(
x
)
=
x
2
{\displaystyle f(x)=x^2}
。函數的概念並不局限於數之間的映射關係,例如若定義函數
Capital
(
)
{\displaystyle \operatorname{Capital}()}
為每個國家當前的首都,那麼給予輸入值中國 就會輸出唯一值北京 :Capital ( C . N . ) = B e i J i n g {\displaystyle \operatorname{Capital}(\mathrm{C.N.}) = \mathrm{BeiJing}} 。 氣溫 的分佈也能用函數表達,以時間和地點作為參量輸入,以該時該地的溫度作為輸出。表達函數有多種方式,例如解析法是用數學式表達兩個變量之間的對應關係,圖像法是用坐標系 上的函數圖形 表達兩個變量之間的對應關係,列表法用表格表達兩個變量之間的對應關係。
現代數學中[1] ,函數所有輸入值的集合 被稱作該函數的定義域 ,而其輸出值所存在的集合稱為對應域 。其中值域 特指該函數的輸出值集合,意即對應域包含了值域,值域為對應域的子集 。通常輸入值稱作函數的參數 或參量 ,輸出值稱作函數的值 。函數將有效的輸入值變換為唯一的輸出值,同一輸入總是對應同一輸出,但反之未必成立。因此如
R
o
o
t
(
x
)
=
±
x
{\displaystyle \mathrm{Root}(x)=\pm\sqrt x}
這樣的表達式並沒有定義出一個函數,因為輸出值有兩個可能。定義函數時需確定每一個輸入值只對應唯一輸出值,因此必須明確地選擇一個平方根。例如定義
P
o
s
r
o
o
t
(
x
)
=
x
{\displaystyle \mathrm{Posroot}(x)=\sqrt x}
,亦即對於任何非負輸入值,選擇其非負平方根作為函數值。
函數可以看作機器或黑箱 ,通常最常見的函數的參數和函數值都是數字,其對應關係用函數式表示,函數值可以通過直接將參數值代入函數式得到。
f
(
x
)
=
x
2
{\displaystyle f(x)=x^2}
,
x
{\displaystyle x}
的平方即是函數值。也可以將函數很簡單的推廣到與多個參量相關的情況。例如
g
(
x
,
y
)
=
x
y
{\displaystyle g(x,y) = xy}
有兩個參量
x
{\displaystyle x}
和
y
{\displaystyle y}
,以乘積
x
y
{\displaystyle xy}
為值。將這兩個輸入看作一個有序對
(
x
,
y
)
{\displaystyle (x,y)}
。
g
{\displaystyle g}
即為以這個有序對
(
x
,
y
)
{\displaystyle (x,y)}
作參數的函數,而函數值是
x
y
{\displaystyle xy}
。函數能被抽象定義為某種數學關係 ,由於其定義的一般性,在幾乎所有的數學分支都是基礎概念。一些領域中比如在λ演算 中,函數可以是作為一個原始概念而不像在集合論 般有所定義。在大部分的數學領域內,術語對應 、映射 、轉換 通常是函數的近義詞。不過某些情況這些術語可能有別的特定意思,例如在拓撲學 中一個映射有時被定義成一個連續函數 。
定義
函數f 的部分圖像。每個實數的x 都與f (x ) = x 3 − 9x 相聯繫。
從輸入值集合
X
{\displaystyle X}
到可能的輸出值集合
Y
{\displaystyle Y}
的函數
f
{\displaystyle f}
(記作
f
:
X
→
Y
{\displaystyle f: X \to Y}
)是
X
{\displaystyle X}
與
Y
{\displaystyle Y}
的關係 ,滿足如下條件:
f
{\displaystyle f}
是完全 的:對集合
X
{\displaystyle X}
中任一元素
x
{\displaystyle x}
都有集合
Y
{\displaystyle Y}
中的元素
y
{\displaystyle y}
滿足
x
f
y
{\displaystyle x f y}
(
x
{\displaystyle x}
與
y
{\displaystyle y}
是
f
{\displaystyle f}
相關的)。即,對每一個輸入值,
y
{\displaystyle y}
中都有與之對應的輸出值。
f
{\displaystyle f}
是多對一 的:若
f
(
x
)
=
y
{\displaystyle f(x)=y}
且
f
(
x
)
=
z
{\displaystyle f(x)=z}
,則
y
=
z
{\displaystyle y=z}
。即,多個輸入可以映射到一個輸出,但一個輸入不能映射到多個輸出。
定義域中任一
x
{\displaystyle x}
在對應域中唯一對應的
y
{\displaystyle y}
記為
f
(
x
)
{\displaystyle f(x)}
。
比上面定義更簡明的表述如下:從
X
{\displaystyle X}
映射到
Y
{\displaystyle Y}
的函數
f
{\displaystyle f}
是
X
{\displaystyle X}
與
Y
{\displaystyle Y}
的直積
X
×
Y
{\displaystyle X \times Y}
的子集 。
X
{\displaystyle X}
中任一
x
{\displaystyle x}
都與
Y
{\displaystyle Y}
中的
y
{\displaystyle y}
唯一對應,且有序對
(
x
,
y
)
{\displaystyle (x,y)}
屬於
f
{\displaystyle f}
。
X
{\displaystyle X}
與
Y
{\displaystyle Y}
的關係若滿足條件(1),則為多值函數 。函數都是多值函數,但多值函數不都是函數。
X
{\displaystyle X}
與
Y
{\displaystyle Y}
的關係若滿足條件(2),則為偏函數 。函數都是偏函數,但偏函數不都是函數。除非特別指明,本條目中的「函數」總是指同時滿足以上兩個條件的關係。
考慮如下例子:
(1)一對多。
X 中的元素3與
Y 中的兩個元素
b 和
c 相關。因此這是
多值函數 ,而不是函數。
(2)一對一但非完全對應。
X 的元素1未與
Y 的任一元素相關。因此這是
偏函數 ,而
不是 函數。
(3)完全對應且多對一,因此這是從
X 到
Y 的函數。此函數可以表示為
f ={(1, d ), (2, d ), (3, c )},或
f
(
x
)
=
{
d
,
if
x
=
1
d
,
if
x
=
2
c
,
if
x
=
3
{\displaystyle f(x)=\left\{\begin{matrix} d, & \mbox{if }x=1 \\ d, & \mbox{if }x=2 \\ c, & \mbox{if }x=3\end{matrix}\right.}
函數的判別
除了利用函數的定義之外,還可以利用豎直判別法 ,即函數的圖形與任何一條平行於 y 軸的直線不能有一個以上的交點。
歷史
函數這個數學名詞是萊布尼茲 在1694年開始使用的,用來描述跟曲線 相關的一個量,如曲線的斜率 或者曲線上的某一點。萊布尼茲所指的函數現在被稱作可導函數 ,數學家之外的普通人一般接觸到的函數即屬此類。對於可導函數可以討論它的極限 和導數 ,此兩者描述了函數輸出值的變化同輸入值變化的關係,是微積分學 的基礎。中文的「函數 」一詞由清朝 數學家李善蘭 譯出。其《代數學》書中解釋:「凡此變數中函(包含)彼變數者,則此為彼之函數」。
1718年,約翰·伯努利 把函數定義為「一個變量的函數是指由這個變量和常數以任何一種方式組成的一種量。」
1748年,伯努利的學生歐拉 在《無窮分析引論》一書中說:「一個變量 的函數是由該變量和一些數或常數 以任何一種方式構成的解析表達式 」,例如
f
(
x
)
=
sin
(
x
)
+
x
2
{\displaystyle f(x)=\sin(x)+x^2}
。
1775年,歐拉在《微分學原理》一書中又提出了函數的一個定義:「如果某些量以如下方式依賴於另一些量,即當後者變化時,前者本身也發生變化,則稱前一些量是後一些量的函數。」
19世紀的數學家開始對數學的各個分支進行形式化。維爾斯特拉斯 倡議將微積分學建立在算術 ,而不是幾何 的基礎上,這種主張較趨向於歐拉的定義。
函數的定義得以擴展之後,數學家便能對一些「奇怪」的數學物件進行研究,例如處處不可導的連續函數。這些函數曾經被認為只具有理論價值,遲至20世紀初時它們仍被視作「怪物」。稍後,人們發現這些函數在對如布朗運動 之類的物理現象進行建模時有重要的作用。
到19世紀末,數學家開始嘗試利用集合論 來進行數學的形式化。他們試圖將每一個數學物件都定義為集合 。狄利克雷 給出了現代正式的函數定義(參見下文#正式定義 )。在他的定義下,函數被視作數學關係 的特例。然而對於實際應用的情況,現代定義和歐拉定義的區別可以忽略不計。
表示方法
分段函數
分段函數 (德語:Abschnittsweise definierte Funktion ),在定義域內不同部分上,有不同的解析表達式,這樣的函數通常叫分段函數。分段實際上是一種表達函數的方式,而不是函數本身的一個特徵,但是具有額外的限定,可以描述函數的本質。
函數圖形
函數
f
{\displaystyle f}
在平面上的圖形是點對
(
x
,
f
(
x
)
)
{\displaystyle (x,f(x))}
的集合,其中
x
{\displaystyle x}
取遍定義域 上的所有成員。函數圖形可以幫助理解證明一些定理。
注意函數圖形可以有兩個定義:一是三元組
(
X
,
Y
,
G
)
{\displaystyle (X,Y,G)}
,其中
X
{\displaystyle X}
是函數的定義域,
Y
{\displaystyle Y}
是函數的對應域,
G
{\displaystyle G}
是關係的圖 ;二是索性以關係的圖定義。用第二個定義則函數
f
{\displaystyle f}
等於其圖形。
單射、滿射與對射函數
單射 函數,將不同的輸入值映射到不同的函數值。即:若
x
{\displaystyle x}
和
y
{\displaystyle y}
屬於定義域,則僅當
x
=
y
{\displaystyle x = y}
時有
f
(
x
)
=
f
(
y
)
{\displaystyle f(x)= f(y)}
。
滿射 函數,其值域即為其對應域。即:對於映射
f
{\displaystyle f}
的對應域中之任意
y
{\displaystyle y}
,都存在至少一個
x
{\displaystyle x}
滿足
f
(
x
)
=
y
{\displaystyle f(x)= y}
。
對射 函數,既是單射的又是滿射的函數。也叫一一對應 、對射。對射函數經常被用於表明集合
X
{\displaystyle X}
和
Y
{\displaystyle Y}
是等勢 的,即有一樣的基數 。如果在兩個集合 之間可以建立一個一一對應 ,則說這兩個集合等勢。
定義域與值域、對應域
定義域:原像集,自變量的取值集合。
值域:像集,應變量的取值集合。
對應域:值域所屬的全集。
像和原像
元素
x
∈
X
{\displaystyle x\in X}
在
f
{\displaystyle f}
之下的像 就是
f
(
x
)
{\displaystyle f(x)}
。
子集
A
⊂
X
{\displaystyle A\subset X}
在
f
{\displaystyle f}
之下的像,是以
A
{\displaystyle A}
的元素的像所組成的集合,為
Y
{\displaystyle Y}
的一個子集,即
f
(
A
)
:=
{
f
(
x
)
:
x
∈
A
}
{\displaystyle f(A) := \{f(x) : x \in A\}}
。
注意
f
{\displaystyle f}
的值域就是定義域
X
{\displaystyle X}
的像
f
(
X
)
{\displaystyle f(X)}
。在#正式定義 一節的最後例子中,
{
2
,
3
}
{\displaystyle \{2,3\}}
在
f
{\displaystyle f}
的像是
f
(
{
2
,
3
}
=
{
c
,
d
}
{\displaystyle f(\{2, 3\}=\{c, d\}}
,而
f
{\displaystyle f}
的值域是
{
c
,
d
}
{\displaystyle \{c, d\}}
。
根據此定義,
f
{\displaystyle f}
可引申成為由
X
{\displaystyle X}
的冪集 (由
X
{\displaystyle X}
的子集組成的集)到
Y
{\displaystyle Y}
的冪集之函數,亦記作
f
{\displaystyle f}
。
子集
B
⊂
Y
{\displaystyle B \subset Y}
在
f
{\displaystyle f}
的原像 (或逆像 )是如下定義的
X
{\displaystyle X}
的子集:
f
−
1
(
B
)
:=
{
x
∈
X
:
f
(
x
)
∈
B
}
{\displaystyle f^{-1}(B):=\{x \in X : f(x)\in B\}}
。
沿用同一例子,我們可以看到
{
a
,
b
}
{\displaystyle \{a, b\} }
的原像是
f
−
1
(
{
a
,
b
}
)
=
∅
{\displaystyle f^{-1}(\{a, b\}) = \varnothing}
,即空集 。
根據此定義,
f
−
1
(
x
)
{\displaystyle f^{-1}(x)}
是由
Y
{\displaystyle Y}
的冪集到
X
{\displaystyle X}
的冪集之函數。
以下是
f
{\displaystyle f}
及
f
−
1
{\displaystyle f^{-1}}
的一些特性:
f
(
A
1
∪
A
2
)
=
f
(
A
1
)
∪
f
(
A
2
)
{\displaystyle f(A_{1} \cup A_{2}) = f(A_{1}) \cup f(A_{2})}
;
f
(
A
1
∩
A
2
)
⊆
f
(
A
1
)
∩
f
(
A
2
)
{\displaystyle f(A_{1} \cap A_{2}) \subseteq f(A_{1}) \cap f(A_{2})}
;
f
(
B
1
∪
B
2
)
=
f
−
1
(
B
1
)
∪
f
−
1
(
B
2
)
{\displaystyle f(B_{1} \cup B_{2}) = f^{-1}(B_{1}) \cup f^{-1}(B_{2})}
;
f
−
1
(
B
1
∩
B
2
)
=
f
−
1
(
B
1
)
∩
f
−
1
(
B
2
)
{\displaystyle f^{-1}(B_{1} \cap B_{2}) = f^{-1}(B_{1}) \cap f^{-1}(B_{2})}
;
f
−
1
(
f
(
B
)
)
⊆
B
{\displaystyle f^{-1}(f(B)) \subseteq B}
;
f
−
1
(
f
(
A
)
)
⊇
A
{\displaystyle f^{-1}(f(A)) \supseteq A}
。
這些特性適合定義域的任意子集
A
,
A
1
{\displaystyle A, A_{1}}
及
A
2
{\displaystyle A_{2}}
和對應域的任意子集
B
,
B
1
{\displaystyle B, B_{1}}
及
B
2
{\displaystyle B_{2}}
,甚至可推廣到任意子集群的交集 和併集 。
函數範例
首都之於國家(若不把多首都國[1] 計算在內)。
每個自然數
n
{\displaystyle n}
的平方
n
2
{\displaystyle n^2}
是
n
{\displaystyle n}
的函數。
對數函數 。
ln
x
{\displaystyle \ln x}
是正 實數
x
{\displaystyle x}
的函數。注意,雖然可以把對數函數推廣到複數情況,但結果就不是函數了,而是多值函數。
對每個在
R
2
{\displaystyle \R^2}
平面上的點,其和原點
(
0
,
0
)
{\displaystyle (0, 0)}
的距離是確定的。
常用的數學函數包括多項式函數 、根式函數 、冪函數 、對數函數 、有理函數 、三角函數 、反三角函數 等。它們都是初等函數 。非初等函數(或特殊函數 )包括伽馬函數 和貝索函數 等。
函數的分類
函數可分為
複合函數
函數
f
:
X
→
Y
{\displaystyle f: X \to Y}
及
g
:
Y
→
Z
{\displaystyle g: Y \to Z}
的複合函數 是
g
∘
f
:
X
→
Z
:
f
(
g
∘
f
)
(
x
)
=
g
(
f
(
x
)
)
{\displaystyle g\circ f: X \to Z :f(g\circ f)(x) = g(f(x))}
。
舉例,飛機在
t
{\displaystyle t}
時刻的高度是
h
(
t
)
{\displaystyle h(t)}
,而高度
x
{\displaystyle x}
處的氧氣濃度是
c
(
x
)
{\displaystyle c(x)}
,則在
t
{\displaystyle t}
時刻飛機周圍的氧氣濃度是
(
c
∘
h
)
(
t
)
{\displaystyle (c\circ h)(t)}
若
Y
⊂
X
{\displaystyle Y\subset X}
則
f
{\displaystyle f}
可自我複合;此時複合函數可記作
f
2
{\displaystyle f^{ 2}}
(不要與三角學 的符號混淆)。函數的冪 的定義是對自然數
n
{\displaystyle n}
有
f
n
+
1
=
f
n
∘
f
=
f
∘
f
n
{\displaystyle f^{n+1} = f^{n} \circ f = f \circ f^{ n}}
反函數
對一個函數f : X →Y ,若值域Y 中任何一個元素y 的原象是唯一的,那麼這個函數就被稱為是對射 的。對任意的y ∈Y 到它的原象ƒ−1 (y ) 的映射,我們稱之為f 的反函數,記為f −1 。
舉一個反函數的例子,比如ƒ (x ) = x 3 ,它的反函數是ƒ−1 (x ) = x 3 {\displaystyle \sqrt[ 3 ]{ x} } 。同樣,2x 的反函數是x / 2 。反函數是一個函數,它能夠「抵消」它的原函數,並具有和原函數相同的單調性 。參見逆映射 。
函數的限制及擴張
給出
Y
{\displaystyle Y}
的子集
X
{\displaystyle X}
以及函數
f
:
Y
→
Z
{\displaystyle f:Y\rightarrow Z}
,
則
f
|
X
:
X
→
Z
{\displaystyle f|_X:X\rightarrow Z}
f
|
X
(
x
)
=
f
(
x
)
{\displaystyle f|_X(x)=f(x)}
稱為
f
{\displaystyle f}
在
X
{\displaystyle X}
的限制 。
反之,若給出函數
g
:
X
→
Z
{\displaystyle g:X\to Z}
當一個定義在
Y
{\displaystyle Y}
的函數
f
:
Y
→
Z
{\displaystyle f:Y\to Z}
有
f
|
X
=
g
{\displaystyle f|_X=g}
,
f
{\displaystyle f}
就是
g
{\displaystyle g}
的擴張 。
點態運算
設函數f : X → R 及g : X → R 有X 為共同的定義域及環 R 為共同的對應域。我們可以定義「函數和」f + g : X → R 及「函數積」f ×g :X → R 如下:
(f + g ) (x ) := ƒ (x ) + g (x );
f ×g (x ) := ƒ (x )×g (x );
對於所有X 中的x 。
這樣子我們得出一個函數組成的環。這是一個抽象性擴張的例子,由此我們從較簡單的結構得出更複雜的。
若然用別的代數結構 A 代替R ,得出的由X 到A 的函數集會類似地擁有和A 相同的代數結構。
歧義函數
歧義函數,也稱多值函數 ,指有輸出值多於一個的情況。例如,4的平方根 可以是2或者-2,而兩者的平方 皆是4。
嚴格來說,歧義函數不完全算是函數,因為數學函數的定義對於一個輸入值只能有唯一一個輸出值。實際上,這樣的「函數」通常被稱為關係式 。複變函數 理論採用黎曼面 處理函數多值的困境。
一元函數
設 D 是實數集 R 中的非空子集,稱映射 f : D -> R 為定義在 D 上的一元函數 。
多元函數
多元函數(n -元函數)是指輸入值為n -元組 的函數。或者說,若一函數的輸入值域為n 個集合的笛卡爾積 的子集,這函數就是n -元函數。例如,距離函數dist ((x ,y ))是一個二元函數,輸入值是由兩個點組成的序對。另外,多複變函數 (即輸入值為複數的多元組)是一個重要的數學課題。
在抽象代數 中,運算元 其實都是函數,如乘法"*"是個二元函數:當我們寫x *y 時,其實是用上了*(x ,y )的中綴表示法 。
函數式程式設計 是一個以函數概念為中心的重要理論範式,其中的運算物件為多元函數 ,基本語法 基於λ演算 ,而函數的複合 則採用代換 來完成。特別地,通過一種稱為柯里化 的轉換,可將多元函數轉換為一元函數。
可計算和不可計算函數
所有從整數到整數的可計算函數 的個數是可數 的,這是因為所有可能的算法個數是可數的。從整數到整數的函數個數要更多些-和實數 個數一樣多,也就是說是等勢 的。這說明有些從整數到整數的函數是不可計算的。關於不可計算函數,請參看停機問題 和萊斯定理 ,OEIS 中有一個經典的例子: A102288 。
範疇論觀點下的函數
在範疇論 中,函數的槪念被推廣為態射 的槪念。
一個範疇 包括一組物件與一組態射,每一個態射是個三元組(X , Y , f ),X 稱為源物件(定義域的類比),Y 稱為目標物件(對應域的類比),而源物件與目標物件是範疇內的物件。基於這種解釋,可以把函數看作集合範疇 裏面的態射。
參考文獻
外部連結