函数（）是數學描述對應關係的一種特殊集合。

簡介 
若是實數，以有序對  為元素所構成的集合就是一個函数。直觀上代表＂輸入＂  就可以得到唯一值  的對應關係。

一般會以英文字母   表示函数，並把  依據函数  的對應規則所得到的值写作 ，並讀作"f of x"。函数的概念不限於數之间的對應关系，例定义函数  為世界上所有國家跟它現在的首都的對應關係，那輸入英国就會输出唯一值伦敦：。 

直觀上的"多變數函數"其實也可以概括到一般函數的定義裡。例如算式  有兩個實數參數  和 。可以將這兩個參數看作一個實數有序对  ，然後定義一個以  為元素所構成的函數  ，然後把  簡記成符合直觀的   。

數學中，对应、映射、变换通常都是函数的別稱，但也可能有別的意思，如在拓扑學的映射有时代表的是连续函数。

在類型論的λ演算中，"對應關係"可以是作為一個原始概念(也就是無定義名詞)，而不像上述的定義把函數視為集合的衍伸物。

历史 
函数这个数学名词是莱布尼兹在1694年开始使用的，用來描述跟曲线相关的一個量，如曲线的斜率或者曲线上的某一点。莱布尼兹所指的函数现在被称作可导函数，数学家之外的普通人一般接触到的函数即属此类。对于可导函数可以讨论它的极限和导数，此两者描述了函数输出值的变化同输入值变化的关系，是微积分学的基础。中文的“函数”一词由清朝数学家李善兰译出。其《代数学》书中解释：“凡此變數中函（包含）彼變數者，則此為彼之函數”。
 1718年，約翰·伯努利把函数定义为“一个变量的函数是指由这个变量和常量以任何一种方式组成的一种量。”
 1748年，伯努利的学生欧拉在《无穷分析引论》一书中说：“一个变量的函数是由该变量和一些数或常量以任何一种方式构成的解析表达式”，例如。
 1775年，欧拉在《微分学原理》一书中又提出了函数的一个定义：“如果某些量以如下方式依赖于另一些量，即当后者变化时，前者本身也发生变化，则称前一些量是后一些量的函数。”
 19世纪的数学家开始对数学的各个分支進行形式化。维尔斯特拉斯倡議将微积分学建立在算术，而不是几何的基础上，這種主張較趋向于欧拉的定义。
 函数的定义得以擴展之後，数学家便能对一些“奇怪”的数学对象进行研究，例如處處不可导的连续函数。这些函数曾经被认为只具有理论价值，迟至20世纪初时它们仍被视作“怪物”。稍后，人们发现这些函数在对如布朗运动之类的物理现象进行建模时有重要的作用。
 到19世纪末，数学家开始尝试利用集合论来進行数学的形式化。他们试图将每一個数学对象都定义为集合。狄利克雷给出了现代正式的函数定义（参见下文#正式定義）。在他的定義下，函数被视作数学关系的特例。然而对于实际应用的情况，现代定义和欧拉定义的区别可以忽略不计。

正式定義

函數(  )是一種特殊的二元關係 (也就是元素都是  這樣形式的二元有序對的集合) ，滿足

 對任意  若  且  ， 則 

若以正式的邏輯符號表述就是(設下面這條合式公式簡記為  ，等等的討論會用到)

也就是直觀上，可以把有序對  看成 (輸入值, 輸出值)；而函數本身是窮舉輸出入值來詳盡定義的對應規則。而且依照函數  的規則，若  同時對應 到  和 ，則必然 ，也就是說一個  只能對應到僅僅唯一的一個輸出。

函數值的簡記 
習慣上把  等價的寫為  。但事實上，  是在一阶逻辑公理化集合论下，基於  所確保的唯一性，而新增的雙元函數符號 (  和  各為一個變數) ，而它的＂定義＂本質上是以下額外增加的公理 ( 唯一性保證新增這條公理後，"新理論"所擁有的定理和"舊理論"是一樣的，詳請參見函數符號與唯一性)

其中  為以下合式公式的簡寫

 事實上就是   為二元關係的正式邏輯符號表述。

直觀上＂n變數＂的函數，也就是以

為元素的函數 ，習慣上會把以下的項

進一步簡寫為

定義域與值域 
實用上如果能指出函數  的 "輸入值範圍" 跟 "輸出值範圍" ，對數學的討論是相當方便的；事實上公理化集合論確保對任意集合  有以下兩個單元函數符號  和  以及以下公理

簡單來說，  是所有蒐集所有  裡所有有序對的第一個元素所構成的集合；   是所有蒐集所有  裡所有有序對的第二個元素所構成的集合，集合論保證了兩者一定唯一存在（就算是空集合）。如果  本身就是函數的話，直觀上  就是＂輸入值範圍＂，所以被稱為定義域；而直觀上   就是 ＂輸出值範圍＂，所以被稱為值域。

