函數 (英語:function )是數學 描述對應關係的一種特殊集合 ;粗略地說,從集合X 到集合Y 的函數將Y 的一個元素恰好分配給X 的每個元素[ 2] 。集合X 稱為函數的定義域 [ 3] ,集合Y 稱為函數的對應域 。[ 4]
此條目介紹的是數學中的函數。關於程式設計中的函數,請見「
子程式 」。
函數
f
{\displaystyle f}
就像機器或黑箱 ,給予輸入值
x
{\displaystyle x}
便產生唯一輸出值
f
(
x
)
{\displaystyle f(x)}
函數最初是一個變化的量如何依賴另一個量的理想化。例如,特定時間行星的位置可以視為是行星的位置對時間的函數。從歷史上看,這個概念是在17世紀末用無窮微積分來闡述的,直到19世紀,所考慮的函數都是可微的。函數的概念於19世紀末在集合論中被形式化,這大大擴展了這個概念的應用領域。
將形狀映射到其顏色的函數
若
x
{\displaystyle x}
是實數 ,以有序對
(
x
,
x
2
)
{\displaystyle (x,\,x^{2})}
為元素所構成的集合就是一個函數。直觀上代表「輸入」
x
{\displaystyle x}
就可以得到唯一值
x
2
{\displaystyle x^{2}}
的對應關係。
一般會以英文字母
f
,
g
,
h
{\displaystyle f,\,g,\,h}
表示函數,並把
x
{\displaystyle x}
依據函數
f
{\displaystyle f}
的對應規則所得到的值寫作
f
(
x
)
{\displaystyle f(x)}
,並讀作「f of x 」。函數的概念不限於數之間的對應關係,例定義函數
Capital
{\displaystyle \operatorname {Capital} }
為世界上所有國家跟它現在的首都的對應關係,那輸入英國 就會輸出唯一值倫敦 :
Capital
(
U
.
K
.
)
=
L
o
n
d
o
n
{\displaystyle \operatorname {Capital} (\mathrm {U.K.} )=\mathrm {London} }
。
直觀上的「多變數函數」其實也可以概括到一般函數的定義裡。例如算式
x
×
y
{\displaystyle x\times y}
有兩個實數參數
x
{\displaystyle x}
和
y
{\displaystyle y}
。可以將這兩個參數看作一個實數有序對
(
x
,
y
)
{\displaystyle (x,y)}
,然後定義一個以
(
(
x
,
y
)
,
x
×
y
)
{\displaystyle ((x,\,y),\,x\times y)}
為元素所構成的函數
f
{\displaystyle f}
,然後把
f
[
(
x
,
y
)
]
=
x
×
y
{\displaystyle f[(x,\,y)]=x\times y}
簡記成符合直觀的
f
(
x
,
y
)
=
x
×
y
{\displaystyle f(x,\,y)=x\times y}
。
數學中,對應 、映射 、轉換 通常都是函數的別稱,但也可能有別的意思,如在拓撲學 的映射有時代表的是連續函數 。
在類型論 的λ演算 中,「對應關係」可以是作為一個原始概念(也就是無定義名詞),而不像上述的定義把函數視為集合 的衍伸物。
函數的值域 或像 是定義域 中所有元素的像 之集合。[ 5] [ 6] [ 7] [ 8]
函數這個數學名詞是萊布尼茲 在1694年開始使用的,用來描述跟曲線 相關的一個量,如曲線的斜率 或者曲線上的某一點。萊布尼茲所指的函數現在被稱作可導函數 ,數學家之外的普通人一般接觸到的函數即屬此類。對於可導函數可以討論它的極限 和導數 ,此兩者描述了函數輸出值的變化同輸入值變化的關係,是微積分學 的基礎。中文的「函數 」一詞由清朝 數學家李善蘭 譯出。其《代數學》書中解釋:「凡此變數中函(包含)彼變數者,則此為彼之函數」。
1718年,約翰·伯努利 把函數定義為「一個變量的函數是指由這個變量和常數以任何一種方式組成的一種量。」
1748年,伯努利的學生歐拉 在《無窮分析引論》一書中說:「一個變量 的函數是由該變量和一些數或常數 以任何一種方式構成的解析表達式 」,例如
f
(
x
)
=
sin
(
x
)
+
x
2
{\displaystyle f(x)=\sin(x)+x^{2}}
。
1775年,歐拉在《微分學原理》一書中又提出了函數的一個定義:「如果某些量以如下方式依賴於另一些量,即當後者變化時,前者本身也發生變化,則稱前一些量是後一些量的函數。」
19世紀的數學家開始對數學的各個分支進行形式化。維爾斯特拉斯 倡議將微積分學建立在算術 ,而不是幾何 的基礎上,這種主張較趨向於歐拉的定義。
函數的定義得以擴展之後,數學家便能對一些「奇怪」的數學物件 進行研究,例如處處不可導的連續函數。這些函數曾經被認為只具有理論價值,遲至20世紀初時它們仍被視作「怪物」。稍後,人們發現這些函數在對如布朗運動 之類的物理現象進行建模時有重要的作用。
到19世紀末,數學家開始嘗試利用集合論 來進行數學的形式化。他們試圖將每一個數學物件都定義為集合 。狄利克雷 給出了現代正式的函數定義(參見下文#正式定義 )。在他的定義下,函數被視作數學關係 的特例。然而對於實際應用的情況,現代定義和歐拉定義的區別可以忽略不計。
函數f 的部分圖像。每個實數的x 都與f (x ) = x 3 − 9x 相聯繫
定義 —
二元關係
f
{\displaystyle f}
若滿足:
(
∀
x
)
(
∀
y
)
(
∀
y
′
)
{
[
(
⟨
x
,
y
⟩
∈
f
)
∧
(
⟨
x
,
y
′
⟩
∈
f
)
]
⇒
(
y
=
y
′
)
}
{\displaystyle (\forall x)(\forall y)(\forall y^{\prime })\{\,[\,(\langle x,\,y\rangle \in f)\wedge (\langle x,\,y^{\prime }\rangle \in f)\,]\Rightarrow (y=y^{\prime })\,\}}
則稱為
f
{\displaystyle f}
為一函數。
(為了避免
(
x
,
y
)
{\displaystyle (x,\,y)}
的括弧與邏輯 敘述的括弧混淆,也會用
⟨
x
,
y
⟩
{\displaystyle \langle x,\,y\rangle }
來表示有序對 )
也就是直觀上,有序對
(
x
,
y
)
{\displaystyle (x,\,y)}
代表(輸入值 , 輸出值 );而
f
{\displaystyle f}
本身是以窮舉所有(輸入值 , 輸出值 )來詳盡定義的對應規則,且每個輸入值只能對應一個輸出值 。
習慣上把
(
x
,
y
)
∈
f
{\displaystyle (x,\,y)\in f}
「等價地」記為
y
=
f
(
x
)
{\displaystyle y=f(x)}
。但嚴謹來說,
f
(
x
)
{\displaystyle f(x)}
是在一階邏輯 公理化集合論 下額外新增的雙元函數符號 (因為
x
{\displaystyle x}
與
f
{\displaystyle f}
各為一個變數),而它的「定義」就是以下連帶額外增加的公理:
公理 —
[
¬
(
B
∧
C
)
∧
(
f
(
x
)
=
∅
)
]
∨
[
(
B
∧
C
)
∧
(
⟨
x
,
f
(
x
)
⟩
∈
f
)
]
{\displaystyle [\,\neg ({\mathcal {B}}\wedge {\mathcal {C}})\wedge (f(x)=\varnothing )\,]\vee [\,({\mathcal {B}}\wedge {\mathcal {C}})\wedge (\langle x,\,f(x)\rangle \in f)\,]}
其中:
B
:=
(
∀
x
)
(
∀
y
)
(
∀
y
′
)
{
[
(
⟨
x
,
y
⟩
∈
f
)
∧
(
⟨
x
,
y
′
⟩
∈
f
)
]
⇒
(
y
=
y
′
)
}
{\displaystyle {\mathcal {B}}:=(\forall x)(\forall y)(\forall y^{\prime })\{\,[\,(\langle x,\,y\rangle \in f)\wedge (\langle x,\,y^{\prime }\rangle \in f)\,]\Rightarrow (y=y^{\prime })\,\}}
(
f
{\displaystyle f}
的每個輸入值只能對應一個輸出值)
C
:=
(
∃
y
)
(
⟨
x
,
y
⟩
∈
f
)
{\displaystyle {\mathcal {C}}:=(\exists y)(\langle x,\,y\rangle \in f)}
(
x
{\displaystyle x}
在
f
{\displaystyle f}
規定的輸入值範圍內)
更多資訊 假設有 ...
新增公理的合理性
假設有
B
∧
C
{\displaystyle {\mathcal {B}}\wedge {\mathcal {C}}}
,此時對公式
B
{\displaystyle {\mathcal {B}}}
套用量詞公理A4 有:
(
∀
y
)
(
∀
y
′
)
{
[
(
⟨
x
,
y
⟩
∈
f
)
∧
(
⟨
x
,
y
′
⟩
∈
f
)
]
⇒
(
y
=
y
′
)
}
{\displaystyle (\forall y)(\forall y^{\prime })\{\,[\,(\langle x,\,y\rangle \in f)\wedge (\langle x,\,y^{\prime }\rangle \in f)\,]\Rightarrow (y=y^{\prime })\,\}}
這樣綜合上式和
C
{\displaystyle {\mathcal {C}}}
就有:
(
∃
!
y
)
(
⟨
x
,
y
⟩
∈
f
)
{\displaystyle (\exists !y)(\langle x,\,y\rangle \in f)}
換句話說:
B
∧
C
⊢
(
∃
!
y
)
(
⟨
x
,
y
⟩
∈
f
)
{\displaystyle {\mathcal {B}}\wedge {\mathcal {C}}\vdash (\exists !y)(\langle x,\,y\rangle \in f)}
這樣根據特定條件下的存在性 就有:
⊢
(
∃
!
y
)
{
[
¬
(
B
∧
C
)
∧
(
y
=
∅
)
]
∨
[
(
B
∧
C
)
∧
(
⟨
x
,
y
⟩
∈
f
)
]
}
{\displaystyle \vdash (\exists !y)\{\,[\,\neg ({\mathcal {B}}\wedge {\mathcal {C}})\wedge (y=\varnothing )\,]\vee [\,({\mathcal {B}}\wedge {\mathcal {C}})\wedge (\langle x,\,y\rangle \in f)\,]\,\}}
這樣根據函數符號與唯一性 的內容,就可以於策梅洛-弗蘭克爾集合論 增加上述的公理與雙元函數符號
f
(
x
)
{\displaystyle f(x)}
,且新增這個公理的新理論等效於原來的理論。
關閉
直觀上,這個公理表示「若
f
{\displaystyle f}
為一函數且
x
{\displaystyle x}
在
f
{\displaystyle f}
的輸入值範圍,則
⟨
x
,
f
(
x
)
⟩
∈
f
{\displaystyle \langle x,\,f(x)\rangle \in f}
;否則規定
f
(
x
)
{\displaystyle f(x)}
為空集 」。
這樣根據函數符號與唯一性的定理(E) ,就會有本節一開始所說的直觀性質:
B
∧
C
⊢
(
∀
y
)
{
[
y
=
f
(
x
)
]
⇔
[
⟨
x
,
y
⟩
∈
f
]
}
{\displaystyle {\mathcal {B}}\land {\mathcal {C}}\vdash (\forall y)\{\,[\,y=f(x)\,]\Leftrightarrow [\,\langle x,\,y\rangle \in f\,]\,\}}
也就是「若
f
{\displaystyle f}
為一函數且
x
{\displaystyle x}
在
f
{\displaystyle f}
的輸入值範圍,則對所有的
y
{\displaystyle y}
,
⟨
x
,
y
⟩
∈
f
{\displaystyle \langle x,\,y\rangle \in f}
等價於
y
=
f
(
x
)
{\displaystyle y=f(x)}
」。
對於「n變數」的函數,也就是以
(
(
x
1
,
⋯
,
x
n
)
,
y
)
{\displaystyle ((x_{1},\,\cdots ,\,x_{n}),\,y)}
為元素的函數
f
{\displaystyle {\mathcal {f}}}
,習慣上會把以下的項
f
[
(
x
1
,
⋯
,
x
n
)
]
{\displaystyle f[(x_{1},\cdots ,\,x_{n})]}
進一步簡寫為
f
(
x
1
,
⋯
,
x
n
)
{\displaystyle f(x_{1},\cdots ,\,x_{n})}
如果能指出函數
f
{\displaystyle f}
的「輸入值範圍」跟「輸出值範圍」,對數學的討論是相當方便的;事實上公理化集合論 中,分類公理 確保對任意集合
A
{\displaystyle A}
有唯一的集合
D
A
{\displaystyle D_{A}}
和
I
A
{\displaystyle I_{A}}
(嚴格來說,單元函數符號 )分別滿足
(
∀
x
)
{
(
x
∈
D
A
)
⇔
(
∃
y
)
[
(
x
,
y
)
∈
A
]
}
{\displaystyle (\forall x)\{(x\in D_{A})\Leftrightarrow (\exists y)[\,(x,\,y)\in A\,]\}}
(「輸入值範圍」)
(
∀
y
)
{
(
y
∈
I
A
)
⇔
(
∃
x
)
[
(
x
,
y
)
∈
A
]
}
{\displaystyle (\forall y)\{(y\in I_{A})\Leftrightarrow (\exists x)[\,(x,\,y)\in A\,]\}}
(「輸出值範圍」)
直觀上,
D
A
{\displaystyle D_{A}}
是蒐集所有
A
{\displaystyle A}
裡所有有序對 的第一個所構成的集合;
I
A
{\displaystyle I_{A}}
是蒐集所有
A
{\displaystyle A}
裡所有有序對 的第二個所構成的集合。這樣的話,如果
A
{\displaystyle A}
本身就是函數的話,
D
A
{\displaystyle D_{A}}
就是所謂的「輸入值範圍」,所以被稱為定義域 ;類似地,
I
A
{\displaystyle I_{A}}
就是所謂的「輸出值範圍」,所以被稱為值域 。
通常情況下,有以下慣用的記號
f
:
X
→
Y
:=
[
(
f
is a function
)
∧
(
D
f
=
X
)
∧
(
I
f
⊆
Y
)
]
{\displaystyle f:X\to Y:=[\,(f{\text{ is a function}})\wedge (D_{f}=X)\wedge (I_{f}\subseteq Y)\,]}
也就是直觀上,
f
:
X
→
Y
{\displaystyle f:X\to Y}
表示「
f
{\displaystyle f}
是函數且其定義域 為
X
{\displaystyle X}
,且值域 包含於
Y
{\displaystyle Y}
。」。這種情況下,
Y
{\displaystyle Y}
通常被俗稱為對應域 。
屬於定義域
D
f
{\displaystyle D_{f}}
的元素
x
{\displaystyle x}
常被俗稱為自變數 (independent variable),而項
f
(
x
)
{\displaystyle f(x)}
則被俗稱為因變量( dependent variable),但是這跟實驗上的自變數和應變數 是稍有不同的,因為前者是現實得到的實驗值之間的關聯,但另一個是源於集合論的概念。
定義 —
函數
f
{\displaystyle f}
若滿足
(
∀
y
)
(
∀
x
)
(
∀
x
′
)
{
[
(
⟨
x
,
y
⟩
∈
f
)
∧
(
⟨
x
′
,
y
⟩
∈
f
)
]
⇒
(
x
=
x
′
)
}
{\displaystyle (\forall y)(\forall x)(\forall x^{\prime })\{\,[\,(\langle x,\,y\rangle \in f)\wedge (\langle x^{\prime },\,y\rangle \in f)\,]\Rightarrow (x=x^{\prime })\,\}}
則被稱為一對一的 (one-to-one)或是單射 (injective function)。
直觀上,若函數
f
{\displaystyle f}
的輸出值都只能被唯一個輸入值對應,則稱
f
{\displaystyle f}
是一對一的。
若
f
{\displaystyle f}
是單射,那(根據分類公理 所取的)以下的集合:
f
−
1
:=
{
p
|
(
∃
x
)
(
∃
y
)
[
p
=
(
y
,
x
)
∧
y
=
f
(
x
)
]
}
{\displaystyle f^{-1}:=\{\,p\,|\,(\exists x)(\exists y)[\,p=(y,\,x)\,\wedge \,y=f(x)\,]\,\}}
也是一個函數,被稱為
f
{\displaystyle f}
的反函數 。
f
:
X
→
Y
{\displaystyle f:X\to Y}
這個簡記只能指出「輸出值不會超出
Y
{\displaystyle Y}
」,為了彌補這個簡記的缺陷,口語上會將滿射 (surjective function)定義為「
f
:
X
→
Y
{\displaystyle f:X\to Y}
且值域 就是
Y
{\displaystyle Y}
」的函數。
(1)一對多。X 中的元素3與Y 中的兩個元素b 和c 相關。因此這是多值函數 ,而不是函數。
(2)一對一但非完全對應。X 的元素1未與Y 的任一元素相關。因此這是偏函數 ,而不是 函數。
(3)完全對應且多對一,因此這是從
X 到
Y 的函數。此函數可以表示為
f
=
{
(
1
,
d
)
,
(
2
,
d
)
,
(
3
,
c
)
}
{\displaystyle 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.}
除了正式定義 一節所規範的集合論表示法,一般的數學書籍會採用比較通俗的函數表記方法,下面將一一介紹。
很多函數都是取實數 為輸出值和輸入值,換句話說,都是
f
:
A
→
R
{\displaystyle f:A\to \mathbb {R} }
(
A
⊆
R
{\displaystyle A\subseteq \mathbb {R} }
),這些函數很多都是以實數的四則運算去定義的。但考慮到實數加法 可由皮亞諾公理 裡的單元函數符號
S
(
x
)
{\displaystyle S(x)}
(直觀上解釋成「
x
{\displaystyle x}
的下一個」,或說「
x
+
1
{\displaystyle x+1}
」)建構出來 ,或被視為實數公理系統 裡的雙元函數符號
P
(
x
,
y
)
{\displaystyle P(x,\,y)}
(簡記為
x
+
y
{\displaystyle x+y}
),實數加法其實是一階邏輯 下的項 ;類似地,其他四則運算也可以此類推,而得出他們都是項 的結論。所以直觀上定義實數 函數的時候,都希望一條項(直觀上的運算式)能唯一決定一個函數,比如說,對於項 :
x
+
1
{\displaystyle x+1}
以下的集合:
h
:=
{
p
|
(
∃
x
∈
R
)
[
p
=
(
x
,
x
+
1
)
]
}
{\displaystyle h:={\bigg \{}p\,{\bigg |}\,(\exists x\in \mathbb {R} )[p=(x,\,x+1)]{\bigg \}}}
是一個函數。為了讓這類函數的表示更加簡潔,就衍伸出以下的表記方式:
符號定義 —
X
1
,
…
,
X
n
{\displaystyle X_{1},\,\dots ,\,X_{n}}
都是集合 ,
T
{\displaystyle T}
是含有變數
x
1
,
…
,
x
n
{\displaystyle x_{1},\,\dots ,\,x_{n}}
的項 ,那在:
(
∀
x
1
∈
X
1
)
…
(
∀
x
n
∈
X
n
)
(
∃
!
y
)
(
y
=
T
)
{\displaystyle (\forall x_{1}\in X_{1})\dots (\forall x_{n}\in X_{n})(\exists !y)(y=T)}
的前提下,則可做以下的符號定義:
f
(
x
1
,
…
,
x
n
)
=
T
(
⟨
x
1
,
…
,
x
n
⟩
∈
X
1
×
⋯
×
X
n
)
{\displaystyle f(x_{1},\,\dots ,\,x_{n})=T\;\;(\langle x_{1},\,\dots ,\,x_{n}\rangle \in X_{1}\times \dots \times X_{n})\,}
:=
{\displaystyle :=}
f
=
{
p
|
∃
x
1
…
∃
x
n
[
(
⟨
x
1
,
…
,
x
n
⟩
∈
X
1
×
⋯
×
X
n
)
∧
(
p
=
⟨
x
1
,
…
,
x
n
,
T
⟩
)
]
}
{\displaystyle f={\bigg \{}p\,{\bigg |}\,\exists x_{1}\dots \exists x_{n}[(\langle x_{1},\,\dots ,\,x_{n}\rangle \in X_{1}\times \dots \times X_{n})\wedge (p=\langle x_{1},\,\dots ,\,x_{n},\,T\rangle )]{\bigg \}}}
這個表記方式被稱為函數記號 (functional notation),直觀上表示「若從
X
i
{\displaystyle X_{i}}
依序取出地
x
i
{\displaystyle x_{i}}
代入
T
{\displaystyle T}
裡,都可以得到唯一的輸出值,那可以定義一個
f
(
x
1
,
…
,
x
n
)
=
T
{\displaystyle f(x_{1},\,\dots ,\,x_{n})=T}
的函數」。(
T
{\displaystyle T}
有可能不滿足前提,從而無法定義這樣的一個函數,如取
T
:=
x
1
+
z
{\displaystyle T:=x_{1}+z}
就無法得到唯一輸出值)
像是取
T
{\displaystyle T}
為
x
+
1
{\displaystyle x+1}
的話,因為實數加法的性質而有:
(
∀
x
∈
R
)
(
∃
!
y
)
(
y
=
x
+
1
)
{\displaystyle (\forall x\in \mathbb {R} )(\exists !y)(y=x+1)}
因為單元對被規定成:
⟨
x
⟩
:=
x
{\displaystyle \langle x\rangle :=x}
這樣就可以把前面的函數
h
{\displaystyle h}
簡記為:
h
(
x
)
=
x
+
1
(
x
∈
R
)
{\displaystyle h(x)=x+1\;(x\in \mathbb {R} )}
如果定義域可以從上下文推斷出來,函數記號可以更不正式的寫為:
f
(
x
1
,
…
,
x
n
)
=
T
{\displaystyle f(x_{1},\,\dots ,\,x_{n})=T}
比如說函數
h
{\displaystyle h}
就可以進一步簡記為:
h
(
x
)
=
x
+
1
{\displaystyle h(x)=x+1}
這個記號是1734年第一次被萊昂哈德·歐拉 所採用[ 9] 。但當時並沒有清楚地區分函數、項 與冪級數 ,因為當時並沒有一階邏輯 這種清楚研究語言推理的系統;也並不知道有些物理 應用的函數不能用冪級數 展開[ 10] 。
以上的函數記號也可以稍作修改,來明確的指出「輸出值」的範圍:
符號定義 —
X
1
,
…
,
X
n
{\displaystyle X_{1},\,\dots ,\,X_{n}}
與
Y
{\displaystyle Y}
都是集合 ,
T
{\displaystyle T}
是含有變數
x
1
,
…
,
x
n
{\displaystyle x_{1},\,\dots ,\,x_{n}}
的項 ,在:
(
∀
x
1
∈
X
1
)
…
(
∀
x
n
∈
X
n
)
(
∃
!
y
)
[
(
y
∈
Y
)
∧
(
y
=
T
)
]
{\displaystyle (\forall x_{1}\in X_{1})\dots (\forall x_{n}\in X_{n})(\exists !y)[\,(y\in Y)\wedge (y=T)\,]}
的前提下,可做以下的符號定義:
f
:
X
1
×
⋯
×
X
n
→
Y
;
⟨
x
1
,
…
,
x
n
⟩
↦
T
{\displaystyle f:X_{1}\times \dots \times X_{n}\to Y;\;\langle x_{1},\,\dots ,\,x_{n}\rangle \mapsto T}
:=
{\displaystyle :=}
f
=
{
p
|
∃
x
1
…
∃
x
n
[
(
⟨
x
1
,
…
,
x
n
⟩
∈
X
1
×
⋯
×
X
n
)
∧
(
p
=
⟨
x
1
,
…
,
x
n
,
T
⟩
)
∧
(
T
∈
Y
)
]
}
{\displaystyle f={\bigg \{}p\,{\bigg |}\,\exists x_{1}\dots \exists x_{n}[(\langle x_{1},\,\dots ,\,x_{n}\rangle \in X_{1}\times \dots \times X_{n})\wedge (p=\langle x_{1},\,\dots ,\,x_{n},\,T\rangle )\wedge (T\in Y)]{\bigg \}}}
這個表記方式被稱為箭號表示 (arrow notation),直觀上表示「若把從
X
i
{\displaystyle X_{i}}
依序取出地
x
i
{\displaystyle x_{i}}
代入
T
{\displaystyle T}
裡,都可以得到
Y
{\displaystyle Y}
裡的某唯一輸出,那可以定義一個從
X
{\displaystyle X}
到
Y
{\displaystyle Y}
,對應規則為
⟨
x
1
,
…
,
x
n
⟩
↦
T
{\displaystyle \langle x_{1},\,\dots ,\,x_{n}\rangle \mapsto T}
的函數
f
{\displaystyle f}
」
上述符號也可以比較通俗地記為:
f
:
X
1
×
⋯
×
X
n
→
Y
;
f
(
x
1
,
…
,
x
n
)
=
T
{\displaystyle f:X_{1}\times \dots \times X_{n}\to Y;\;f(x_{1},\,\dots ,\,x_{n})=T}
比如說,取
T
x
{\displaystyle T_{x}}
為
x
+
1
{\displaystyle x+1}
的話,因為實數加法的性質而有:
(
∀
x
∈
R
)
(
∃
!
y
)
[
(
y
∈
R
)
∧
(
y
=
x
+
1
)
]
{\displaystyle (\forall x\in \mathbb {R} )(\exists !y)[(y\in \mathbb {R} )\wedge (y=x+1)]}
因為
x
∈
R
{\displaystyle x\in \mathbb {R} }
可以推出
x
+
1
∈
R
{\displaystyle x+1\in \mathbb {R} }
,所以可把函數
h
{\displaystyle h}
表示成:
h
:
R
→
R
;
h
(
x
)
=
x
+
1
{\displaystyle h:\mathbb {R} \to \mathbb {R} ;\;h(x)=x+1}
箭號表示常用來「固定」某個變數,來得到新的函數;假設
T
x
t
{\displaystyle T_{xt}}
是含有變數
x
{\displaystyle x}
和
t
{\displaystyle t}
的項 ,如果:
f
:
X
×
T
→
Y
;
(
x
,
t
)
↦
T
x
t
{\displaystyle f:X\times T\to Y;\;(x,t)\mapsto T_{xt}}
τ
∈
T
{\displaystyle \tau \in T}
那根據:
(
∀
x
)
(
∀
y
)
(
∀
x
′
)
(
∀
y
′
)
{
(
⟨
x
,
y
⟩
=
⟨
x
′
,
y
′
⟩
)
⇔
[
(
x
=
x
)
∧
(
y
′
=
y
′
)
]
}
{\displaystyle (\forall x)(\forall y)(\forall x^{\prime })(\forall y^{\prime })\{(\langle x,y\rangle =\langle x^{\prime },y^{\prime }\rangle )\Leftrightarrow [(x=x)\wedge (y^{\prime }=y^{\prime })]\}}
若假設
T
x
τ
{\displaystyle T_{x\tau }}
是將
T
x
t
{\displaystyle T_{xt}}
裡的
t
{\displaystyle t}
都代換成
τ
{\displaystyle \tau }
所形成的新項 ,那以下的符號簡寫也是可行的:
f
τ
:
X
→
Y
;
x
↦
T
x
τ
{\displaystyle f_{\tau }:X\to Y;\;x\mapsto T_{x\tau }}
直觀上來說,
f
τ
{\displaystyle f_{\tau }}
是把
f
{\displaystyle f}
第二個變數
t
{\displaystyle t}
「固定」成特定的
τ
{\displaystyle \tau }
所得到的新函數,英文上也可稱為partial applied function 。
可以把箭號表示裡的
x
{\displaystyle x}
都取代成間隔號 ,變成更通俗直觀的間隔號表示 ,比如說:
f
:
R
→
R
;
x
↦
x
2
{\displaystyle f:\mathbb {R} \to \mathbb {R} ;\;x\mapsto x^{2}}
可以記為:
(
⋅
)
2
{\displaystyle {(\cdot )}^{2}}
或是對於
[
a
,
b
]
{\displaystyle [a,\,b]}
可積 的
f
:
[
a
,
b
]
→
R
{\displaystyle f:[a,\,b]\to \mathbb {R} }
,作如下定義的話:
g
:
[
a
,
b
]
→
R
;
x
↦
∫
a
x
f
(
u
)
d
u
{\displaystyle g:[a,\,b]\to \mathbb {R} ;\;x\mapsto \int _{a}^{x}f(u)\,du}
函數
g
{\displaystyle g}
的定義亦可不正式的記為:
∫
a
(
⋅
)
f
(
u
)
d
u
{\displaystyle \int _{a}^{(\cdot )}f(u)\,du}
但這個表記方法的明顯缺點是無法指出定義域,因為函數於哪個區間 可積 會決定以上的函數
g
{\displaystyle g}
的定義可不可行。
如果函數
f
{\displaystyle f}
的值域跟定義域都是實數集合(俗稱
f
{\displaystyle f}
為實函數 ),可以x軸代表定義域的範圍;y軸代表值域的範圍,把函數的每個元素標示在平面直角坐標 上,這被稱為實函數
f
{\displaystyle f}
在平面上的函數圖形 。
對於「雙變數」的實函數
g
{\displaystyle g}
,也就是以(
x
,
y
,
z
∈
R
{\displaystyle x,\,y,\,z\in \mathbb {R} }
)
(
(
x
,
y
)
,
z
)
{\displaystyle ((x,\,y),\,z)}
為元素的函數,可以取
D
x
=
{
x
|
(
∃
y
)
(
∃
z
)
[
g
(
x
,
y
)
=
z
]
}
{\displaystyle D_{x}=\{\,x\,|\,(\exists y)(\exists z)[\,g(x,\,y)=z\,]\,\}}
D
y
=
{
x
|
(
∃
x
)
(
∃
z
)
[
g
(
x
,
y
)
=
z
]
}
{\displaystyle D_{y}=\{\,x\,|\,(\exists x)(\exists z)[\,g(x,\,y)=z\,]\,\}}
然後以x軸為
D
x
{\displaystyle D_{x}}
變化範圍;y軸為
D
y
{\displaystyle D_{y}}
變化範圍;最後取z軸為
g
{\displaystyle g}
的值域變化範圍,這樣就可以在三維直角坐標 繪出
g
{\displaystyle g}
的函數圖形 。
平面上的任意圖形可用豎直判別法 判斷是否為實函數 的圖形,即圖形與任何一條平行於y軸的直線不能有一個以上的交點。但實際上這僅僅是函數正式定義的一種應用,因為平行於y軸的直線代表的是形如
{
p
∈
R
2
|
(
∃
y
∈
R
)
[
p
=
(
c
,
y
)
]
}
{\displaystyle \{\,p\in {\mathbb {R} }^{2}\,|\,(\exists y\in \mathbb {R} )[\,p=(c,\,y)\,]\,\}}
的集合,也就是此直線交x軸於
(
c
,
0
)
{\displaystyle (c,\,0)}
,那這樣直線與實函數
f
{\displaystyle f}
的交集就是
{
p
∈
R
2
|
(
∃
y
∈
R
)
[
p
=
(
c
,
y
)
∧
y
=
f
(
c
)
]
}
{\displaystyle \{\,p\in {\mathbb {R} }^{2}\,|\,(\exists y\in \mathbb {R} )[\,p=(c,\,y)\wedge y=f(c)\,]\,\}}
而屬於這個交集裡的平面點最多只能有一個 ,否則就會跟每個
x
∈
D
f
{\displaystyle x\in D_{f}}
只能對應一個
f
(
x
)
{\displaystyle f(x)}
的基本定義矛盾。
像 可以指兩種不同的概念
第一種是形如
f
(
x
)
{\displaystyle f(x)}
的項 ,直觀上代表的是依照函數
f
{\displaystyle f}
的對應規則,使
x
{\displaystyle x}
能對應到的那個「值」。(嚴謹的意義請回去參考函數值的簡記 )
第二種指的是集合
A
{\displaystyle A}
在函數
f
{\displaystyle f}
下定義的集合
f
(
A
)
{\displaystyle f(A)}
f
(
A
)
:=
{
y
|
(
∃
x
∈
A
)
[
y
=
f
(
x
)
]
}
{\displaystyle f(A):=\{\,y\,|\,(\exists x\in A)[\,y=f(x)\,]\,\}}
注意
f
{\displaystyle f}
的值域就是定義域
D
f
{\displaystyle D_{f}}
的像
f
(
D
f
)
{\displaystyle f(D_{f})}
。在正式定義 一節的最後例子中,
{
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\}}
。
類似的,集合
B
{\displaystyle B}
在函數
f
{\displaystyle f}
下的原像 (或逆像 )定義為:
f
−
1
(
B
)
:=
{
x
|
(
∃
y
)
[
y
=
f
(
x
)
∧
y
∈
B
]
}
{\displaystyle f^{-1}(B):=\{\,x\,|\,(\exists y)[\,y=f(x)\wedge y\in B\,]\,\}}
沿用同一例子,可以看到
{
a
,
b
}
{\displaystyle \{a,b\}}
的原像是
f
−
1
(
{
a
,
b
}
)
=
∅
{\displaystyle f^{-1}(\{a,b\})=\varnothing }
,即空集 。
以下是
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}}
,甚至可推廣到任意子集群的交集 和聯集 。
設
f
:
X
→
R
{\displaystyle f:X\to R}
且
g
:
X
→
R
{\displaystyle g:X\to R}
且
(
R
,
+
,
×
)
{\displaystyle (R,\,+,\,\times )}
為環 。這樣可以定義「函數和」
f
+
g
{\displaystyle f+g}
與「函數積」
f
×
g
{\displaystyle f\times g}
如下:
f
+
g
:=
{
(
x
,
y
)
|
(
x
∈
X
)
∧
[
y
=
f
(
x
)
+
g
(
x
)
]
}
{\displaystyle {\begin{aligned}f+g:={\bigg \{}\,(x,\,y)\,{\bigg |}\,(x\in X)\wedge [\,y=f(x)+g(x)\,]\,{\bigg \}}\\\end{aligned}}}
f
+
g
:=
{
(
x
,
y
)
|
(
x
∈
X
)
∧
[
y
=
f
(
x
)
×
g
(
x
)
]
}
{\displaystyle {\begin{aligned}f+g:={\bigg \{}\,(x,\,y)\,{\bigg |}\,(x\in X)\wedge [\,y=f(x)\times g(x)\,]\,{\bigg \}}\\\end{aligned}}}
很容易證明以上兩者也是函數,類似的對任意的
r
∈
R
{\displaystyle r\in R}
可以定義下面這兩個集合
r
R
:=
{
(
x
,
y
)
|
(
x
∈
X
)
∧
(
y
=
r
)
}
{\displaystyle {\begin{aligned}r_{R}:={\bigg \{}\,(x,\,y)\,{\bigg |}\,(x\in X)\wedge (y=r)\,{\bigg \}}\\\end{aligned}}}
r
⋅
f
:=
{
(
x
,
y
)
|
(
x
∈
X
)
∧
[
y
=
r
×
f
(
x
)
]
}
{\displaystyle {\begin{aligned}r\cdot f:={\bigg \{}\,(x,\,y)\,{\bigg |}\,(x\in X)\wedge [\,y=r\times f(x)\,]\,{\bigg \}}\\\end{aligned}}}
也是函數,其中
r
R
{\displaystyle r_{R}}
被稱為常數函數 。
在範疇論 中,函數的槪念被推廣為態射 的槪念。
一個範疇 包括一組物件與一組態射,每一個態射是個三元組(X , Y , f ),X 稱為源物件(定義域的類比),Y 稱為目標物件(對應域的類比),而源物件與目標物件是範疇內的物件。基於這種解釋,可以把函數看作集合範疇 裡面的態射。