所以在  是函數的情況下，有以下慣用的記號

這個記號嚴格上來說代表
 是函數且 。
也就是函數  的＂輸入值範圍＂為  ， ＂輸出值範圍＂包含於 。  通常會被稱為對應域(特別注意對應域不是唯一的)

屬於定義域  的元素  常被俗稱為自變量（independent variable），而項  則被俗稱為因變量（dependent variable），但是這跟實驗上的自变量和因变量是稍有不同的，因為一個是以現實手段操縱所得到的實驗值之間的關聯，但另一個是源於集合論的抽象邏輯概念。

一對一與滿射 
滿足
對任意  若  且  ， 則 。
的函數  被稱為一對一函數。這種狀況下，很容易證明以下的集合：

也是一個函數，稱為  的反函數。 這個簡記裡只有指出 "輸出值" 不會超出  "，為了彌補這個簡記的缺陷，會定義满射為「   且值域就是 」 的函數。

函数图形 

如果函數  的值域跟定義域都是實數集合(俗稱  為實函数)，可以x軸代表定義域的範圍；y軸代表值域的範圍，把函數的每個元素標示在平面直角坐標上，這被稱為實函数  在平面上的函數圖形。

對於"雙變數"的實函數  ，也就是以 ()

為元素的函數，可以取

然後以 x 軸為  變化範圍；y 軸為  變化範圍；最後取z 軸為  的值域變化範圍，這樣就可以在三維直角坐標繪出  的函數圖形。

實函数的判别 
平面上的任意圖形可用豎直判别法判斷是否為實函数的圖形，即图形与任何一条平行于 y 轴的直线不能有一个以上的交點。但實際上這僅僅是函數正式定義的一種應用，因為平行于 y 轴的直线代表的是形如 

的集合，也就是此直線交 x 軸於  ，那這樣直線與實函數   的交集就是 

而屬於這個交集裡的平面點最多只能有一個，否則就會跟每個  只能對應一個  的基本定義矛盾。

像和原像 

像可以指兩種不同的概念

第一種是形如  的項，直觀上代表的是依照函數  的對應規則，使  能對應到的那個"值"。(嚴謹的意義請回去參考函數值的簡記)

第二種指的是集合  在函數  下定義的集合 

注意  的值域就是定義域  的像  。在正式定義一節的最後例子中，  在  的像是 ，而  的值域是  。

類似的，集合  在函數   下的原像（或逆像）定義為：

沿用同一例子，可以看到  的原像是  ，即空集。

以下是及的一些特性：
 ；
 ；
 ；
 ；
 ；
 。

這些特性適合定義域的任意子集及和到達域的任意子集及，甚至可推廣到任意子集群的交集和并集。

函數的限制及擴張 
若  且  ， 那以下定義的集合 ( 注意到  代表笛卡儿积 )

顯然為一函數，稱為  在  的限制。

反之，若  、  、  且 ，那  稱為  的擴張。

点态运算 

設  且  且  為環。這樣可以定義＂函數和＂   與＂函數積＂  如下：

很容易證明以上兩者也是函數，類似的對任意的  可以定義下面這兩個集合

也是函數，其中  被稱為常數函數。

函数範例 

 首都之於国家（若不把多首都国  计算在内)。
 每个自然数的平方是的函數。
 對數函數。是正实数的函數。注意，雖然可以把對數函數推廣到複數情況，但結果就不是函數了，而是多值函數。
 對每个在平面上的点，其和原点的距离是確定的。

常用的数学函数包括多项式函數、根式函數、冪函數、对数函數、有理函数、三角函数、反三角函數等。它们都是初等函数。非初等函数（或特殊函数）包括伽马函數和贝塞尔函数等。

函數的分類 
函數可分為
 奇函數或偶函數
 連續函數或不連續函數
 實函數或虛函數
 純量函數或向量函數
 单调增函数或单调减函数

范畴論觀點下的函数 

在范畴论中，函数的槪念被推廣為態射的槪念。

一個范畴包括一組物件與一組態射，每一個態射是個三元组(X, Y, f)，X稱為源物件（定義域的類比），Y稱為目標物件（到達域的類比），而源物件与目標物件是范畴內的物件。基于这种解释，可以把函数看作集合范畴裡面的態射。

參考文獻 
Visual Calculus by Lawrence S. Husch, 田納西大學（2001年）

外部链接 
 NIST數學函數
 mysuc.com，经典函数示例
 Wolfram函数网站，汇集了各数学函数的公式和图像
 Was ist eine Funktion? 
 xFunctions一个多功能的Java小程序，可以显示函数的图像，既可以在线使用，也可以下载运行。
 FooPlot 
 Curvas

H
 
H
H